From c1a463b9f1c0a7160dbd0ac1c7490eef13861a5e Mon Sep 17 00:00:00 2001
From: huangh <hshgjzd5@163.com>
Date: Tue, 29 Oct 2024 15:02:25 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/gzdyh_test' into gzdyh_test

---
 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java |   78 +++++++++++++++++++++++----------------
 1 files changed, 46 insertions(+), 32 deletions(-)

diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
index 87f5af2..b6b7df8 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
+++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java
@@ -258,7 +258,22 @@
                     userLoginDTO.setToken(JwtUtils.buildJWT(ctUser.getId()));
                     userLoginDTO.setUserId(ctUser.getId());
                     userLoginDTO.setTrueName(ctUser.getTrueName());
-                    userLoginDTO.setUnit(ctUser.getUnitName());
+                    CtUnit ctUnit = ctUnitService.getById(ctUser.getUnitId());
+                    if (ObjectUtils.isNotEmpty(ctUnit)){
+                        if (ctUnit.getUnitGrade() == UserBaseConsts.UNIT_GRADE_3 && ctUnit.getUnitType() == UserBaseConsts.UNIT_TYPE_102){
+                            userLoginDTO.setUnit(ctUnit.getUnitDes());
+//                            CtUnit parentCtUnit = ctUnitService.getById(ctUnit.getParentId());
+//                            if (ObjectUtils.isNotEmpty(parentCtUnit)) {1
+//                                userLoginDTO.setUnit(parentCtUnit.getUnitName());
+//                            }else {
+//                                userLoginDTO.setUnit(ctUnit.getUnitDes());
+//                            }
+                        }else {
+                            userLoginDTO.setUnit(ctUnit.getUnitName());
+                        }
+                    }else {
+                        userLoginDTO.setUnit(ctUser.getUnitName());
+                    }
                     userLoginDTO.setDept(ctUser.getDeptName());
                     userLoginDTO.setCustId(ctUser.getCustId());
                     // 登录用户角色
@@ -354,25 +369,23 @@
             // 判断账号是否存在
             CtAccount ctAccount = null;
             CtUser ctUser = null;
