Browse Source

Merge remote-tracking branch 'origin/dev/20200713_1.3.7.2' into debug

zhaops 5 years atrás
parent
commit
ff053335e2

+ 110 - 0
src/main/java/com/diagbot/aggregate/LeaveHosStatisticsAggregate.java

@@ -0,0 +1,110 @@
+package com.diagbot.aggregate;
+
+import com.diagbot.facade.BehospitalInfoFacade;
+import com.diagbot.vo.FilterVO;
+import io.github.lvyahui8.spring.annotation.DataConsumer;
+import io.github.lvyahui8.spring.annotation.DataProvider;
+import io.github.lvyahui8.spring.annotation.InvokeParameter;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/15 16:03
+ */
+@Component
+public class LeaveHosStatisticsAggregate {
+    @Autowired
+    private BehospitalInfoFacade behospitalInfoFacade;
+
+    @DataProvider("setAllLeaveHos")
+    public Map<String, Object> setAllLeaveHos(
+            @InvokeParameter("filterVO") FilterVO filterVO,
+            @DataConsumer("getTotleCount") Integer totleNum,
+            @DataConsumer("getDeathCount") Integer deathNum,
+            @DataConsumer("getNewBornCount") Integer newBornNum,
+            @DataConsumer("getOperationCount") Integer operationNum,
+            @DataConsumer("getNonAdviceCount") Integer nonAdviceNum,
+            @DataConsumer("get31DaysBehospitalCount") Integer reBehospitalNum) {
+
+        Map<String, Object> retMap = new LinkedHashMap<>();
+        retMap.put("总人数", totleNum);
+        retMap.put("死亡人数", deathNum);
+        retMap.put("新生儿人数", newBornNum);
+        retMap.put("手术病人数", operationNum);
+        retMap.put("非医嘱离院病人数", nonAdviceNum);
+        retMap.put("31日再入院病人数", reBehospitalNum);
+        return retMap;
+
+    }
+
+    /**
+     * 总人数
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("getTotleCount")
+    public Integer getTotleCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.leaveHosCount(filterVO);
+    }
+
+    /**
+     * 死亡人数
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("getDeathCount")
+    public Integer getDeathCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.deathCount(filterVO);
+    }
+
+    /**
+     * 新生儿患者人数
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("getNewBornCount")
+    public Integer getNewBornCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.newBornCount(filterVO);
+    }
+
+    /**
+     * 手术人数
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("getOperationCount")
+    public Integer getOperationCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.operationCount(filterVO);
+    }
+
+    /**
+     * 非医嘱离院
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("getNonAdviceCount")
+    public Integer getNonAdviceCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.nonAdviceCount(filterVO);
+    }
+
+    /**
+     * 31天重复入院
+     *
+     * @param filterVO
+     * @return
+     */
+    @DataProvider("get31DaysBehospitalCount")
+    public Integer get31DaysBehospitalCount(@InvokeParameter("filterVO") FilterVO filterVO) {
+        return behospitalInfoFacade.get31DaysBehospitalCount(filterVO);
+    }
+}

+ 3 - 3
src/main/java/com/diagbot/facade/ConsoleExportFacade.java

@@ -317,9 +317,6 @@ public class ConsoleExportFacade {
     public void unModifyMRStatisticsExport(HttpServletResponse response, FilterUnModifyMRVO filterUnModifyMRVO) {
         filterFacade.filterUnModifyMRVOSet(filterUnModifyMRVO);
         List<ExcelExportEntity> colList = Lists.newLinkedList();
-           /* ExcelExportEntity deptIdCol = new ExcelExportEntity("科室编码", "deptId");
-            deptIdCol.setWidth(20);
-            colList.add(deptIdCol);*/
         ExcelExportEntity deptNameCol = new ExcelExportEntity("科室名称", "deptName");
         deptNameCol.setWidth(50);
         colList.add(deptNameCol);
@@ -336,6 +333,9 @@ public class ConsoleExportFacade {
 
         List<String> columnSet = Arrays.asList(hospitalSet.getValue().split(","));
         for (String valueStr : columnSet) {
+            if(StringUtil.isBlank(valueStr)){
+                continue;
+            }
             String[] keyValue = valueStr.split("--");
             if (keyValue != null || keyValue.length > 1) {
                 ExcelExportEntity entryCol = new ExcelExportEntity(keyValue[1], "entry_" + keyValue[0] + "_num");

+ 13 - 3
src/main/java/com/diagbot/facade/ConsoleFacade.java

@@ -240,7 +240,15 @@ public class ConsoleFacade {
     public Map<String, Object> leaveHosCount(FilterVO filterVO) {
         Map<String, Object> retMap = new HashMap<>();
         filterFacade.filterVOSet(filterVO);
-        Map<String, Object> leaveHosMap = mrStatisticsAggregate.leaveHosCount(filterVO);
+        Map<String, Object> leaveHosMap = new HashMap<>();
+        try {
+            Map<String, Object> invokeParams = new HashMap<>();
+            invokeParams.put("filterVO", filterVO);
+            leaveHosMap
+                    = dataBeanAggregateQueryFacade.get("setAllLeaveHos", invokeParams, Map.class);
+        } catch (Exception e) {
+            throw new CommonException(CommonErrorCode.SERVER_IS_ERROR);
+        }
         if (leaveHosMap != null) {
             retMap.put("出院人数统计", leaveHosMap);
         }
@@ -997,7 +1005,7 @@ public class ConsoleFacade {
                 .eq("code", "unmodify_mr_entry");
         SysHospitalSet hospitalSet = sysHospitalSetFacade.getOne(hospitalSetQueryWrapper);
         if (hospitalSet == null || StringUtil.isBlank(hospitalSet.getValue())) {
-            return null;
+            return unModifyMRDTO;
         }
 
         //表头生成
@@ -1020,6 +1028,9 @@ public class ConsoleFacade {
         orderNo++;
         List<Long> casesEntryIds = Lists.newArrayList();
         for (String valueStr : columnSet) {
+            if (StringUtil.isBlank(valueStr)) {
+                continue;
+            }
             String[] keyValue = valueStr.split("--");
             if (keyValue != null || keyValue.length > 1) {
                 casesEntryIds.add(Long.valueOf(keyValue[0]));
@@ -1062,7 +1073,6 @@ public class ConsoleFacade {
         List<QcCasesEntry> casesEntryList = qcCasesEntryFacade.list(qcCasesEntryQueryWrapper);
         Map<Long, String> basCasesEntryMap = EntityUtil.makeMapWithKeyValue(casesEntryList, "id", "name");
 
-
         List<UnModifyMRDetailDTO> records = behospitalInfoFacade.unModifyMRStatistics(filterUnModifyMRVO);
         Map<String, List<UnModifyMRDetailDTO>> deptMap = EntityUtil.makeEntityListMap(records, "deptName");
         Map<String, String> deptInfoMap = EntityUtil.makeMapWithKeyValue(records, "deptName", "deptId");