소스 검색

Merge branch 'dev/ez-security210625' of http://192.168.2.236:10080/rengb/emrais into dev/ez-security210625

songxinlu 3 년 전
부모
커밋
579d6f7007
21개의 변경된 파일212개의 추가작업 그리고 120개의 파일을 삭제
  1. 5 0
      common/src/main/java/com/lantone/common/constant/AuthConstant.java
  2. 6 6
      common/src/main/java/com/lantone/common/service/RedisService.java
  3. 6 3
      common/src/main/java/com/lantone/common/vo/CheckSolveRegionVO.java
  4. 1 1
      common/src/main/java/com/lantone/common/vo/GetDeptListVO.java
  5. 0 4
      common/src/main/java/com/lantone/common/vo/GetDictionaryVO.java
  6. 1 1
      common/src/main/java/com/lantone/common/vo/GetRegionVO.java
  7. 8 5
      common/src/main/java/com/lantone/common/vo/SaveDictionaryVO.java
  8. 11 5
      common/src/main/java/com/lantone/common/vo/SaveHospitalSetVO.java
  9. 7 4
      common/src/main/java/com/lantone/common/vo/SaveRegionVO.java
  10. 2 4
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/DictionaryInfoFacade.java
  11. 36 0
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/HospitalSetFacade.java
  12. 1 2
      dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/ResourceFacade.java
  13. 3 3
      gateway-service/src/main/java/com/lantone/authorization/AuthorizationManager.java
  14. 35 0
      security-center/src/main/java/com/lantone/security/aop/ResourceRoleRulesAspect.java
  15. 28 0
      security-center/src/main/java/com/lantone/security/component/HospitalSetHolder.java
  16. 12 10
      security-center/src/main/java/com/lantone/security/facade/DictionaryManagementFacade.java
  17. 11 7
      security-center/src/main/java/com/lantone/security/facade/HospitalSetManagementFacade.java
  18. 18 9
      security-center/src/main/java/com/lantone/security/facade/RegionManagementFacade.java
  19. 7 16
      security-center/src/main/java/com/lantone/security/web/DictionaryManagementController.java
  20. 6 15
      security-center/src/main/java/com/lantone/security/web/HospitalSetManagementController.java
  21. 8 25
      security-center/src/main/java/com/lantone/security/web/RegionManagementController.java

+ 5 - 0
common/src/main/java/com/lantone/common/constant/AuthConstant.java

