TRX 1 год назад
Родитель
Сommit
f83049cb7d

+ 3 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/controller/projectAbout/OrgUserFaceController.java

@@ -92,7 +92,9 @@ public class OrgUserFaceController {
     @ResourceAuth(value = "user", type = AuthType.User)
     @Operation(summary = "所有数据列表(已通过的)-分页查询", description = "数据列表-分页查询")
     @RequestMapping(value = {"passPage"}, method = {RequestMethod.POST})
-    public ResultContent<Page<OrgUserFaceModel>> passPage(@Parameter(hidden = true) @PageableDefault(page = 0, size = 10) Pageable pageable, @Parameter(required = false) OrgUserFaceSearch param) {
+    public ResultContent<Page<OrgUserFaceModel>> passPage(
+            @Parameter(hidden = true) @PageableDefault(page = 0, size = 10) Pageable pageable,
+            @Parameter(required = false) OrgUserFaceSearch param) {
         Assert.hasText(param.getProjectOid(), "projectOid不能为空");
         param.setAuditState(AuditState.Audited);
         return orgUserFaceService.page(param, pageable);

+ 20 - 3
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/org/UserInfoSyncService.java

@@ -2,11 +2,14 @@ package com.zhongshu.card.server.core.service.org;
 
 import com.zhongshu.card.server.core.dao.org.OrganizationUserDao;
 import com.zhongshu.card.server.core.domain.org.OrganizationUser;
+import com.zhongshu.card.server.core.service.projectAbout.OrgUserFaceService;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.concurrent.CompletableFuture;
+
 /**
  * 用户改变 后,修改其他关联的信息
  *
@@ -20,16 +23,30 @@ public class UserInfoSyncService {
     @Autowired
     private OrganizationUserDao organizationUserDao;
 
+    @Autowired
+    private OrgUserFaceService orgUserFaceService;
+
     /**
      * 机构用户信息发送变化 同步其他 冗余存储的数据(主要是 用户名称、电话、角色、等信息)
      *
      * @param orgUserDataId
      */
     public void updateProjectAboutInfoByOrgUserDataId(String orgUserDataId) {
-        OrganizationUser organizationUser = organizationUserDao.findTopById(orgUserDataId);
-        if (ObjectUtils.isNotEmpty(organizationUser)) {
+        log.info("updateProjectAboutInfoByOrgUserDataId {}", orgUserDataId);
+        CompletableFuture.runAsync(() -> {
+            try {
+                OrganizationUser organizationUser = organizationUserDao.findTopById(orgUserDataId);
+                if (ObjectUtils.isNotEmpty(organizationUser)) {
+                    //
+
+                    // 用户人脸相关信息
+                    orgUserFaceService.updateAllUser(organizationUser);
 
-        }
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        });
     }
 
 }

+ 19 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/projectAbout/OrgUserFaceService.java

@@ -218,6 +218,7 @@ public class OrgUserFaceService extends SuperService {
             return ResultContent.buildFail(String.format(ResultMessage.DATA_NOT_EXIST, id));
         }
         if (!isManager) {
+            // 不是管理员,需要验证是否可以删除
             ResultContent<ProjectCommonConfigModel> content = projectCommonConfigService.getConfigInfoAndCheck(orgUserFace.getProjectOid());
             if (content.isFailed()) {
                 return ResultContent.buildFail(content.getMsg());
@@ -443,6 +444,24 @@ public class OrgUserFaceService extends SuperService {
         }
     }
 
+    /**
+     * 项目用户信息发生变化,更新人脸信息冗余的用户信息
+     *
+     * @param organizationUser
+     */
+    public void updateAllUser(OrganizationUser organizationUser) {
+        if (ObjectUtils.isNotEmpty(organizationUser)) {
+            List<OrgUserFace> list = orgUserFaceDao.findByUserIdAndProjectOidOrderByCreateTimeDesc(organizationUser.getUserId(), organizationUser.getProjectOid());
+            if (ObjectUtils.isNotEmpty(list)) {
+                for (OrgUserFace orgUserFace : list) {
+                    fillEntityUserInfo(orgUserFace, organizationUser);
+                    orgUserFaceDao.save(orgUserFace);
+                }
+            }
+        }
+    }
+
+
     /**
      * 填充用户信息
      *