Browse Source

Merge remote-tracking branch 'origin/dev/auto_20211209' into dev/nurseRule20220329

zhaops 2 năm trước cách đây
mục cha
commit
6c424fcfd2

+ 47 - 1
cdssman-service/src/main/java/com/diagbot/facade/RunningInfoFacade.java

@@ -2,6 +2,7 @@ package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.entity.CaseInfo;
+import com.diagbot.entity.HospitalInfo;
 import com.diagbot.entity.RunningInfo;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.StatusEnum;
@@ -39,6 +40,9 @@ public class RunningInfoFacade extends RunningInfoServiceImpl {
     @Autowired
     private CaseInfoService caseInfoService;
 
+    @Autowired
+    private HospitalInfoFacade hospitalInfoFacade;
+
     /**
      * 更新运行状态
      *
@@ -151,4 +155,46 @@ public class RunningInfoFacade extends RunningInfoServiceImpl {
             return true;
         }
     }
-}
+
+
+    /**
+     * 执行中提示
+     *
+     * @param runningStatusVO
+     * @return
+     */
+    public String reminder(RunningStatusVO runningStatusVO) {
+        List<CaseInfo> caseList = caseInfoService.list(new QueryWrapper<CaseInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("case_group", runningStatusVO.getCaseGroup()));
+        if (ListUtil.isEmpty(caseList)) {
+            return "";
+        }
+        List<Long> caseIds = caseList.stream().map(CaseInfo::getId).distinct().collect(Collectors.toList());
+        List<RunningInfo> list = runningInfoService.list(new QueryWrapper<RunningInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("case_id", caseIds)
+                .eq("status", StatusEnum.Enable.getKey()));
+        if (ListUtil.isEmpty(list)) {
+            return "";
+        }
+
+        List<Long> hospitalIds = list.stream().map(RunningInfo::getHospitalId).distinct().collect(Collectors.toList());
+        List<HospitalInfo> hospitalInfoList = hospitalInfoFacade.list(new QueryWrapper<HospitalInfo>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .in("id", hospitalIds));
+
+        Map<Long, String> hosMap = hospitalInfoList.stream().collect(Collectors.toMap(HospitalInfo::getId, HospitalInfo::getName));
+        Map<Long, String> caseMap = caseList.stream().collect(Collectors.toMap(CaseInfo::getId, CaseInfo::getCaseName));
+
+
+        String msg = "以下测试:";
+        int count = 0;
+        for (RunningInfo info : list) {
+            msg += (++count) + "、【" + hosMap.get(info.getHospitalId()) + "】【" + caseMap.get(info.getCaseId()) + "】;";
+        }
+        msg += "正在执行,请稍后……";
+
+        return msg;
+    }
+}

+ 10 - 1
cdssman-service/src/main/java/com/diagbot/web/RunningInfoController.java

@@ -67,4 +67,13 @@ public class RunningInfoController {
         Boolean data = runningInfoFacade.getRunningStatus(runningStatusVO);
         return RespDTO.onSuc(data);
     }
-}
+
+    @ApiOperation(value = "执行中提示[zhaops]",
+            notes = "caseGroup: 测试类型:1、规则测试,2-静态知识测试 <br>")
+    @PostMapping("/reminder")
+    @SysLogger("reminder")
+    public RespDTO<String> reminder(@Valid @RequestBody RunningStatusVO runningStatusVO) {
+        String data = runningInfoFacade.reminder(runningStatusVO);
+        return RespDTO.onSuc(data);
+    }
+}