From f88d5d4b3e26fd41a0df52506515372b9af2b118 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期一, 11 十一月 2024 17:39:47 +0800
Subject: [PATCH] 常规检查 - 处理检查项目.亲和性

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java
index 278c4cc..9342922 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java
@@ -123,8 +123,25 @@
         }
 
         // 鏇存柊..闃熷垪鐘舵��
-        queueMapper.updateBedQueueStatus(createReqVO.getRoomId(), createReqVO.getBedNo(),
-                QueueStatusEnum.ONSTAGE.getStatus(), QueueStatusEnum.FINISH.getStatus());
+        //queueMapper.updateBedQueueStatus(createReqVO.getRoomId(), createReqVO.getBedNo(),
+        //        QueueStatusEnum.ONSTAGE.getStatus(), QueueStatusEnum.FINISH.getStatus());
+
+        QueueDO firstOnStageQueueItem = queueMapper.getFirstItemByBedAndStatus(createReqVO.getRoomId(),
+                                            createReqVO.getBedNo(), QueueStatusEnum.ONSTAGE.getStatus());
+        // QueueStatusEnum.ONSTAGE  =>  QueueStatusEnum.FINISH
+        firstOnStageQueueItem.setStatus(QueueStatusEnum.FINISH.getStatus());  // 榛樿鐘舵�� 璁剧疆
+        queueMapper.updateById( firstOnStageQueueItem );
+
+        // 妫�鏌ラ」鐩�.浜插拰鎬� 澶勭悊閫昏緫
+        CheckTypeDO checkTypeDO = queueServiceTxFunctions.getCheckTypeItem( firstOnStageQueueItem.getBookCheckType() );
+        if (checkTypeDO.getAffinityCheckTypes().length > 0) {
+            List<QueueDO> affinityAffinityWaitingItems = queueMapper.getCurPatGivenCheckTypesAndStatus(firstOnStageQueueItem.getPatId(), checkTypeDO.getAffinityCheckTypes(), QueueStatusEnum.AFFINITY_WAITING.getStatus());
+            if (!affinityAffinityWaitingItems.isEmpty()) {
+                QueueDO tmpQueueDO = affinityAffinityWaitingItems.get(0);
+                tmpQueueDO.setStatus(QueueStatusEnum.ONSTAGE.getStatus());
+                queueMapper.updateById(tmpQueueDO);
+            }
+        }
 
         return CommonResult.success(rent_id);
     }

--
Gitblit v1.9.3