From 22881a1dd395aa0d83025842ed57764b4e15b5bf Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期一, 14 十月 2024 10:40:38 +0800
Subject: [PATCH] BugFix: 领用 & 发放 统计

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java |   38 +++++++++++++++++++++++++++-----------
 1 files changed, 27 insertions(+), 11 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java
index f7fa9bc..10d01f0 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java
@@ -423,10 +423,19 @@
         PatientStatisticVO patientStatisticVO = new PatientStatisticVO();
         List<BedQueueStatisticDO> bedQueueStatisticDOList = queueMapper.bedQueueStatistic(roomId, bedNo);
         bedQueueStatisticDOList.forEach(item -> {
-            if (QueueStatusEnum.RECEIVED.getStatus() == item.getStatus()) {
-                patientStatisticVO.setReceivedNum(item.getTotalInStatus());
-            } else if (QueueStatusEnum.FINISH.getStatus() == item.getStatus()) {
+//            } else if (QueueStatusEnum.INSTALLING.getStatus() == item.getStatus()) {
+//                patientStatisticVO.setReceivedNum( patientStatisticVO.getReceivedNum() + item.getTotalInStatus() );
+            if (QueueStatusEnum.FINISH.getStatus() == item.getStatus()) {
                 patientStatisticVO.setFinishedNum(item.getTotalInStatus());
+            }
+        });
+
+        // 瑁呮満鐣岄潰锛氱粺璁� 璇ヨ瘖瀹� [宸查鐢╙ 鐨勬暟閲�, 鍥犱负瀹夎宸ヤ綅鐪嬩笉鍒� [宸查鐢╙ 鎮h�咃紝鎵�浠ユ棤娉曟牴鎹鏈哄伐浣嶆潵缁熻锛屽彧鑳芥寜璇婂缁熻
+        patientStatisticVO.setReceivedNum( 0 );
+        List<BedQueueStatisticDO> roomQueueStatisticDOList = queueMapper.roomQueueStatistic(roomId);
+        roomQueueStatisticDOList.forEach(item -> {
+            if (QueueStatusEnum.RECEIVED.getStatus() == item.getStatus()) {
+                patientStatisticVO.setReceivedNum( patientStatisticVO.getReceivedNum() + item.getTotalInStatus() );
             }
         });
 
@@ -435,27 +444,34 @@
 
     public PatientStatisticVO getBedDevReadyStatistic(Long roomId, String bedNo) {
         PatientStatisticVO patientStatisticVO = new PatientStatisticVO();
-        patientStatisticVO.setFinishedNum(0);
         List<BedQueueStatisticDO> bedQueueStatisticDOList = queueMapper.bedQueueStatistic(roomId, bedNo);
         bedQueueStatisticDOList.forEach(item -> {
             if (QueueStatusEnum.READY.getStatus() == item.getStatus()) {
                 patientStatisticVO.setReadyNum(item.getTotalInStatus());
             } else if (QueueStatusEnum.PASSED.getStatus() == item.getStatus()) {
                 patientStatisticVO.setPassedNum(item.getTotalInStatus());
-            } else if (QueueStatusEnum.RECEIVED.getStatus() == item.getStatus()) {
-                patientStatisticVO.setFinishedNum( item.getTotalInStatus() + patientStatisticVO.getFinishedNum() );
-            } else if (QueueStatusEnum.INSTALLING.getStatus() == item.getStatus()) {
-                patientStatisticVO.setFinishedNum( item.getTotalInStatus() + patientStatisticVO.getFinishedNum() );
-            } else if (QueueStatusEnum.FINISH.getStatus() == item.getStatus()) {
-                patientStatisticVO.setFinishedNum(item.getTotalInStatus() + patientStatisticVO.getFinishedNum());
             }
         });
 
+        // 棰嗙敤鐣岄潰锛氱粺璁� 璇ヨ瘖瀹� [宸查鐢╙ 鐨勬暟閲�, 鍥犱负瀹夎鏃舵偅鑰呭綊灞炲伐浣嶄粠棰嗙敤宸ヤ綅鍙樻洿鍒板畨瑁呭伐浣嶏紝鎵�浠ユ棤娉曟牴鎹鐢ㄥ伐浣嶆潵缁熻锛屽彧鑳芥寜璇婂缁熻
+        patientStatisticVO.setReceivedNum( 0 );
+        List<BedQueueStatisticDO> roomQueueStatisticDOList = queueMapper.roomQueueStatistic(roomId);
+        roomQueueStatisticDOList.forEach(item -> {
+            if (QueueStatusEnum.RECEIVED.getStatus() == item.getStatus()) {
+                patientStatisticVO.setReceivedNum( patientStatisticVO.getReceivedNum() + item.getTotalInStatus() );
+            } else if (QueueStatusEnum.INSTALLING.getStatus() == item.getStatus()) {
+                patientStatisticVO.setReceivedNum( patientStatisticVO.getReceivedNum() + item.getTotalInStatus() );
+            } else if (QueueStatusEnum.FINISH.getStatus() == item.getStatus()) {
+                patientStatisticVO.setReceivedNum(patientStatisticVO.getReceivedNum() + item.getTotalInStatus() );
+            }
+        });
+
+        // 缁熻 璇ュ伐浣嶇被鍨嬬殑銆愭帓闃熶腑銆戜汉鍛樻暟閲�
         RoomDO roomDO = getRoomDO(roomId, bedNo);
         Integer[] checkTypes = roomDO.getCheckTypes();
         List<Byte> statusList = new ArrayList<>();
         statusList.add(QueueStatusEnum.WAITING.getStatus());
-        Integer num = queueMapper.checkTypeAndStatusStatistic(roomId, bedNo, checkTypes, statusList);
+        Integer num = queueMapper.checkTypeAndStatusStatistic(checkTypes, statusList);
         patientStatisticVO.setQueuingNum(num);
 
         return patientStatisticVO;

--
Gitblit v1.9.3