From 24679b74b46479acf248151f70a3768a9588249b Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <279049017@qq.com>
Date: Thu, 15 Oct 2020 16:58:55 +0800
Subject: [PATCH] 修改  h端添加的用户不能在h端登录的问题

---
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java |   63 +++++++++++++++++++------------
 1 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java
index 51199b2..dd0308c 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysUserOrgController.java
@@ -6,6 +6,8 @@
 import com.kidgrow.common.model.SysOrganization;
 import com.kidgrow.common.model.SysUser;
 import com.kidgrow.common.model.SysUserOrg;
+import com.kidgrow.redis.util.RedisConstant;
+import com.kidgrow.redis.util.RedisUtils;
 import com.kidgrow.usercenter.model.SysDepartment;
 import com.kidgrow.usercenter.model.SysHospital;
 import com.kidgrow.usercenter.service.ISysOrganizationService;
@@ -38,6 +40,8 @@
     private SysDepartmentServiceImpl sysDepartmentService;
     @Autowired
     private SysHospitalServiceImpl sysHospitalService;
+    @Autowired
+    private RedisUtils redisUtils;
 
     @PostMapping("getListByMap")
     public List<SysUserOrg> getListByMap(@RequestParam Map<String, Object> map) {
@@ -68,7 +72,17 @@
         } else {
             if (sysUserOrg.getUserId() != null) {
                 String createUserOrgCode = "";
-                List<SysOrganization> userOrgData = sysUser.getOrganizations();
+                List<SysOrganization> userOrgData = new ArrayList<>();
+                SysOrganization byId = sysOrganizationService.getById(sysUserOrg.getOrgId());
+                if(byId==null){
+                    return ResultBody.failed().data(null).msg("该组织id异常");
+                }
+                SysOrganization parentId = sysOrganizationService.getById(byId.getOrgParentId());
+                userOrgData.add(parentId);
+                userOrgData.add(byId);
+                if(parentId==null){
+                    return ResultBody.failed().data(null).msg("该组织id异常");
+                }
                 if (userOrgData != null) {
                     if (userOrgData.size() == 2) {
                         createUserOrgCode = userOrgData.get(1).getOrgCode();
@@ -86,23 +100,21 @@
                                 userOrgList.get(i).setFromLevel(2);
 
                                 //查询  科室
-                                QueryWrapper queryWrapper=new QueryWrapper();
-                                queryWrapper.eq("org_id",sysUserOrg.getUpdateUserId());
-                                queryWrapper.eq("is_del",0);
-                                queryWrapper.eq("enabled",1);
+                                QueryWrapper queryWrapper = new QueryWrapper();
+                                queryWrapper.eq("org_id", sysUserOrg.getOrgId());
+                                queryWrapper.eq("is_del", 0);
+                                queryWrapper.eq("enabled", 1);
                                 List<SysDepartment> list = sysDepartmentService.list(queryWrapper);
-                                if(!list.isEmpty()){
+                                if (!list.isEmpty()) {
                                     userOrgList.get(i).setFromId(list.get(0).getId());
-                                }else {
+                                } else {
                                     userOrgList.get(i).setFromId(null);
                                 }
-                            }
-                            else
-                            {
-                                QueryWrapper queryWrapper=new QueryWrapper();
-                                queryWrapper.eq("org_id",sysUserOrg.getUpdateUserId());
-                                queryWrapper.eq("is_del",0);
-                                queryWrapper.eq("enabled",1);
+                            } else {
+                                QueryWrapper queryWrapper = new QueryWrapper();
+                                queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId());
+                                queryWrapper.eq("is_del", 0);
+                                queryWrapper.eq("enabled", 1);
                                 List<SysHospital> listHospital = sysHospitalService.list(queryWrapper);
                                 if (!listHospital.isEmpty()) {
                                     userOrgList.get(i).setFromId(listHospital.get(0).getId());
@@ -127,25 +139,25 @@
                             sysUserOrgTemp.setFromLevel(2);
 
                             //查询  科室
-                            QueryWrapper queryWrapper=new QueryWrapper();
-                            queryWrapper.eq("org_id",sysUserOrg.getUpdateUserId());
-                            queryWrapper.eq("is_del",0);
-                            queryWrapper.eq("enabled",1);
+                            QueryWrapper queryWrapper = new QueryWrapper();
+                            queryWrapper.eq("org_id", sysUserOrg.getOrgId());
+                            queryWrapper.eq("is_del", 0);
+                            queryWrapper.eq("enabled", 1);
                             List<SysDepartment> list = sysDepartmentService.list(queryWrapper);
-                            if(!list.isEmpty()){
+                            if (!list.isEmpty()) {
                                 sysUserOrgTemp.setFromId(list.get(0).getId());
                             }
                             userOrgList.add(sysUserOrgTemp);
                             //查询 医院
-                            queryWrapper=new QueryWrapper();
-                            queryWrapper.eq("org_id",sysUserOrg.getUpdateUserId());
-                            queryWrapper.eq("is_del",0);
-                            queryWrapper.eq("enabled",1);
+                            queryWrapper = new QueryWrapper();
+                            queryWrapper.eq("org_id", sysUserOrg.getUpdateUserId());
+                            queryWrapper.eq("is_del", 0);
+                            queryWrapper.eq("enabled", 1);
                             List<SysHospital> listHospital = sysHospitalService.list(queryWrapper);
                             if (!listHospital.isEmpty()) {
-                                sysUserOrgTemp.setFromId(listHospital.get(0).getId());
+                                sysUserOrg.setFromId(listHospital.get(0).getId());
                             }
-                            sysUserOrgTemp.setFromLevel(1);
+                            sysUserOrg.setFromLevel(1);
 //                            sysUserOrg.setUpdateUserId(0L);
                             sysUserOrg.setOrgId(sysOrganization.getOrgParentId());
                             sysUserOrg.setCreateUserOrgCode(createUserOrgCode);
@@ -156,6 +168,7 @@
                     }
                     //查询
                     boolean v = sysUserOrgService.saveOrUpdateBatch(userOrgList);
+                    redisUtils.hset(RedisConstant.USER_ORGANIZATION,sysUserOrg.getUserId().toString(), userOrgList);
                     if (v) {
                         return ResultBody.ok().data(sysUserOrg).msg("保存成功");
                     } else {

--
Gitblit v1.8.0