From 70a8bd2c65bb24af82c5bc8c88b4352622aec1d5 Mon Sep 17 00:00:00 2001
From: xusd <hugeinfo123>
Date: Wed, 16 Oct 2024 16:49:07 +0800
Subject: [PATCH] 网格登录对接

---
 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtAccountService.java |   45 ++++++++++++++++++++++++---------------------
 1 files changed, 24 insertions(+), 21 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 60d42ad..9141311 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
@@ -354,25 +354,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);
@@ -449,12 +447,17 @@
         }
         //拿到用户角色菜单权限信息
         GridRoleMenuVo gridRoleMenuVo = new GridRoleMenuVo();
-        gridRoleMenuVo.setOrgRoleId(userRoleDTO.getRoleId());
+        gridRoleMenuVo.setOrgRoleId(userRoleDTO.getOrgRoleId());
         gridRoleMenuVo.setMenuSys("sub-mdjfhj");
         CtUserole roleMenu = sysClient.getRoleMenu(gridRoleMenuVo);
+        if (roleMenu == null || StringUtils.isEmpty(roleMenu.getRoleId())) {
+            return ReturnFailUtils.getRepInfo("该用户没有矛调系统的权限");
+        }
         List<CtUserole> ctUseroles = new ArrayList<>();
         ctUseroles.add(roleMenu);
+        log.info("xsd:roleMenu:{}", roleMenu);
         CtUnit ctUnit = ctUnitService.selectUnitByGridId(userRoleDTO.getOrgId());
+        log.info("xsd:newuser:{}", ctUnit);
         if (ctUnit != null && StringUtils.isNotEmpty(ctUnit.getId())) {
             CtUserSaveDTO ctUserSaveDTO = new CtUserSaveDTO();
             ctUserSaveDTO.setUnitId(ctUnit.getId());
@@ -466,9 +469,9 @@
             ctUserSaveDTO.setIdcard(gridUserBaseDTO.getIdNumber());
             ctUserSaveDTO.setCtUseroleList(ctUseroles);
             ctUserService.webSaveCtUser(ctUserSaveDTO, "-1");
-
+            log.info("xsd:ctUserSaveDTO:{}", ctUserSaveDTO);
         } else {
-            return ReturnFailUtils.getRepInfo("用户不存在!,请确认后重试!");
+            return ReturnFailUtils.getRepInfo("该用户所属机构不允许登录矛调系统!请调整机构后重试!");
         }
         return ReturnSucUtils.getRepInfo("创建账号成功");
     }

--
Gitblit v1.8.0