ソースを参照

医疗组默认筛选条件通过用户角色判断

songxinlu 3 年 前
コミット
6c27ce10f2

+ 3 - 0
src/main/java/com/diagbot/dto/RegionMedoupDTO.java

@@ -19,5 +19,8 @@ public class RegionMedoupDTO {
   List<MedoupDTO> medoups;
   @ApiModelProperty("医生医疗组")
   String localMedoupCode;
+  @ApiModelProperty("全部显示flag")
+  boolean showAllFlag;
+
 
 }

+ 11 - 1
src/main/java/com/diagbot/facade/MedCheckWorkFacade.java

@@ -20,6 +20,7 @@ import com.diagbot.entity.RegionDept;
 import com.diagbot.entity.SysTaskCron;
 import com.diagbot.entity.SysUser;
 import com.diagbot.enums.CheckJobTypeEnum;
+import com.diagbot.enums.CheckerRoleEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
@@ -371,6 +372,13 @@ public class MedCheckWorkFacade {
      */
     public RegionMedoupDTO getLocalRegionMedoup() {
 
+        Long userId = Long.parseLong(SysUserUtils.getCurrentPrincipleID());
+        SysUserBaseVO sysUserRoleBaseVO = new SysUserBaseVO();
+        sysUserRoleBaseVO.setUserId(userId);
+        List<Long> roleIds = sysUserFacade.getUserRoles(sysUserRoleBaseVO).getSelRoles().stream().map(i -> i.getId()).collect(Collectors.toList());
+        if(ListUtil.isEmpty(roleIds)){
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR, "该用户无角色信息");
+        }
         RegionMedoupDTO regionMedoup = new RegionMedoupDTO();
         SysUserBaseVO sysUserBaseVO = new SysUserBaseVO();
         sysUserBaseVO.setUserId(Long.parseLong(SysUserUtils.getCurrentPrincipleID()));
@@ -402,7 +410,9 @@ public class MedCheckWorkFacade {
                 regionMedoup.setLocalMedoupCode(medoupTemps.get(0));
             }
         }
-
+        if(roleIds.contains(CheckerRoleEnum.DEPT_SUPERVISOR.getKey() * 1l)){
+            regionMedoup.setShowAllFlag(true);
+        }
         return regionMedoup;
     }