|
|
@@ -24,6 +24,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import org.springblade.common.constant.CommonConstant;
|
|
|
import org.springblade.core.mp.support.Condition;
|
|
|
+import org.springblade.core.secure.BladeUser;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.BeanUtil;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
@@ -55,10 +56,11 @@ import org.springframework.util.StringUtils;
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
- * 服务实现类
|
|
|
+ * 服务实现类
|
|
|
*
|
|
|
* @author BladeX
|
|
|
* @since 2022-01-07
|
|
|
@@ -85,9 +87,9 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
UserAccessPermissions permissions = null;
|
|
|
List<UserAccessPermissions> permissionsList = this.getByCondition(authorizeRecordsDTO.getDeviceSerialNum(), authorizeRecordsDTO.getUserId());
|
|
|
long facePermissionsCount = permissionsList.stream().filter(p -> p.getPermissions() == 3).count();
|
|
|
- if(facePermissionsCount > 0){
|
|
|
+ if (facePermissionsCount > 0) {
|
|
|
permissions = permissionsList.get(0);
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
permissions = new UserAccessPermissions();
|
|
|
}
|
|
|
DoorDevice doorDevice = doorDeviceClient.getBySerialNum(authorizeRecordsDTO.getDeviceSerialNum());
|
|
|
@@ -134,7 +136,8 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
queryWrapper.select("DISTINCT(user_id)").lambda()
|
|
|
.eq(UserAccessPermissions::getUserType, userType)
|
|
|
.select(UserAccessPermissions::getUserId);
|
|
|
- List<Long> list = this.list(queryWrapper).stream().map(UserAccessPermissions::getUserId).mapToLong(Convert::toLong).boxed().collect(Collectors.toList());
|
|
|
+ List<UserAccessPermissions> permissionsList = this.list(queryWrapper);
|
|
|
+ List<Long> list = permissionsList.stream().map(UserAccessPermissions::getUserId).filter(Objects::nonNull).mapToLong(Convert::toLong).boxed().collect(Collectors.toList());
|
|
|
if (CollUtil.isEmpty(list)) {
|
|
|
list.add(Long.valueOf("-1"));
|
|
|
}
|
|
|
@@ -145,7 +148,7 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
public R pushFace(UserAccessPermissionsDTO userAccessPermissionsDTO) {
|
|
|
//这里的userId是拼接了用户类型的,比如ZH_13349456569094,表示住户
|
|
|
List<DoorDevice> deviceList = doorDeviceClient.listByIds(userAccessPermissionsDTO.getDeviceIds());
|
|
|
- if(deviceList != null && deviceList.size() > 0) {
|
|
|
+ if (deviceList != null && deviceList.size() > 0) {
|
|
|
for (DoorDevice doorDevice : deviceList) {
|
|
|
String serialNum = doorDevice.getSerialNum();
|
|
|
String deviceFactory = doorDevice.getDeviceFactory();
|
|
|
@@ -172,7 +175,7 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
doorDeviceButtClient.pushFace(userDeviceDTO);
|
|
|
}
|
|
|
return R.success("下发成功");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
return R.fail("请先添加设备");
|
|
|
}
|
|
|
}
|
|
|
@@ -193,17 +196,17 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
public R autoPushPermissions(UserAccessPermissionsDTO userAccessPermissionsDTO) {
|
|
|
R<List<DictBiz>> dictListR = dictBizClient.getList("default_user_access_permissions");
|
|
|
List<DictBiz> dictList = dictListR.getData();
|
|
|
- for(DictBiz dict : dictList){
|
|
|
- if(dict.getDictKey().equals(CommonConstant.UserAccessPermissions.FACE_OPEN_DOOR.getValue())){
|
|
|
- if(StringUtil.isNotBlank(userAccessPermissionsDTO.getUserFace())){
|
|
|
+ for (DictBiz dict : dictList) {
|
|
|
+ if (dict.getDictKey().equals(CommonConstant.UserAccessPermissions.FACE_OPEN_DOOR.getValue())) {
|
|
|
+ if (StringUtil.isNotBlank(userAccessPermissionsDTO.getUserFace())) {
|
|
|
this.autoPushFace(userAccessPermissionsDTO);
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
List<DoorDeviceVO> doorDeviceVOList = doorDeviceClient.getListByResidentialAndUnit(userAccessPermissionsDTO.getResidentialId(), userAccessPermissionsDTO.getUnitId(), 1);
|
|
|
if (doorDeviceVOList.size() == 0) {
|
|
|
return R.status(true);
|
|
|
- }else{
|
|
|
- for(DoorDeviceVO doorDeviceVO : doorDeviceVOList){
|
|
|
+ } else {
|
|
|
+ for (DoorDeviceVO doorDeviceVO : doorDeviceVOList) {
|
|
|
UserAccessPermissions userAccessPermissions = BeanUtil.copy(userAccessPermissionsDTO, UserAccessPermissions.class);
|
|
|
userAccessPermissions.setId(null);
|
|
|
userAccessPermissions.setDeviceName(doorDeviceVO.getName());
|
|
|
@@ -229,7 +232,7 @@ public class UserAccessPermissionsServiceImpl extends BaseServiceImpl<UserAccess
|
|
|
@Override
|
|
|
public R deleteFace(String userId, String userType) {
|
|
|
List<UserAccessPermissions> permissionsList = this.listByUser(userId, userType);
|
|
|
- for(UserAccessPermissions permissions : permissionsList){
|
|
|
+ for (UserAccessPermissions permissions : permissionsList) {
|
|
|
String deviceSerialNum = permissions.getDeviceSerialNum();
|
|
|
UserDeviceDTO userDeviceDTO = new UserDeviceDTO();
|
|
|
userDeviceDTO.setSerialNum(deviceSerialNum);
|