From 0c0e1e9adcc0102b2ed0d88f1fec94e83f4174e6 Mon Sep 17 00:00:00 2001
From: zhaoxiaohao <913652501@qq.com>
Date: Thu, 23 Jul 2020 09:24:01 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into dev

---
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java   |    6 +++++-
 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java                       |   25 +++++++++++++++++++++++++
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java |   29 +++++++++++++++++++++--------
 3 files changed, 51 insertions(+), 9 deletions(-)

diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
index 5c1eed2..ad9770f 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
@@ -9,10 +9,10 @@
 import com.kidgrow.common.utils.StringUtils;
 import com.kidgrow.redis.util.RedisConstant;
 import com.kidgrow.redis.util.RedisUtils;
-import com.kidgrow.usercenter.mapper.SysDoctorMapper;
-import com.kidgrow.usercenter.mapper.SysRoleMapper;
-import com.kidgrow.usercenter.mapper.SysUserRoleMapper;
+import com.kidgrow.usercenter.mapper.*;
+import com.kidgrow.usercenter.model.SysDepartment;
 import com.kidgrow.usercenter.model.SysDoctor;
+import com.kidgrow.usercenter.model.SysHospital;
 import com.kidgrow.usercenter.model.SysRoleUser;
 import com.kidgrow.usercenter.service.ISysDoctorService;
 import com.kidgrow.usercenter.service.ISysUserOrgService;
@@ -61,6 +61,10 @@
     private SysRoleOrganizationServiceImpl SysRoleOrganizationServiceImpl;
     @Autowired
     private SysRoleMapper sysRoleMapper;
+    @Autowired
+    private SysHospitalMapper sysHospitalMapper;
+    @Autowired
+    private SysDepartmentMapper sysDepartmentMapper;
     @Autowired
     private SysUserRoleMapper sysUserRoleMapper;
     @Autowired
@@ -193,7 +197,8 @@
          if(sysUserServiceImpl.departmetAccountsCount(sysDoctor.getDepartmentId())<=0){
              return ResultBody.failed("该部门创建人数已经达到上限");
          }
-            Long departmentId = sysDoctor.getDepartmentId();
+            SysHospital sysHospital= sysHospitalMapper.selectById(sysDoctor.getHospitalId());
+            SysDepartment sysDepartment= sysDepartmentMapper.selectById(sysDoctor.getDepartmentId());
             if (sysDoctor.getId()==null) {
                 //保存
                 SysUser sysUser=new SysUser();
@@ -239,12 +244,16 @@
                 //保存将sys_user_org 保存部门
                 SysUserOrg sysUserOrg=new SysUserOrg();
                 sysUserOrg.setUserId(sysUser.getId());
-                sysUserOrg.setOrgId(sysDoctor.getDepartmentId());
+                sysUserOrg.setFromId(sysDoctor.getDepartmentId());
+                sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+                sysUserOrg.setOrgId(sysDepartment.getOrgId());
                 //保存公司
                 sysUserOrgService.saveOrUpdate(sysUserOrg);
                 SysUserOrg sysGongsi=new SysUserOrg();
                 sysGongsi.setUserId(sysUser.getId());
-                sysGongsi.setOrgId(sysDoctor.getHospitalId());
+                sysGongsi.setOrgId(sysHospital.getOrgId());
+                sysGongsi.setFromId(sysDoctor.getHospitalId());
+                sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
                 sysUserOrgService.saveOrUpdate(sysGongsi);
                 //保存到Redis
                 boolean hset = redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg);
@@ -258,12 +267,16 @@
                 SysUserOrg sysUserOrg=new SysUserOrg();
                 sysUserOrg.setUserId(getOne.getUserId());
                 sysUserOrg.setEnabled(false);
-                sysUserOrg.setOrgId(sysDoctor.getDepartmentId());
+                sysUserOrg.setFromId(sysDoctor.getDepartmentId());
+                sysUserOrg.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
+                sysUserOrg.setOrgId(sysDepartment.getOrgId());
                 sysUserOrg.setCreateTime(new Date());
                 sysUserOrgService.saveOrUpdate(sysUserOrg);
                 SysUserOrg sysGongsi=new SysUserOrg();
                 sysGongsi.setUserId(getOne.getId());
-                sysGongsi.setOrgId(sysDoctor.getHospitalId());
+                sysGongsi.setOrgId(sysHospital.getOrgId());
+                sysGongsi.setFromId(sysDoctor.getHospitalId());
+                sysGongsi.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
                 sysUserOrgService.saveOrUpdate(sysGongsi);
                 baseMapper.updateById(sysDoctor);
                 if(redisUtils.hHasKey(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString())){
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
index 4de2178..1ffc091 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -807,12 +807,16 @@
 
                             sysUserOrgH.setUserId(sysUser.getId());
                             sysUserOrgH.setOrgId(organizationHos);
+                            sysUserOrgH.setFromLevel(CommonConstant.SYSTEM_ORG_HOS_LEVEL);
+                            sysUserOrgH.setFromId(userRegVo.getHospitalId());
                             sysUserOrgH.setCreateUserId(isReg ? createUserId : sysUserd.getId());
                             sysUserOrgH.setCreateUserName(isReg ? createUserName : sysUserd.getUsername());
                             sysUserOrgList.add(sysUserOrgH);
 
                             sysUserOrgD.setUserId(sysUser.getId());
                             sysUserOrgD.setOrgId(organizationDep);
+                            sysUserOrgD.setFromId(userRegVo.getDepartmentId());
+                            sysUserOrgD.setFromLevel(CommonConstant.SYSTEM_ORG_DEP_LEVEL);
                             sysUserOrgD.setCreateUserId(isReg ? createUserId : sysUserd.getId());
                             sysUserOrgD.setCreateUserName(isReg ? createUserName : sysUserd.getUsername());
                             sysUserOrgList.add(sysUserOrgD);
@@ -826,7 +830,7 @@
                                 sysDoctor.setDepartmentName(userRegVo.getDepartmentName());
                                 sysDoctor.setDoctorRank(userRegVo.getDoctorRank());
                                 sysDoctor.setDoctorRankId(userRegVo.getDoctorRankId());
-                                sysDoctor.setDoctorType(1);
+                                sysDoctor.setDoctorType(CommonConstant.H_DOCTOR_TYPE);
                                 sysDoctor.setCreateUserId(isReg ? createUserId : sysUserd.getId());
                                 sysDoctor.setCreateUserName(isReg ? createUserName : sysUserd.getUsername());
                                 if (isReg) {
diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
index 54aef80..a17380d 100644
--- a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
+++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
@@ -292,4 +292,29 @@
      * 管理员医生角色code标识
      */
     public static final String SYSTEM_ADMIN_ROLE_CODE="ADMIN";
+
+    /**
+     * 集团组织级别
+     */
+    public static final Integer SYSTEM_ORG_TOP_CODE=0;
+    /**
+     * 公司/医院组织级别
+     */
+    public static final Integer SYSTEM_ORG_HOS_LEVEL=1;
+    /**
+     * 科室部门组织级别
+     */
+    public static final Integer SYSTEM_ORG_DEP_LEVEL=2;
+    /**
+     * 医生类型 C+H
+     */
+    public static final Integer CH_DOCTOR_TYPE=0;
+    /**
+     * 医生类型 H
+     */
+    public static final Integer H_DOCTOR_TYPE=1;
+    /**
+     * 医生类型 C
+     */
+    public static final Integer C_DOCTOR_TYPE=2;
 }

--
Gitblit v1.8.0