|
|
@@ -26,10 +26,17 @@ import org.springblade.community.feign.ICommunityClient;
|
|
|
import org.springblade.community.feign.IRoomClient;
|
|
|
import org.springblade.core.secure.BladeUser;
|
|
|
import org.springblade.core.secure.utils.SecureUtil;
|
|
|
+import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.core.tool.utils.Func;
|
|
|
+import org.springblade.core.tool.utils.StringUtil;
|
|
|
import org.springblade.device.dto.DispatchTask;
|
|
|
import org.springblade.device.dto.UserInfoDto;
|
|
|
import org.springblade.device.feign.IDoorDeviceClient;
|
|
|
+import org.springblade.device.vo.DoorDeviceVO;
|
|
|
+import org.springblade.estate.dto.ApplyUserDTO;
|
|
|
+import org.springblade.estate.dto.UserAccessPermissionsDTO;
|
|
|
import org.springblade.estate.entity.ApplyUser;
|
|
|
+import org.springblade.estate.service.IUserAccessPermissionsService;
|
|
|
import org.springblade.estate.vo.ApplyUserVO;
|
|
|
import org.springblade.estate.mapper.ApplyUserMapper;
|
|
|
import org.springblade.estate.service.IApplyUserService;
|
|
|
@@ -47,6 +54,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.util.Assert;
|
|
|
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 申请用户表---房屋成员 服务实现类
|
|
|
@@ -63,17 +71,19 @@ public class ApplyUserServiceImpl extends BaseServiceImpl<ApplyUserMapper, Apply
|
|
|
private final IConfClient confClient;
|
|
|
private final IDoorDeviceClient doorDeviceClient;
|
|
|
private final IRoomClient roomClient;
|
|
|
+ private final IUserAccessPermissionsService userAccessPermissionsService;
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
public ApplyUserServiceImpl(IMemberClient memberClient, IHouseUserClient houseUserClient
|
|
|
- , ICommunityClient communityClient, IConfClient confClient, IDoorDeviceClient doorDeviceClient, IRoomClient roomClient) {
|
|
|
+ , ICommunityClient communityClient, IConfClient confClient, IDoorDeviceClient doorDeviceClient, IRoomClient roomClient, IUserAccessPermissionsService userAccessPermissionsService) {
|
|
|
this.memberClient = memberClient;
|
|
|
this.houseUserClient = houseUserClient;
|
|
|
this.communityClient = communityClient;
|
|
|
this.confClient = confClient;
|
|
|
this.doorDeviceClient = doorDeviceClient;
|
|
|
this.roomClient = roomClient;
|
|
|
+ this.userAccessPermissionsService = userAccessPermissionsService;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -103,9 +113,9 @@ public class ApplyUserServiceImpl extends BaseServiceImpl<ApplyUserMapper, Apply
|
|
|
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- @Transactional
|
|
|
- public boolean addApplyUserForFamily(ApplyUser applyUser) {
|
|
|
+// @Override
|
|
|
+// @Transactional
|
|
|
+ public boolean addApplyUserForFamilyBak(ApplyUser applyUser) {
|
|
|
applyUser.setFaceUrl(confClient.removePrefix(applyUser.getFaceUrl()));
|
|
|
applyUser.setEntryImgUri(confClient.removePrefix(applyUser.getEntryImgUri()));
|
|
|
applyUser.setPassportImgUri(confClient.removePrefix(applyUser.getPassportImgUri()));
|
|
|
@@ -225,6 +235,51 @@ public class ApplyUserServiceImpl extends BaseServiceImpl<ApplyUserMapper, Apply
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 添加家人
|
|
|
+ * @param applyUser
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public boolean addApplyUserForFamily(ApplyUser applyUser) {
|
|
|
+ applyUser.setFaceUrl(confClient.removePrefix(applyUser.getFaceUrl()));
|
|
|
+ applyUser.setEntryImgUri(confClient.removePrefix(applyUser.getEntryImgUri()));
|
|
|
+ applyUser.setPassportImgUri(confClient.removePrefix(applyUser.getPassportImgUri()));
|
|
|
+ boolean save = false;
|
|
|
+ if(applyUser.getType() != 0){
|
|
|
+ applyUser.setAuditStatus(CommonConstant.UserAuditStatus.pass.getValue());
|
|
|
+ this.save(applyUser);
|
|
|
+ //构造一个HouseUser
|
|
|
+ HouseUser houseUser = this.applyUserToUser(applyUser);
|
|
|
+ save = houseUserClient.save(houseUser);
|
|
|
+ houseUser = this.houseUserClient.applySave(houseUser);
|
|
|
+ if(save){
|
|
|
+ //新增人数
|
|
|
+ communityClient.addPersonNum(houseUser.getAgencyId(), houseUser.getResidentialId()
|
|
|
+ , houseUser.getBuildingId(), houseUser.getUnitId(), houseUser.getFloorId(), houseUser.getRoomId());
|
|
|
+ //给成员和租户下发人脸
|
|
|
+ UserAccessPermissionsDTO userAccessPermissionsDTO = new UserAccessPermissionsDTO();
|
|
|
+ userAccessPermissionsDTO.setUserId(Func.toStr(houseUser.getId()));
|
|
|
+ userAccessPermissionsDTO.setUserFace(houseUser.getFaceUrl());
|
|
|
+ userAccessPermissionsDTO.setUserType(CommonConstant.UserFlag.HOUSE_USER_FLAG.getValue());
|
|
|
+ userAccessPermissionsDTO.setTargetType(1);
|
|
|
+ List<DoorDeviceVO> doorDeviceVOList = doorDeviceClient.getListByResidentialAndUnit(houseUser.getResidentialId(), houseUser.getUnitId(), 1);
|
|
|
+ if (doorDeviceVOList.size() != 0) {
|
|
|
+ List<Long> deviceIdList = doorDeviceVOList.stream().map(DoorDeviceVO::getId).collect(Collectors.toList());
|
|
|
+ userAccessPermissionsDTO.setDeviceIds(StringUtil.join(deviceIdList, ","));
|
|
|
+ userAccessPermissionsService.pushFace(userAccessPermissionsDTO);
|
|
|
+ }
|
|
|
+ return save;
|
|
|
+
|
|
|
+ }else{
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ return this.save(applyUser);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public boolean updateCheckState(ApplyUser condition) {
|
|
|
@@ -365,9 +420,9 @@ public class ApplyUserServiceImpl extends BaseServiceImpl<ApplyUserMapper, Apply
|
|
|
private HouseUser applyUserToUser(ApplyUser applyUser) {
|
|
|
HouseUser user = new HouseUser();
|
|
|
user.setName(applyUser.getName());
|
|
|
+ user.setAuditStatus(CommonConstant.UserAuditStatus.pass.getValue());
|
|
|
if (StringUtils.isNotBlank(applyUser.getFaceUrl())) {
|
|
|
user.setFaceUrl(applyUser.getFaceUrl());
|
|
|
- user.setAuditStatus(CommonConstant.UserAuditStatus.pass.getValue());
|
|
|
user.setImageMd5(applyUser.getImageMd5());
|
|
|
user.setFaceEnable(1); //未激活
|
|
|
} else {
|
|
|
@@ -394,7 +449,6 @@ public class ApplyUserServiceImpl extends BaseServiceImpl<ApplyUserMapper, Apply
|
|
|
user.setResidentialId(applyUser.getResidentialId());
|
|
|
user.setResidentialName(applyUser.getResidentialName());
|
|
|
user.setCreateType(applyUser.getCreateType());
|
|
|
- user.setIsMember(0);
|
|
|
return user;
|
|
|
}
|
|
|
|