فهرست منبع

修改小程序修改人脸

xuanyan 4 سال پیش
والد
کامیت
b4277ee0d3

+ 2 - 1
blade-service-api/estate-api/src/main/java/org/springblade/estate/feign/IUserAccessPermissionsClient.java

@@ -7,6 +7,7 @@ import org.springblade.estate.dto.UserAccessPermissionsDTO;
 import org.springblade.estate.entity.UserAccessPermissions;
 import org.springblade.estate.vo.UserAccessPermissionsVO;
 import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.cloud.openfeign.SpringQueryMap;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -27,7 +28,7 @@ public interface IUserAccessPermissionsClient  {
 	 * 详情
 	 */
 	@GetMapping("/detail")
-    UserAccessPermissionsVO detail(UserAccessPermissions userAccessPermissions);
+    UserAccessPermissionsVO detail(@SpringQueryMap UserAccessPermissions userAccessPermissions);
 
 	/**
 	 * 查询

+ 2 - 1
blade-service/estate/src/main/java/org/springblade/estate/feign/UserAccessPermissionsClient.java

@@ -8,6 +8,7 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.estate.dto.AuthorizeRecordsDTO;
 import org.springblade.estate.dto.UserAccessPermissionsDTO;
+import org.springframework.cloud.openfeign.SpringQueryMap;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springblade.estate.entity.UserAccessPermissions;
@@ -36,7 +37,7 @@ public class UserAccessPermissionsClient implements IUserAccessPermissionsClient
      */
     @Override
     @GetMapping("/detail")
-    public UserAccessPermissionsVO detail(UserAccessPermissions userAccessPermissions) {
+    public UserAccessPermissionsVO detail(@SpringQueryMap UserAccessPermissions userAccessPermissions) {
         UserAccessPermissions detail = userAccessPermissionsService.getOne(Condition.getQueryWrapper(userAccessPermissions));
         return UserAccessPermissionsWrapper.build().entityVO(detail);
         }

+ 12 - 0
blade-service/person/src/main/java/org/springblade/person/controller/HouseUserController.java

@@ -43,7 +43,9 @@ import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.enterprise.vo.ChartDataVO;
 import org.springblade.enterprise.vo.EnterpriseBizTypePieDataVO;
 import org.springblade.estate.dto.UserAccessPermissionsDTO;
+import org.springblade.estate.entity.UserAccessPermissions;
 import org.springblade.estate.feign.IUserAccessPermissionsClient;
+import org.springblade.estate.vo.UserAccessPermissionsVO;
 import org.springblade.person.dto.HouseUserDTO;
 import org.springblade.person.entity.*;
 import org.springblade.person.service.*;
@@ -198,6 +200,16 @@ public class HouseUserController extends BladeController {
 		String faceUrl = houseUser.getFaceUrl();
 		if (StrUtil.isNotBlank(faceUrl)) {
 			houseUser.setFaceUrl(confClient.removePrefix(houseUser.getFaceUrl()));
+			houseUser.setFaceEnable(0);
+			//user_access_permission表也要更新人脸
+			UserAccessPermissions userAccessPermissions = new UserAccessPermissions();
+			userAccessPermissions.setUserId(Func.toStr(houseUser.getId()));
+			userAccessPermissions.setPermissions(Integer.parseInt(CommonConstant.UserAccessPermissions.FACE_OPEN_DOOR.getValue()));
+			UserAccessPermissionsVO userAccessPermissionsVO = userAccessPermissionsClient.detail(userAccessPermissions);
+			if (null != userAccessPermissionsVO){
+				userAccessPermissionsVO.setUserFace(confClient.removePrefix(houseUser.getFaceUrl()));
+				userAccessPermissionsClient.update(userAccessPermissionsVO);
+			}
 		}
 		boolean update = houseUserService.updateById(houseUser);
 		if (update) {

+ 16 - 2
community-app-gateway/src/main/java/org/springblade/app/controller/HouseUserController.java

@@ -25,9 +25,11 @@ 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.entity.UserAccessPermissions;
 import org.springblade.estate.feign.IApplyUserClient;
 import org.springblade.estate.feign.IUserAccessPermissionsClient;
 import org.springblade.estate.vo.ApplyUserVO;
+import org.springblade.estate.vo.UserAccessPermissionsVO;
 import org.springblade.person.dto.HouseUserDTO;
 import org.springblade.person.dto.MemberDTO;
 import org.springblade.person.entity.HouseUser;
@@ -710,16 +712,28 @@ public class HouseUserController {
 		HouseUser houseUser = houseUserClient.getById(houseUserDTO.getId());
 		Assert.notNull(houseUser, "住户不存在");
 		if (StringUtil.isNotBlank(houseUserDTO.getFaceUrl())) {
-			houseUser.setFaceUrl(confClient.removePrefix(houseUserDTO.getFaceUrl()));
+			houseUser.setFaceUrl(houseUserDTO.getFaceUrl());
+			houseUser.setFaceEnable(0);
+			//user_access_permission表也要更新人脸
+			UserAccessPermissions userAccessPermissions = new UserAccessPermissions();
+			userAccessPermissions.setUserId(Func.toStr(houseUser.getId()));
+			userAccessPermissions.setPermissions(Integer.parseInt(CommonConstant.UserAccessPermissions.FACE_OPEN_DOOR.getValue()));
+			UserAccessPermissionsVO userAccessPermissionsVO = userAccessPermissionsClient.detail(userAccessPermissions);
+			if (null != userAccessPermissionsVO){
+				userAccessPermissionsVO.setUserFace(confClient.removePrefix(houseUserDTO.getFaceUrl()));
+				userAccessPermissionsClient.update(userAccessPermissionsVO);
+			}
 		}
 		boolean update = houseUserClient.update(houseUser);
 		if (update) {
 			//重新下发人脸
 			UserAccessPermissionsDTO userAccessPermissionsDTO = new UserAccessPermissionsDTO();
 			userAccessPermissionsDTO.setUserId(Func.toStr(houseUser.getId()));
-			userAccessPermissionsDTO.setUserFace(houseUserDTO.getFaceUrl());
+			userAccessPermissionsDTO.setUserName(houseUser.getName());
+			userAccessPermissionsDTO.setUserFace(confClient.addPrefix(houseUserDTO.getFaceUrl()));
 			userAccessPermissionsDTO.setUserType(CommonConstant.UserFlag.HOUSE_USER_FLAG.getValue());
 			userAccessPermissionsDTO.setTargetType(1);
+			userAccessPermissionsDTO.setTenantId(houseUser.getTenantId());
 			List<DoorDeviceVO> doorDeviceVOList = doorDeviceClient.getListByResidentialAndUnit(houseUser.getResidentialId(), houseUser.getUnitId(), 1);
 			if (doorDeviceVOList.size() == 0) {
 				return R.status(true);