-            //如果和亿迅系统的手机号对不上,在用身份证号去查询用户,如果查询得到,就对得上,如果查询不到,就说明用户不存在
-            ctUser = ctUserService.getByIdCard(gridUserBaseDTO.getIdNumber());
-            if (ObjectUtils.isNotEmpty(ctUser)) {
-                ctAccount = this.getByUserIdAndType(ctUser.getId(), UserBaseConsts.ACC_TYPE_1);
+            ctAccount = this.getByAccAndType(gridUserBaseDTO.getAccount(), UserBaseConsts.ACC_TYPE_1);
+            if (ObjectUtils.isEmpty(ctAccount)) {
+                ctAccount = this.getByAccAndType(gridUserBaseDTO.getMobile(), UserBaseConsts.ACC_TYPE_1);
             }
-//            CtAccount ctAccount = this.getByAccAndType(gridUserBaseDTO.getAccount(), UserBaseConsts.ACC_TYPE_1);
-//            if (ObjectUtils.isEmpty(ctAccount)) {
-//                ctAccount = this.getByAccAndType(gridUserBaseDTO.getMobile(), UserBaseConsts.ACC_TYPE_1);
-//            }
-
-//            if (ObjectUtils.isNotEmpty(ctAccount)) {
-//                //返回结果
-//                ctUser = ctUserService.getById(ctAccount.getUserId());
-//                if (ObjectUtils.isEmpty(ctUser)) {
-//                    return ReturnFailUtils.getRepInfo("用户不存在!");
-//                }
-//            } else {
-//
-//            }
+            if (ObjectUtils.isNotEmpty(ctAccount)) {
+                //返回结果
+                ctUser = ctUserService.getById(ctAccount.getUserId());
+                if (ObjectUtils.isEmpty(ctUser)) {
+                    return ReturnFailUtils.getRepInfo("用户不存在!");
+                }
+            } else {
+                //如果和亿迅系统的手机号对不上,在用身份证号去查询用户,如果查询得到,就对得上,如果查询不到,就说明用户不存在
+                ctUser = ctUserService.getByIdCard(gridUserBaseDTO.getIdNumber());
+                if (ObjectUtils.isNotEmpty(ctUser)) {
+                    ctAccount = this.getByUserIdAndType(ctUser.getId(), UserBaseConsts.ACC_TYPE_1);
+                }
+            }
             if (ObjectUtils.isNotEmpty(ctUser)) {
                 //有对应用户,则模拟登录,返回对应信息
                 UserLoginDTO userLoginDTO = login(ctAccount, ctUser);
@@ -441,25 +454,26 @@
         GridUserRoleVo gridUserRoleVo = new GridUserRoleVo();
         gridUserRoleVo.setUserId(userId);
         GridUserRoleDTO userRoleDTO = sysClient.getUserRoleList(gridUserRoleVo);
-        if (StringUtils.isEmpty(userRoleDTO.getOrgName())) {
-            return ReturnFailUtils.getRepInfo("用户不存在!,请确认后重试!");
+        if (StringUtils.isEmpty(userRoleDTO.getRoleName()) || !userRoleDTO.getRoleName().contains("矛调系统")) {
+            return ReturnFailUtils.getRepInfo("该用户没有矛调系统的权限");
         }
         if (StringUtils.isNotEmpty(userRoleDTO.getOrgName()) && userRoleDTO.getOrgName().endsWith("网格")) {
             return ReturnFailUtils.getRepInfo("该用户所在机构禁止登录矛调系统,请切换该用户机构为区、镇街、社区机构");
         }
-        //拿到用户角色菜单权限信息
-        GridRoleMenuVo gridRoleMenuVo = new GridRoleMenuVo();
-        gridRoleMenuVo.setOrgRoleId(userRoleDTO.getRoleId());
-        gridRoleMenuVo.setMenuSys("sub-mdjfhj");
-        CtUserole roleMenu = sysClient.getRoleMenu(gridRoleMenuVo);
-        if (roleMenu == null || StringUtils.isEmpty(roleMenu.getRoleId())) {
-            return ReturnFailUtils.getRepInfo("该用户没有矛调系统的权限");
+        CtUserole ctUserole = new CtUserole();
+        if (userRoleDTO.getRoleName().contains("纷化解人员")) {
+            ctUserole.setRoleId("22_00024-4");
+            ctUserole.setRoleName("纠纷化解人员");
+        } else {
+            ctUserole.setRoleId("22_00024-3");
+            ctUserole.setRoleName("单位管理员");
         }
+
         List<CtUserole> ctUseroles = new ArrayList<>();
-        ctUseroles.add(roleMenu);
-        log.info("xsd:roleMenu:{}", roleMenu);
+        ctUseroles.add(ctUserole);
+        log.info("xsd:CtUserole:{}", ctUserole);
         CtUnit ctUnit = ctUnitService.selectUnitByGridId(userRoleDTO.getOrgId());
-        log.info("xsd:newuser:{}", ctUnit);
+        log.info("xsd:ctUnit:{}", ctUnit);
         if (ctUnit != null && StringUtils.isNotEmpty(ctUnit.getId())) {
             CtUserSaveDTO ctUserSaveDTO = new CtUserSaveDTO();
             ctUserSaveDTO.setUnitId(ctUnit.getId());
@@ -473,7 +487,7 @@
             ctUserService.webSaveCtUser(ctUserSaveDTO, "-1");
             log.info("xsd:ctUserSaveDTO:{}", ctUserSaveDTO);
         } else {
-            return ReturnFailUtils.getRepInfo("该用户所属机构不允许登录矛调系统!请调整机构后重试!");
+            return ReturnFailUtils.getRepInfo("该用户所在机构禁止登录矛调系统!请调整机构后重试!");
         }
         return ReturnSucUtils.getRepInfo("创建账号成功");
     }

--
Gitblit v1.8.0