@@ -37,6 +37,11 @@ public interface AuthConstant {
      */
      */
     String DIC_MAP_KEY = "dicMap";
     String DIC_MAP_KEY = "dicMap";
 
 
+    /**
+     * Redis缓存组织机构参数配置信息
+     */
+    String HOSPITAL_SET_MAP_KEY = "hospitalSetMap";
+
     /**
     /**
      * 认证信息Http请求头
      * 认证信息Http请求头
      */
      */

+ 6 - 6
common/src/main/java/com/lantone/common/service/RedisService.java

@@ -24,7 +24,7 @@ public interface RedisService {
     /**
     /**
      * 获取属性
      * 获取属性
      */
      */
-    Object get(String key);
+    <T> T get(String key);
 
 
     /**
     /**
      * 删除属性
      * 删除属性
@@ -64,7 +64,7 @@ public interface RedisService {
     /**
     /**
      * 获取Hash结构中的属性
      * 获取Hash结构中的属性
      */
      */
-    Object hGet(String key, String hashKey);
+    <T> T hGet(String key, String hashKey);
 
 
     /**
     /**
      * 向Hash结构中放入一个属性
      * 向Hash结构中放入一个属性
@@ -79,7 +79,7 @@ public interface RedisService {
     /**
     /**
      * 直接获取整个Hash结构
      * 直接获取整个Hash结构
      */
      */
-    Map<Object, Object> hGetAll(String key);
+    <K, V> Map<K, V> hGetAll(String key);
 
 
     /**
     /**
      * 直接设置整个Hash结构
      * 直接设置整个Hash结构
@@ -114,7 +114,7 @@ public interface RedisService {
     /**
     /**
      * 获取Set结构
      * 获取Set结构
      */
      */
-    Set<Object> sMembers(String key);
+    <T> Set<T> sMembers(String key);
 
 
     /**
     /**
      * 向Set结构中添加属性
      * 向Set结构中添加属性
@@ -144,7 +144,7 @@ public interface RedisService {
     /**
     /**
      * 获取List结构中的属性
      * 获取List结构中的属性
      */
      */
-    List<Object> lRange(String key, long start, long end);
+    <T> List<T> lRange(String key, long start, long end);
 
 
     /**
     /**
      * 获取List结构的长度
      * 获取List结构的长度
@@ -154,7 +154,7 @@ public interface RedisService {
     /**
     /**
      * 根据索引获取List中的属性
      * 根据索引获取List中的属性
      */
      */
-    Object lIndex(String key, long index);
+    <T> T lIndex(String key, long index);
 
 
     /**
     /**
      * 向List结构中添加属性
      * 向List结构中添加属性

+ 6 - 3
common/src/main/java/com/lantone/common/vo/CheckSolveRegionVO.java

@@ -11,17 +11,20 @@ import javax.validation.constraints.NotNull;
  */
  */
 @Data
 @Data
 public class CheckSolveRegionVO {
 public class CheckSolveRegionVO {
-    @ApiModelProperty(value = "医院ID")
+    @ApiModelProperty(value = "医院ID",hidden = true)
     private Long hospitalId;
     private Long hospitalId;
 
 
+    @ApiModelProperty(value = "用户ID",hidden = true)
+    private Long userId;
+
     @ApiModelProperty(value = "病区名称")
     @ApiModelProperty(value = "病区名称")
     private String name;
     private String name;
 
 
-    @ApiModelProperty(value = "病区id")
+    @ApiModelProperty(value = "病区id",required = true)
     @NotNull(message ="病区id不能为空" )
     @NotNull(message ="病区id不能为空" )
     private Integer id;
     private Integer id;
 
 
-    @ApiModelProperty(value = "0-禁用校验标识 1-禁用此病区 2-启用此病区")
+    @ApiModelProperty(value = "0-禁用校验标识 1-禁用此病区 2-启用此病区",required = true)
     @NotNull(message ="操作标识不能为空" )
     @NotNull(message ="操作标识不能为空" )
     private Integer mark = 0;
     private Integer mark = 0;
 }
 }

+ 1 - 1
common/src/main/java/com/lantone/common/vo/GetDeptListVO.java

@@ -12,7 +12,7 @@ import lombok.Setter;
 @Getter
 @Getter
 @Setter
 @Setter
 public class GetDeptListVO {
 public class GetDeptListVO {
-    @ApiModelProperty(value = "医院ID")
+    @ApiModelProperty(value = "医院ID",hidden = true)
     private Long hospitalId;
     private Long hospitalId;
 
 
     @ApiModelProperty(value = "科室名称")
     @ApiModelProperty(value = "科室名称")

+ 0 - 4
common/src/main/java/com/lantone/common/vo/GetDictionaryVO.java

@@ -18,8 +18,4 @@ public class GetDictionaryVO implements Serializable {
 
 
     @ApiModelProperty(value = "代码名称")
     @ApiModelProperty(value = "代码名称")
     private String name;
     private String name;
-
-    @ApiModelProperty(value = "医院ID")
-    private Long hospitalId;
-
 }
 }

+ 1 - 1
common/src/main/java/com/lantone/common/vo/GetRegionVO.java

@@ -14,7 +14,7 @@ import lombok.Setter;
 @Getter
 @Getter
 @Setter
 @Setter
 public class GetRegionVO extends Page {
 public class GetRegionVO extends Page {
-    @ApiModelProperty(value = "医院ID")
+    @ApiModelProperty(value = "医院ID",hidden = true)
     private Long hospitalId;
     private Long hospitalId;
 
 
     @ApiModelProperty(value = "关联科室")
     @ApiModelProperty(value = "关联科室")

+ 8 - 5
common/src/main/java/com/lantone/common/vo/SaveDictionaryVO.java

@@ -19,23 +19,26 @@ public class SaveDictionaryVO implements Serializable {
     @ApiModelProperty(value = "主键")
     @ApiModelProperty(value = "主键")
     private Long id;
     private Long id;
 
 
-    @ApiModelProperty(value = "代码类别")
+    @ApiModelProperty(value = "用户ID",hidden = true)
+    private Long userId;
+
+    @ApiModelProperty(value = "代码类别",required = true)
     @NotNull(message = "代码类别不能为空")
     @NotNull(message = "代码类别不能为空")
     private Long groupType;
     private Long groupType;
 
 
-    @ApiModelProperty(value = "代码名称")
+    @ApiModelProperty(value = "代码名称",required = true)
     @NotBlank(message = "代码名称不能为空")
     @NotBlank(message = "代码名称不能为空")
     private String name;
     private String name;
 
 
-    @ApiModelProperty(value = "字典编码")
+    @ApiModelProperty(value = "字典编码",required = true)
     @NotBlank(message = "字典编码不能为空")
     @NotBlank(message = "字典编码不能为空")
     private String val;
     private String val;
 
 
-    @ApiModelProperty(value = "是否启用(0-否 1-是)")
+    @ApiModelProperty(value = "是否启用(0-否 1-是)",required = true)
     @NotNull(message = "是否启用不能为空")
     @NotNull(message = "是否启用不能为空")
     private Long status;
     private Long status;
 
 
-    @ApiModelProperty(value = "字典说明")
+    @ApiModelProperty(value = "字典说明",required = true)
     @NotBlank(message = "字典说明不能为空")
     @NotBlank(message = "字典说明不能为空")
     private String remark;
     private String remark;
 
 

+ 11 - 5
common/src/main/java/com/lantone/common/vo/SaveHospitalSetVO.java

@@ -22,9 +22,15 @@ public class SaveHospitalSetVO implements Serializable {
     /**
     /**
      * 组织机构ID
      * 组织机构ID
      */
      */
-    @ApiModelProperty(value = "医院id")
+    @ApiModelProperty(value = "医院id",hidden = true)
     private Long hospitalId;
     private Long hospitalId;
 
 
+    /**
+     * 用戶ID
+     */
+    @ApiModelProperty(value = "用戶id",hidden = true)
+    private Long userId;
+
     /**
     /**
      * 组织机构名称
      * 组织机构名称
      */
      */
@@ -34,28 +40,28 @@ public class SaveHospitalSetVO implements Serializable {
     /**
     /**
      * 参数配置代码
      * 参数配置代码
      */
      */
-    @ApiModelProperty(value = "参数名")
+    @ApiModelProperty(value = "参数名",required = true)
     @NotBlank(message = "参数名不能为空")
     @NotBlank(message = "参数名不能为空")
     private String code;
     private String code;
 
 
     /**
     /**
      * 参数配置名称
      * 参数配置名称
      */
      */
-    @ApiModelProperty(value = "参数说明")
+    @ApiModelProperty(value = "参数说明",required = true)
     @NotBlank(message = "参数说明不能为空")
     @NotBlank(message = "参数说明不能为空")
     private String name;
     private String name;
 
 
     /**
     /**
      * 参数配置值
      * 参数配置值
      */
      */
-    @ApiModelProperty(value = "参数值")
+    @ApiModelProperty(value = "参数值",required = true)
     @NotBlank(message = "参数值不能为空")
     @NotBlank(message = "参数值不能为空")
     private String val;
     private String val;
 
 
     /**
     /**
      * 备注
      * 备注
      */
      */
-    @ApiModelProperty(value = "参数描述")
+    @ApiModelProperty(value = "参数描述",required = true)
     @NotBlank(message = "参数描述不能为空")
     @NotBlank(message = "参数描述不能为空")
     private String remark;
     private String remark;
 
 

+ 7 - 4
common/src/main/java/com/lantone/common/vo/SaveRegionVO.java

@@ -18,10 +18,13 @@ import java.util.List;
 
 
     private Long id;
     private Long id;
 
 
-    @ApiModelProperty(value = "医院ID")
+    @ApiModelProperty(value = "医院ID",hidden = true)
     private Long hospitalId;
     private Long hospitalId;
 
 
-    @ApiModelProperty(value = "医院名称")
+   @ApiModelProperty(value = "用户ID",hidden = true)
+   private Long userId;
+
+    @ApiModelProperty(value = "医院名称",required = true)
     @NotBlank(message = "医院名称不能为空")
     @NotBlank(message = "医院名称不能为空")
     private String hospitalName;
     private String hospitalName;
 
 
@@ -34,14 +37,14 @@ import java.util.List;
     @ApiModelProperty(value = "病区编码")
     @ApiModelProperty(value = "病区编码")
     private String code;
     private String code;
 
 
-    @ApiModelProperty(value = "病区名称")
+    @ApiModelProperty(value = "病区名称",required = true)
     @NotBlank(message = "病区名称不能为空")
     @NotBlank(message = "病区名称不能为空")
     private String name;
     private String name;
 
 
     @ApiModelProperty(value = "首字母拼音")
     @ApiModelProperty(value = "首字母拼音")
     private String spell;
     private String spell;
 
 
-    @ApiModelProperty(value = "区域类别")
+    @ApiModelProperty(value = "区域类别",required = true)
     @NotBlank(message = "区域类别不能为空")
     @NotBlank(message = "区域类别不能为空")
     private String station;
     private String station;
 
 

+ 2 - 4
dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/DictionaryInfoFacade.java

@@ -1,8 +1,6 @@
 package com.lantone.dblayermbg.facade;
 package com.lantone.dblayermbg.facade;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
 import com.lantone.common.constant.AuthConstant;
 import com.lantone.common.constant.AuthConstant;
 import com.lantone.common.dto.GetDictionaryInfoByTypeDTO;
 import com.lantone.common.dto.GetDictionaryInfoByTypeDTO;
 import com.lantone.common.enums.IsDeleteEnum;
 import com.lantone.common.enums.IsDeleteEnum;
@@ -64,7 +62,7 @@ public class DictionaryInfoFacade extends DictionaryInfoServiceImpl {
      */
      */
     public Map<String, Map<String, String>> getDicMap(String returnType, List<String> groupTypes) {
     public Map<String, Map<String, String>> getDicMap(String returnType, List<String> groupTypes) {
         Map<String, Map<String, String>> outDicMap = new HashMap<>();
         Map<String, Map<String, String>> outDicMap = new HashMap<>();
-        Map<String, Map<String, Map<String, String>>> dicMap = (Map<String, Map<String, Map<String, String>>>) redisService.get(AuthConstant.DIC_MAP_KEY);
+        Map<String, Map<String, Map<String, String>>> dicMap = redisService.get(AuthConstant.DIC_MAP_KEY);
         Map<String, Map<String, String>> returnDicMap = dicMap.get(returnType);
         Map<String, Map<String, String>> returnDicMap = dicMap.get(returnType);
         if (MapUtils.isNotEmpty(returnDicMap) && ListUtil.isNotEmpty(groupTypes)) {
         if (MapUtils.isNotEmpty(returnDicMap) && ListUtil.isNotEmpty(groupTypes)) {
             groupTypes.stream().forEach(groupType -> {
             groupTypes.stream().forEach(groupType -> {
@@ -79,7 +77,7 @@ public class DictionaryInfoFacade extends DictionaryInfoServiceImpl {
      * @param returnType 返回类型
      * @param returnType 返回类型
      * @param groupTypes 分组集合
      * @param groupTypes 分组集合
      * @Description获取指定groupTyeps的字典集(返回结果集为对象形式)
      * @Description获取指定groupTyeps的字典集(返回结果集为对象形式)
-     * @Return java.util.Map<java.lang.String,java.util.List<com.lantone.common.dto.GetDictionaryInfoByTypeDTO>>
+     * @Return java.util.Map<java.lang.String, java.util.List < com.lantone.common.dto.GetDictionaryInfoByTypeDTO>>
      */
      */
     public Map<String, List<GetDictionaryInfoByTypeDTO>> getDicMapObj(String returnType, List<String> groupTypes) {
     public Map<String, List<GetDictionaryInfoByTypeDTO>> getDicMapObj(String returnType, List<String> groupTypes) {
         Map<String, List<GetDictionaryInfoByTypeDTO>> outDicMap = new HashMap<>();
         Map<String, List<GetDictionaryInfoByTypeDTO>> outDicMap = new HashMap<>();

+ 36 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/HospitalSetFacade.java

@@ -1,8 +1,17 @@
 package com.lantone.dblayermbg.facade;
 package com.lantone.dblayermbg.facade;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.lantone.common.constant.AuthConstant;
+import com.lantone.common.enums.IsDeleteEnum;
+import com.lantone.common.service.RedisService;
+import com.lantone.dblayermbg.entity.HospitalSet;
 import com.lantone.dblayermbg.service.impl.HospitalSetServiceImpl;
 import com.lantone.dblayermbg.service.impl.HospitalSetServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
+import java.util.Map;
+import java.util.stream.Collectors;
+
 /**
 /**
  * <p>
  * <p>
  * 表名:sys_hospital_set 业务类
  * 表名:sys_hospital_set 业务类
@@ -11,4 +20,31 @@ import org.springframework.stereotype.Component;
 @Component
 @Component
 public class HospitalSetFacade extends HospitalSetServiceImpl {
 public class HospitalSetFacade extends HospitalSetServiceImpl {
 
 
+    @Autowired
+    private RedisService redisService;
+    @Autowired
+    private HospitalSetFacade hospitalSetFacade;
+
+    public Map<String, Map<String, Map<String, String>>> initHospitalSetMap() {
+        QueryWrapper<HospitalSet> hospitalSetQueryWrapper = new QueryWrapper<HospitalSet>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey());
+        Map<String, Map<String, Map<String, String>>> hospitalSetMap = hospitalSetFacade.list(hospitalSetQueryWrapper)
+                .stream()
+                .collect(
+                        Collectors.groupingBy(
+                                i -> i.getHospitalId().toString(),
+                                Collectors.groupingBy(
+                                        HospitalSet::getCode,
+                                        Collectors.toMap(
+                                                HospitalSet::getName,
+                                                HospitalSet::getVal
+                                        )
+                                )
+                        )
+                );
+        redisService.del(AuthConstant.HOSPITAL_SET_MAP_KEY);
+        redisService.set(AuthConstant.HOSPITAL_SET_MAP_KEY, hospitalSetMap);
+        return hospitalSetMap;
+    }
+
 }
 }

+ 1 - 2
dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/ResourceFacade.java

@@ -7,7 +7,6 @@ import com.lantone.common.enums.StatusEnum;
 import com.lantone.common.service.RedisService;
 import com.lantone.common.service.RedisService;
 import com.lantone.dblayermbg.service.impl.ResourceServiceImpl;
 import com.lantone.dblayermbg.service.impl.ResourceServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
 import java.util.Arrays;
 import java.util.Arrays;
@@ -24,7 +23,7 @@ public class ResourceFacade extends ResourceServiceImpl {
 
 
     @Autowired
     @Autowired
     private RedisService redisService;
     private RedisService redisService;
-    @Async
+
     public Map<String, List<String>> initResourceRolesMap() {
     public Map<String, List<String>> initResourceRolesMap() {
         Map<String, List<String>> resourceRolesMap = Maps.newHashMap();
         Map<String, List<String>> resourceRolesMap = Maps.newHashMap();
         List<String> resourceRolesList = baseMapper.getResourceRolesMap(IsDeleteEnum.N.getKey(), StatusEnum.Enable.getKey());
         List<String> resourceRolesList = baseMapper.getResourceRolesMap(IsDeleteEnum.N.getKey(), StatusEnum.Enable.getKey());

+ 3 - 3
gateway-service/src/main/java/com/lantone/authorization/AuthorizationManager.java

@@ -4,10 +4,10 @@ import cn.hutool.core.convert.Convert;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.StrUtil;
 import com.lantone.common.constant.AuthConstant;
 import com.lantone.common.constant.AuthConstant;
 import com.lantone.common.domain.UserDto;
 import com.lantone.common.domain.UserDto;
+import com.lantone.common.service.RedisService;
 import com.lantone.common.util.SysUserUtils;
 import com.lantone.common.util.SysUserUtils;
 import com.lantone.config.IgnoreUrlsConfig;
 import com.lantone.config.IgnoreUrlsConfig;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.http.server.reactive.ServerHttpRequest;
 import org.springframework.security.authorization.AuthorizationDecision;
 import org.springframework.security.authorization.AuthorizationDecision;
@@ -36,7 +36,7 @@ import java.util.stream.Collectors;
 public class AuthorizationManager implements ReactiveAuthorizationManager<AuthorizationContext> {
 public class AuthorizationManager implements ReactiveAuthorizationManager<AuthorizationContext> {
 
 
     @Autowired
     @Autowired
-    private RedisTemplate<String, Object> redisTemplate;
+    private RedisService redisService;
     @Autowired
     @Autowired
     private IgnoreUrlsConfig ignoreUrlsConfig;
     private IgnoreUrlsConfig ignoreUrlsConfig;
 
 
@@ -71,7 +71,7 @@ public class AuthorizationManager implements ReactiveAuthorizationManager<Author
             return Mono.just(new AuthorizationDecision(true));
             return Mono.just(new AuthorizationDecision(true));
         }
         }
         //管理端路径需校验权限
         //管理端路径需校验权限
-        Map<Object, Object> resourceRolesMap = redisTemplate.opsForHash().entries(AuthConstant.RESOURCE_ROLES_MAP_KEY);
+        Map<Object, Object> resourceRolesMap = redisService.hGetAll(AuthConstant.RESOURCE_ROLES_MAP_KEY);
         Iterator<Object> iterator = resourceRolesMap.keySet().iterator();
         Iterator<Object> iterator = resourceRolesMap.keySet().iterator();
         List<String> authorities = new ArrayList<>();
         List<String> authorities = new ArrayList<>();
         while (iterator.hasNext()) {
         while (iterator.hasNext()) {

+ 35 - 0
security-center/src/main/java/com/lantone/security/aop/ResourceRoleRulesAspect.java

@@ -0,0 +1,35 @@
+package com.lantone.security.aop;
+
+import com.lantone.dblayermbg.facade.ResourceFacade;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.After;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Pointcut;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description: 资源与角色访问对应关系信息变更统一处理切面
+ * @author: rengb
+ * @time: 2021/8/26 10:43
+ */
+@Aspect
+@Component
+public class ResourceRoleRulesAspect {
+
+    @Autowired
+    private ResourceFacade resourceFacade;
+
+    @Pointcut("execution(public * com.lantone.security.web.RoleManagementController.addRole(..))" +
+            "||execution(public * com.lantone.security.web.RoleManagementController.deleteRole(..))" +
+            "||execution(public * com.lantone.security.web.RoleManagementController.disableRole(..))" +
+            "||execution(public * com.lantone.security.web.RoleManagementController.updateRole(..))")
+    public void basicInfoChange() {
+    }
+
+    @After("basicInfoChange()")
+    public void aspectAfter(JoinPoint joinPoint) throws Throwable {
+        resourceFacade.initResourceRolesMap();
+    }
+
+}

+ 28 - 0
security-center/src/main/java/com/lantone/security/component/HospitalSetHolder.java

@@ -0,0 +1,28 @@
+package com.lantone.security.component;
+
+import com.lantone.dblayermbg.facade.HospitalSetFacade;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.PostConstruct;
+
+/**
+ * @Description: 组织机构参数配置信息操作组件
+ * @author: rengb
+ * @time: 2021/1/5 18:27
+ */
+@Component
+public class HospitalSetHolder {
+
+    @Autowired
+    private HospitalSetFacade hospitalSetFacade;
+
+    /**
+     * 预加载所有组织机构参数配置信息
+     */
+    @PostConstruct
+    public void initHospitalSetMap() {
+        hospitalSetFacade.initHospitalSetMap();
+    }
+
+}

+ 12 - 10
security-center/src/main/java/com/lantone/security/facade/DictionaryManagementFacade.java

@@ -7,6 +7,7 @@ import com.lantone.common.enums.IsDeleteEnum;
 import com.lantone.common.enums.StatusEnum;
 import com.lantone.common.enums.StatusEnum;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.util.StringUtil;
 import com.lantone.common.util.StringUtil;
+import com.lantone.common.util.SysUserUtils;
 import com.lantone.common.vo.GetDictionaryVO;
 import com.lantone.common.vo.GetDictionaryVO;
 import com.lantone.common.vo.SaveDictionaryVO;
 import com.lantone.common.vo.SaveDictionaryVO;
 import com.lantone.dblayermbg.entity.DictionaryInfo;
 import com.lantone.dblayermbg.entity.DictionaryInfo;
@@ -38,15 +39,16 @@ public class DictionaryManagementFacade {
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
     public Object saveDictionary(SaveDictionaryVO saveDictionaryVO) {
     public Object saveDictionary(SaveDictionaryVO saveDictionaryVO) {
+        saveDictionaryVO.setUserId(SysUserUtils.getCurrentPrincipleId());
         Boolean flag = false;
         Boolean flag = false;
         //新增-校验重复数据
         //新增-校验重复数据
-        checkDictionary(saveDictionaryVO);
+        getCheckDictionary(saveDictionaryVO);
         DictionaryInfo dictionaryInfo = new DictionaryInfo();
         DictionaryInfo dictionaryInfo = new DictionaryInfo();
         BeanUtils.copyProperties(saveDictionaryVO, dictionaryInfo);
         BeanUtils.copyProperties(saveDictionaryVO, dictionaryInfo);
         if (null == saveDictionaryVO.getId()) {
         if (null == saveDictionaryVO.getId()) {
-            flag = addDictionary(dictionaryInfo);
+            flag = addDictionary(saveDictionaryVO.getUserId(), dictionaryInfo);
         } else if (null != saveDictionaryVO.getId()) {
         } else if (null != saveDictionaryVO.getId()) {
-            flag = updateDictionary(dictionaryInfo);
+            flag = updateDictionary(saveDictionaryVO.getUserId(), dictionaryInfo);
         }
         }
         return flag;
         return flag;
     }
     }
@@ -103,7 +105,7 @@ public class DictionaryManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public void checkDictionary(SaveDictionaryVO saveDictionaryVO) {
+    public void getCheckDictionary(SaveDictionaryVO saveDictionaryVO) {
         if (null == saveDictionaryVO.getId()) {
         if (null == saveDictionaryVO.getId()) {
             Integer count = dictionaryInfoFacade.lambdaQuery()
             Integer count = dictionaryInfoFacade.lambdaQuery()
                     .eq(DictionaryInfo::getIsDeleted, IsDeleteEnum.N.getKey())
                     .eq(DictionaryInfo::getIsDeleted, IsDeleteEnum.N.getKey())
@@ -111,7 +113,7 @@ public class DictionaryManagementFacade {
                     .eq(DictionaryInfo::getVal, saveDictionaryVO.getVal())
                     .eq(DictionaryInfo::getVal, saveDictionaryVO.getVal())
                     .count();
                     .count();
             if (count > 0) {
             if (count > 0) {
-                throw new ApiException("当前字典添加重复");
+                throw new ApiException("当前字典已重复添加");
             }
             }
         }
         }
     }
     }
@@ -123,9 +125,9 @@ public class DictionaryManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public Boolean addDictionary(DictionaryInfo dictionaryInfo) {
+    public Boolean addDictionary(Long userId, DictionaryInfo dictionaryInfo) {
         dictionaryInfo.setGmtCreate(new Date());
         dictionaryInfo.setGmtCreate(new Date());
-        dictionaryInfo.setCreator("程瑶-后期改");
+        dictionaryInfo.setCreator(userId.toString());
         return dictionaryInfoFacade.save(dictionaryInfo);
         return dictionaryInfoFacade.save(dictionaryInfo);
     }
     }
 
 
@@ -136,9 +138,9 @@ public class DictionaryManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public Boolean updateDictionary(DictionaryInfo dictionaryInfo) {
+    public Boolean updateDictionary(Long userId, DictionaryInfo dictionaryInfo) {
         dictionaryInfo.setGmtModified(new Date());
         dictionaryInfo.setGmtModified(new Date());
-        dictionaryInfo.setModifier("程瑶改");
+        dictionaryInfo.setModifier(userId.toString());
         return dictionaryInfoFacade.updateById(dictionaryInfo);
         return dictionaryInfoFacade.updateById(dictionaryInfo);
     }
     }
 
 
@@ -158,7 +160,7 @@ public class DictionaryManagementFacade {
         }
         }
         return dictionaryInfoLambdaQuery.groupBy(DictionaryInfo::getGroupType).list()
         return dictionaryInfoLambdaQuery.groupBy(DictionaryInfo::getGroupType).list()
                 .stream().filter(obj -> null != obj.getGroupType())
                 .stream().filter(obj -> null != obj.getGroupType())
-                .map(obj -> obj.getGroupType().toString()).sorted().collect(Collectors.toList());
+                .map(obj -> obj.getGroupType()).sorted().collect(Collectors.toList());
     }
     }
 }
 }
 
 

+ 11 - 7
security-center/src/main/java/com/lantone/security/facade/HospitalSetManagementFacade.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.additional.query.impl.LambdaQu
 import com.lantone.common.enums.IsDeleteEnum;
 import com.lantone.common.enums.IsDeleteEnum;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.util.StringUtil;
 import com.lantone.common.util.StringUtil;
+import com.lantone.common.util.SysUserUtils;
 import com.lantone.common.vo.GetHospitalSetVO;
 import com.lantone.common.vo.GetHospitalSetVO;
 import com.lantone.common.vo.SaveHospitalSetVO;
 import com.lantone.common.vo.SaveHospitalSetVO;
 import com.lantone.dblayermbg.entity.HospitalSet;
 import com.lantone.dblayermbg.entity.HospitalSet;
@@ -12,6 +13,7 @@ import com.lantone.dblayermbg.facade.HospitalSetFacade;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
+import java.util.Comparator;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
@@ -34,15 +36,17 @@ public class HospitalSetManagementFacade {
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
     public Object saveHospitalSet(SaveHospitalSetVO saveHospitalSetVO) {
     public Object saveHospitalSet(SaveHospitalSetVO saveHospitalSetVO) {
+        saveHospitalSetVO.setHospitalId(SysUserUtils.getCurrentHospitalId());
+        saveHospitalSetVO.setUserId(SysUserUtils.getCurrentPrincipleId());
         Boolean flag = false;
         Boolean flag = false;
         //新增-校验重复数据
         //新增-校验重复数据
         checkHospitalSet(saveHospitalSetVO);
         checkHospitalSet(saveHospitalSetVO);
         HospitalSet hospitalSet = new HospitalSet();
         HospitalSet hospitalSet = new HospitalSet();
         BeanUtils.copyProperties(saveHospitalSetVO, hospitalSet);
         BeanUtils.copyProperties(saveHospitalSetVO, hospitalSet);
         if (null == saveHospitalSetVO.getId()) {
         if (null == saveHospitalSetVO.getId()) {
-            flag = addHospitalSet(hospitalSet);
+            flag = addHospitalSet(saveHospitalSetVO.getUserId(),hospitalSet);
         } else if (null != saveHospitalSetVO.getId()) {
         } else if (null != saveHospitalSetVO.getId()) {
-            flag = updateHospitalSet(hospitalSet);
+            flag = updateHospitalSet(saveHospitalSetVO.getUserId(),hospitalSet);
         }
         }
         return flag;
         return flag;
     }
     }
@@ -115,9 +119,9 @@ public class HospitalSetManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public Boolean addHospitalSet(HospitalSet hospitalSet) {
+    public Boolean addHospitalSet(Long userId,HospitalSet hospitalSet) {
         hospitalSet.setGmtCreate(new Date());
         hospitalSet.setGmtCreate(new Date());
-        hospitalSet.setCreator("程瑶-后期改");
+        hospitalSet.setCreator(userId.toString());
         return hospitalSetFacade.save(hospitalSet);
         return hospitalSetFacade.save(hospitalSet);
     }
     }
 
 
@@ -128,9 +132,9 @@ public class HospitalSetManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public Boolean updateHospitalSet(HospitalSet hospitalSet) {
+    public Boolean updateHospitalSet(Long userId,HospitalSet hospitalSet) {
         hospitalSet.setGmtModified(new Date());
         hospitalSet.setGmtModified(new Date());
-        hospitalSet.setModifier("程瑶改");
+        hospitalSet.setModifier(userId.toString());
         return hospitalSetFacade.updateById(hospitalSet);
         return hospitalSetFacade.updateById(hospitalSet);
     }
     }
 
 
@@ -148,6 +152,6 @@ public class HospitalSetManagementFacade {
         }
         }
         hospitalSetLambdaQuery.eq(HospitalSet::getIsDeleted, IsDeleteEnum.N.getKey());
         hospitalSetLambdaQuery.eq(HospitalSet::getIsDeleted, IsDeleteEnum.N.getKey());
         hospitalSetLambdaQuery.groupBy(HospitalSet::getHospitalName);
         hospitalSetLambdaQuery.groupBy(HospitalSet::getHospitalName);
-        return  hospitalSetLambdaQuery.list().stream().filter(obj -> StringUtil.isNotBlank(obj.getHospitalName())).map(obj -> obj.getHospitalName()).sorted().collect(Collectors.toList());
+        return  hospitalSetLambdaQuery.list().stream().filter(obj -> StringUtil.isNotBlank(obj.getHospitalName())).sorted(Comparator.comparing(HospitalSet::getHospitalId)).map(obj -> obj.getHospitalName()).collect(Collectors.toList());
     }
     }
 }
 }

+ 18 - 9
security-center/src/main/java/com/lantone/security/facade/RegionManagementFacade.java

@@ -9,6 +9,7 @@ import com.lantone.common.dto.ViewRegionDTO;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.exception.ApiException;
 import com.lantone.common.util.ListUtil;
 import com.lantone.common.util.ListUtil;
 import com.lantone.common.util.StringUtil;
 import com.lantone.common.util.StringUtil;
+import com.lantone.common.util.SysUserUtils;
 import com.lantone.common.vo.CheckSolveRegionVO;
 import com.lantone.common.vo.CheckSolveRegionVO;
 import com.lantone.common.vo.GetDeptListVO;
 import com.lantone.common.vo.GetDeptListVO;
 import com.lantone.common.vo.SaveRegionVO;
 import com.lantone.common.vo.SaveRegionVO;
@@ -53,9 +54,11 @@ public class RegionManagementFacade {
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
     public Object saveRegion(SaveRegionVO saveRegionVo) {
     public Object saveRegion(SaveRegionVO saveRegionVo) {
+        saveRegionVo.setHospitalId(SysUserUtils.getCurrentHospitalId());
+        saveRegionVo.setUserId(SysUserUtils.getCurrentPrincipleId());
         Boolean flag = false;
         Boolean flag = false;
         //新增-校验重复数据
         //新增-校验重复数据
-        getRegion(saveRegionVo);
+        getCheckRegion(saveRegionVo);
         Region sysRegion = new Region();
         Region sysRegion = new Region();
         BeanUtils.copyProperties(saveRegionVo, sysRegion);
         BeanUtils.copyProperties(saveRegionVo, sysRegion);
         List<RegionDept> sysRegionDepts = new ArrayList<>();
         List<RegionDept> sysRegionDepts = new ArrayList<>();
@@ -74,7 +77,8 @@ public class RegionManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public IPage<ViewRegionDTO> getWard(GetRegionVO getRegionVO) {
+    public IPage<ViewRegionDTO> getRegion(GetRegionVO getRegionVO) {
+        getRegionVO.setHospitalId(SysUserUtils.getCurrentHospitalId());
         IPage<ViewRegionDTO> page = regionFacade.getWard(getRegionVO);
         IPage<ViewRegionDTO> page = regionFacade.getWard(getRegionVO);
         List<ViewRegionDTO> wardList = page.getRecords();
         List<ViewRegionDTO> wardList = page.getRecords();
         if (ListUtil.isNotEmpty(wardList) && StringUtil.isNotEmpty(getRegionVO.getDeptName())) {
         if (ListUtil.isNotEmpty(wardList) && StringUtil.isNotEmpty(getRegionVO.getDeptName())) {
@@ -99,7 +103,7 @@ public class RegionManagementFacade {
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
     public Boolean deleteRegion(Integer id) {
     public Boolean deleteRegion(Integer id) {
-        Integer hospitalId = 4;
+        Long hospitalId = SysUserUtils.getCurrentHospitalId();
         regionFacade.lambdaUpdate()
         regionFacade.lambdaUpdate()
                 .eq(Region::getId,id)
                 .eq(Region::getId,id)
                 .eq(Region::getHospitalId, hospitalId).remove();
                 .eq(Region::getHospitalId, hospitalId).remove();
@@ -116,7 +120,7 @@ public class RegionManagementFacade {
      * @Author: cy
      * @Author: cy
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
-    public void getRegion(SaveRegionVO saveRegionVo) {
+    public void getCheckRegion(SaveRegionVO saveRegionVo) {
         if (null == saveRegionVo.getId()) {
         if (null == saveRegionVo.getId()) {
             Region region = regionFacade.lambdaQuery()
             Region region = regionFacade.lambdaQuery()
                     .eq(Region::getIsDeleted, IsDeleteEnum.N.getKey())
                     .eq(Region::getIsDeleted, IsDeleteEnum.N.getKey())
@@ -138,7 +142,7 @@ public class RegionManagementFacade {
      */
      */
     public Boolean addRegion(SaveRegionVO saveRegionVo, Region sysRegion, List<RegionDept> sysRegionDepts) {
     public Boolean addRegion(SaveRegionVO saveRegionVo, Region sysRegion, List<RegionDept> sysRegionDepts) {
         sysRegion.setGmtCreate(new Date());
         sysRegion.setGmtCreate(new Date());
-        sysRegion.setCreator("程瑶-后期改");
+        sysRegion.setCreator(saveRegionVo.getUserId().toString());
         regionFacade.save(sysRegion);
         regionFacade.save(sysRegion);
         if (ListUtil.isNotEmpty(saveRegionVo.getDeptIds())) {
         if (ListUtil.isNotEmpty(saveRegionVo.getDeptIds())) {
             saveRegionVo.getDeptIds().forEach(obj -> {
             saveRegionVo.getDeptIds().forEach(obj -> {
@@ -147,7 +151,7 @@ public class RegionManagementFacade {
                 sysRegionDept.setDeptId(obj);
                 sysRegionDept.setDeptId(obj);
                 sysRegionDept.setRegionId(sysRegion.getId());
                 sysRegionDept.setRegionId(sysRegion.getId());
                 sysRegionDept.setGmtCreate(new Date());
                 sysRegionDept.setGmtCreate(new Date());
-                sysRegionDept.setCreator("后期修改");
+                sysRegionDept.setCreator(saveRegionVo.getUserId().toString());
                 sysRegionDepts.add(sysRegionDept);
                 sysRegionDepts.add(sysRegionDept);
             });
             });
             return regionDeptService.saveBatch(sysRegionDepts);
             return regionDeptService.saveBatch(sysRegionDepts);
@@ -164,7 +168,7 @@ public class RegionManagementFacade {
      */
      */
     public Boolean updateRegion(SaveRegionVO saveRegionVo, Region sysRegion, List<RegionDept> sysRegionDepts) {
     public Boolean updateRegion(SaveRegionVO saveRegionVo, Region sysRegion, List<RegionDept> sysRegionDepts) {
         sysRegion.setGmtModified(new Date());
         sysRegion.setGmtModified(new Date());
-        sysRegion.setModifier("程瑶改");
+        sysRegion.setModifier(saveRegionVo.getUserId().toString());
         regionFacade.updateById(sysRegion);
         regionFacade.updateById(sysRegion);
         if (ListUtil.isNotEmpty(saveRegionVo.getDeptIds())) {
         if (ListUtil.isNotEmpty(saveRegionVo.getDeptIds())) {
             Region region = regionFacade.lambdaQuery()
             Region region = regionFacade.lambdaQuery()
@@ -185,7 +189,7 @@ public class RegionManagementFacade {
                     sysRegionDeptEntry.setCreator(region.getCreator());
                     sysRegionDeptEntry.setCreator(region.getCreator());
                 }
                 }
                 sysRegionDeptEntry.setGmtModified(new Date());
                 sysRegionDeptEntry.setGmtModified(new Date());
-                sysRegionDeptEntry.setModifier("后期修改");
+                sysRegionDeptEntry.setModifier(saveRegionVo.getUserId().toString());
                 sysRegionDepts.add(sysRegionDeptEntry);
                 sysRegionDepts.add(sysRegionDeptEntry);
             });
             });
             return regionDeptService.saveBatch(sysRegionDepts);
             return regionDeptService.saveBatch(sysRegionDepts);
@@ -201,6 +205,8 @@ public class RegionManagementFacade {
      * @Date: 2021/7/30
      * @Date: 2021/7/30
      */
      */
     public Object checkSolveRegion(CheckSolveRegionVO checkSolveRegionVO) {
     public Object checkSolveRegion(CheckSolveRegionVO checkSolveRegionVO) {
+        checkSolveRegionVO.setHospitalId(SysUserUtils.getCurrentHospitalId());
+        checkSolveRegionVO.setUserId(SysUserUtils.getCurrentPrincipleId());
         //禁用校验
         //禁用校验
         if (null != checkSolveRegionVO.getId() && 0 == checkSolveRegionVO.getMark()) {
         if (null != checkSolveRegionVO.getId() && 0 == checkSolveRegionVO.getMark()) {
             List<Long> collectList = regionDeptService.lambdaQuery()
             List<Long> collectList = regionDeptService.lambdaQuery()
@@ -208,7 +214,7 @@ public class RegionManagementFacade {
                     .eq(RegionDept::getRegionId,checkSolveRegionVO.getId())
                     .eq(RegionDept::getRegionId,checkSolveRegionVO.getId())
                     .eq(RegionDept::getHospitalId,checkSolveRegionVO.getHospitalId())
                     .eq(RegionDept::getHospitalId,checkSolveRegionVO.getHospitalId())
                     .list().stream().map(obj -> obj.getDeptId()).collect(Collectors.toList());
                     .list().stream().map(obj -> obj.getDeptId()).collect(Collectors.toList());
-            if (ListUtil.isNotEmpty(collectList) && collectList.size() > 0) {
+            if (ListUtil.isNotEmpty(collectList)) {
                 //当前病区存在与之关联的科室
                 //当前病区存在与之关联的科室
                 return 1;
                 return 1;
             }
             }
@@ -227,6 +233,8 @@ public class RegionManagementFacade {
             if(2 == checkSolveRegionVO.getMark()){
             if(2 == checkSolveRegionVO.getMark()){
                 regionLambdaUpdate.set(Region::getStatus,1).update();
                 regionLambdaUpdate.set(Region::getStatus,1).update();
             }
             }
+            regionLambdaUpdate.set(Region::getModifier,checkSolveRegionVO.getUserId().toString()).update();
+            regionLambdaUpdate.set(Region::getGmtModified,new Date()).update();
         }
         }
         return true;
         return true;
     }
     }
@@ -239,6 +247,7 @@ public class RegionManagementFacade {
      * @Date: 2021/8/2
      * @Date: 2021/8/2
      */
      */
     public  List<DeptListDTO> getDept(GetDeptListVO getDeptListVO){
     public  List<DeptListDTO> getDept(GetDeptListVO getDeptListVO){
+        getDeptListVO.setHospitalId(SysUserUtils.getCurrentHospitalId());
         List<DeptListDTO> deptListDTOS = new ArrayList<>();
         List<DeptListDTO> deptListDTOS = new ArrayList<>();
         LambdaQueryChainWrapper<Dept> lambdaQueryChainWrapper = deptFacade.lambdaQuery();
         LambdaQueryChainWrapper<Dept> lambdaQueryChainWrapper = deptFacade.lambdaQuery();
         lambdaQueryChainWrapper.eq(Dept::getHospitalId,getDeptListVO.getHospitalId());
         lambdaQueryChainWrapper.eq(Dept::getHospitalId,getDeptListVO.getHospitalId());

+ 7 - 16
security-center/src/main/java/com/lantone/security/web/DictionaryManagementController.java

@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.validation.Valid;
 import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -31,39 +32,29 @@ public class DictionaryManagementController {
     @Autowired
     @Autowired
     private DictionaryManagementFacade dictionaryManagementFacade;
     private DictionaryManagementFacade dictionaryManagementFacade;
 
 
-    @ApiOperation(value = "新增/修改字典[by:cy]",
-            notes = "id:新增操作为null<br>" +
-                    "groupType:代码类别,必填<br>" +
-                    "val:字典编码,必填<br>" +
-                    "name:代码名称,必填<br>" +
-                    "remark:字典说明,必填<br>" +
-                    "status:是否启用,必填<br>")
+    @ApiOperation(value = "新增/修改字典[by:cy]")
     @PostMapping("/saveDictionary")
     @PostMapping("/saveDictionary")
     @Transactional
     @Transactional
     public CommonResult<Object> saveDictionary(@RequestBody @Valid SaveDictionaryVO saveDictionaryVO) {
     public CommonResult<Object> saveDictionary(@RequestBody @Valid SaveDictionaryVO saveDictionaryVO) {
         return CommonResult.success(dictionaryManagementFacade.saveDictionary(saveDictionaryVO));
         return CommonResult.success(dictionaryManagementFacade.saveDictionary(saveDictionaryVO));
     }
     }
 
 
-    @ApiOperation(value = "查看字典管理[by:cy]",
-            notes = "name:代码名称,<br>" +
-                    "groupType:代码类别,<br>")
+    @ApiOperation(value = "查看字典管理[by:cy]")
     @PostMapping("/getDictionary")
     @PostMapping("/getDictionary")
     public CommonResult<IPage<DictionaryInfo>> getDictionary(@RequestBody GetDictionaryVO getDictionaryVO) {
     public CommonResult<IPage<DictionaryInfo>> getDictionary(@RequestBody GetDictionaryVO getDictionaryVO) {
         return CommonResult.success(dictionaryManagementFacade.getDictionary(getDictionaryVO));
         return CommonResult.success(dictionaryManagementFacade.getDictionary(getDictionaryVO));
     }
     }
 
 
-    @ApiOperation(value = "删除字典管理[by:cy]",
-            notes = "id:字典id,必填<br>")
+    @ApiOperation(value = "删除字典管理[by:cy]")
     @PostMapping("/deleteDictionary")
     @PostMapping("/deleteDictionary")
     @Transactional
     @Transactional
-    public CommonResult<Boolean> deleteDictionary(@RequestParam Integer id) {
+    public CommonResult<Boolean> deleteDictionary(@RequestParam @Valid @NotNull(message = "字典id为空") Integer id) {
         return CommonResult.success(dictionaryManagementFacade.deleteDictionary(id));
         return CommonResult.success(dictionaryManagementFacade.deleteDictionary(id));
     }
     }
 
 
-    @ApiOperation(value = "查看字典管理代码类别[by:cy]",
-            notes ="groupType:代码类别<br>")
+    @ApiOperation(value = "查看字典管理代码类别[by:cy]")
     @PostMapping("/getCodeCategory")
     @PostMapping("/getCodeCategory")
-    public CommonResult<List<String>> getCodeCategory(@RequestParam("groupType")String groupType) {
+    public CommonResult<List<String>> getCodeCategory(@RequestParam("groupType") String groupType) {
         return CommonResult.success(dictionaryManagementFacade.getCodeCategory(groupType));
         return CommonResult.success(dictionaryManagementFacade.getCodeCategory(groupType));
     }
     }
 }
 }

+ 6 - 15
security-center/src/main/java/com/lantone/security/web/HospitalSetManagementController.java

@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.validation.Valid;
 import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -31,37 +32,27 @@ public class HospitalSetManagementController {
     @Autowired
     @Autowired
     private HospitalSetManagementFacade hospitalSetManagementFacade;
     private HospitalSetManagementFacade hospitalSetManagementFacade;
 
 
-    @ApiOperation(value = "新增/修改参数[by:cy]",
-            notes = "id:新增操作为null<br>" +
-                    "hospitalId:医院ID<br>" +
-                    "val:参数值,必填<br>" +
-                    "code:参数名,必填<br>" +
-                    "remark:参数描述,必填<br>" +
-                    "name:参数说明,必填<br>")
+    @ApiOperation(value = "新增/修改参数[by:cy]")
     @PostMapping("/saveHospitalSet")
     @PostMapping("/saveHospitalSet")
     @Transactional
     @Transactional
     public CommonResult<Object> saveHospitalSet(@RequestBody @Valid SaveHospitalSetVO saveHospitalSetVO) {
     public CommonResult<Object> saveHospitalSet(@RequestBody @Valid SaveHospitalSetVO saveHospitalSetVO) {
         return CommonResult.success(hospitalSetManagementFacade.saveHospitalSet(saveHospitalSetVO));
         return CommonResult.success(hospitalSetManagementFacade.saveHospitalSet(saveHospitalSetVO));
     }
     }
 
 
-    @ApiOperation(value = "查看参数管理[by:cy]",
-            notes = "name:代码名称,<br>" +
-                    "groupType:代码类别,<br>")
+    @ApiOperation(value = "查看参数管理[by:cy]")
     @PostMapping("/getHospitalSet")
     @PostMapping("/getHospitalSet")
     public CommonResult<IPage<HospitalSet>> getDictionary(@RequestBody GetHospitalSetVO getHospitalSetVO) {
     public CommonResult<IPage<HospitalSet>> getDictionary(@RequestBody GetHospitalSetVO getHospitalSetVO) {
         return CommonResult.success(hospitalSetManagementFacade.getHospitalSet(getHospitalSetVO));
         return CommonResult.success(hospitalSetManagementFacade.getHospitalSet(getHospitalSetVO));
     }
     }
 
 
-    @ApiOperation(value = "删除参数管理[by:cy]",
-            notes = "id:参数id,必填<br>")
+    @ApiOperation(value = "删除参数管理[by:cy]")
     @PostMapping("/deleteHospitalSet")
     @PostMapping("/deleteHospitalSet")
     @Transactional
     @Transactional
-    public CommonResult<Boolean> deleteHospitalSet(@RequestParam("id") Integer id) {
+    public CommonResult<Boolean> deleteHospitalSet(@RequestParam("id") @Valid @NotNull(message = "参数id不能为空") Integer id) {
         return CommonResult.success(hospitalSetManagementFacade.deleteHospitalSet(id));
         return CommonResult.success(hospitalSetManagementFacade.deleteHospitalSet(id));
     }
     }
 
 
-    @ApiOperation(value = "查看参数管理所属组织[by:cy]",
-            notes = "hospitalName:所属组织<br>")
+    @ApiOperation(value = "查看参数管理所属组织[by:cy]")
     @PostMapping("/getHospitalNames")
     @PostMapping("/getHospitalNames")
     public CommonResult<List<String>> getHospitalNames(@RequestParam("hospitalName") String hospitalName) {
     public CommonResult<List<String>> getHospitalNames(@RequestParam("hospitalName") String hospitalName) {
         return CommonResult.success(hospitalSetManagementFacade.getHospitalNames(hospitalName));
         return CommonResult.success(hospitalSetManagementFacade.getHospitalNames(hospitalName));

+ 8 - 25
security-center/src/main/java/com/lantone/security/web/RegionManagementController.java

@@ -20,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.validation.Valid;
 import javax.validation.Valid;
+import javax.validation.constraints.NotNull;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -34,53 +35,35 @@ public class RegionManagementController {
     @Autowired
     @Autowired
     private RegionManagementFacade sysRegionFacade;
     private RegionManagementFacade sysRegionFacade;
 
 
-    @ApiOperation(value = "新增/修改病区[by:cy]",
-            notes = "hospitalName:上级组织名称,必填<br>" +
-                    "id:新增操作为null <br>" +
-                    "name:病区名称,必填<br>" +
-                    "code:病区编码,<br>" +
-                    "deptIds:关联科室,<br>" +
-                    "station:区域类别,必填<br>" +
-                    "orderNo:排序,<br>" +
-                    "status:是否启用,<br>")
+    @ApiOperation(value = "新增/修改病区[by:cy]")
     @PostMapping("/saveRegion")
     @PostMapping("/saveRegion")
     @Transactional
     @Transactional
     public CommonResult<Object> saveRegion(@RequestBody @Valid SaveRegionVO saveRegionVo) {
     public CommonResult<Object> saveRegion(@RequestBody @Valid SaveRegionVO saveRegionVo) {
         return CommonResult.success(sysRegionFacade.saveRegion(saveRegionVo));
         return CommonResult.success(sysRegionFacade.saveRegion(saveRegionVo));
     }
     }
 
 
-    @ApiOperation(value = "校验/禁用病区管理[by:cy]",
-            notes = "hospitalId:医院ID<br>" +
-                    "name:病区名称<br>" +
-                    "id:病区id,必填<br>" +
-                    "mark:0-禁用校验标识 1-禁用此病区,必填<br>")
+    @ApiOperation(value = "校验/禁用/启用病区管理[by:cy]")
     @PostMapping("/checkSolveRegion")
     @PostMapping("/checkSolveRegion")
     public CommonResult<Object> checkSolveRegion(@RequestBody @Valid CheckSolveRegionVO checkSolveRegionVO) {
     public CommonResult<Object> checkSolveRegion(@RequestBody @Valid CheckSolveRegionVO checkSolveRegionVO) {
         return CommonResult.success(sysRegionFacade.checkSolveRegion(checkSolveRegionVO));
         return CommonResult.success(sysRegionFacade.checkSolveRegion(checkSolveRegionVO));
     }
     }
 
 
 
 
-    @ApiOperation(value = "查看病区管理[by:cy]",
-            notes = "hospitalId:医院ID<br>" +
-                    "name:病区名称,<br>" +
-                    "deptName:关联科室,<br>" +
-                    "status:启用状态 0-否 1-是 <br>")
+    @ApiOperation(value = "查看病区管理[by:cy]")
     @PostMapping("/getRegion")
     @PostMapping("/getRegion")
     public CommonResult<IPage<ViewRegionDTO>> getRegion(@RequestBody GetRegionVO getRegionVO) {
     public CommonResult<IPage<ViewRegionDTO>> getRegion(@RequestBody GetRegionVO getRegionVO) {
-        return CommonResult.success(sysRegionFacade.getWard(getRegionVO));
+        return CommonResult.success(sysRegionFacade.getRegion(getRegionVO));
     }
     }
 
 
 
 
-    @ApiOperation(value = "删除病区管理[by:cy]",
-            notes = "id:病区id,必填<br>")
+    @ApiOperation(value = "删除病区管理[by:cy]")
     @PostMapping("/deleteRegion")
     @PostMapping("/deleteRegion")
     @Transactional
     @Transactional
-    public CommonResult<Boolean> deleteRegion(@RequestParam Integer id) {
+    public CommonResult<Boolean> deleteRegion(@RequestParam @Valid @NotNull(message = "病区id为空") Integer id) {
         return CommonResult.success(sysRegionFacade.deleteRegion(id));
         return CommonResult.success(sysRegionFacade.deleteRegion(id));
     }
     }
 
 
-    @ApiOperation(value = "获取科室列表[by:cy]",
-            notes = "标记(0-返回科室列表 1-返回互斥科室列表),必填<br>")
+    @ApiOperation(value = "获取科室列表[by:cy]")
     @PostMapping("/getDeptList")
     @PostMapping("/getDeptList")
     public CommonResult<List<DeptListDTO>> getDeptList(@RequestBody GetDeptListVO getDeptListVO) {
     public CommonResult<List<DeptListDTO>> getDeptList(@RequestBody GetDeptListVO getDeptListVO) {
         return CommonResult.success(sysRegionFacade.getDept(getDeptListVO));
         return CommonResult.success(sysRegionFacade.getDept(getDeptListVO));