From c663b36cebeed7b40498a4e676559b62c0d4bee6 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期一, 31 三月 2025 15:37:02 +0800
Subject: [PATCH] 预约确认、加急 都触发 抢排队中 患者
---
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java | 40 +++++++++++++++++++++++++++++++++++-----
1 files changed, 35 insertions(+), 5 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 fa7b920..50c0a46 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
@@ -324,19 +324,26 @@
// 澶勭悊 妫�鏌ラ」鐩�.浜插拰鎬� 閫昏緫
CheckTypeDO checkTypeDO = queueServiceTxFunctions.getCheckTypeItem( queueSaveReqVO.getBookCheckType() );
if ( checkTypeDO.getAffinityCheckTypes().length > 0) {
- procAffinityWhenQueue(queueSaveReqVO, checkTypeDO.getAffinityCheckTypes());
+ procAffinityWhenQueue(/*IN,OUT*/queueSaveReqVO, checkTypeDO.getAffinityCheckTypes());
}
QueueDO queue = BeanUtils.toBean(queueSaveReqVO, QueueDO.class);
queueMapper.insert(queue);
DevRentDO devRent = BeanUtils.toBean(queueSaveReqVO, DevRentDO.class);
+ devRent.setApplyNo( queueSaveReqVO.getApplyNo() );
+ devRent.setEpisodeId( queueSaveReqVO.getEpisodeId() );
devRent.setState( DevRentStateEnum.FREE.getState() );
devRent.setPatDetails( queueSaveReqVO.getPatDetails() );
devRent.setCheckType( queueSaveReqVO.getBookCheckType() );
devRentMapper.insert(devRent);
startHurryUpOneCheckType( queue.getBookCheckType() );
+ }
+
+ @Override
+ public List<QueueDO> selectBookSeqNumByAppointIdList(List<Long> appointIdList) {
+ return queueMapper.selectBookSeqNumByAppointIdList( appointIdList );
}
// 甯歌妫�鏌� 鍙彿
@@ -380,6 +387,13 @@
return;
startNextInstallPatient(roomId, bedNo);
+ }
+
+ @Override
+ public void passWaitingPatient(String patId, Integer bookCheckType) {
+ // 浠� DB 鎶� 鎺掗槦涓殑浜� 璁剧疆涓� 杩囧彿-鎺掗槦涓�
+ Integer ret = queueMapper.updatePatientQueueStatus(patId, bookCheckType,
+ QueueStatusEnum.WAITING.getStatus(), QueueStatusEnum.PASSED_WAITING.getStatus());
}
public void passNextPatient(Long roomId, String bedNo) {
@@ -456,6 +470,15 @@
});
return patientStatisticVO;
+ }
+
+ @Override
+ public Integer recallPassWaitingPatient(String patId, Integer bookCheckType) {
+ // 浠� DB 鎶� 杩囧彿-鎺掗槦涓殑浜� 璁剧疆涓� 鎺掗槦涓�
+ Integer ret = queueMapper.updatePatientQueueStatus(patId, bookCheckType,
+ QueueStatusEnum.PASSED_WAITING.getStatus(), QueueStatusEnum.WAITING.getStatus());
+
+ return ret;
}
public PatientStatisticVO getBedDevReadyStatistic(Long roomId, String bedNo) {
@@ -540,17 +563,23 @@
return updateNum;
}
+ /**
+ * 鍔犳��
+ * @param patId
+ * @param jumped
+ * @return
+ */
@Override
- public Integer patientJump(String patId, Byte jumped) {
- Integer updateNum = queueMapper.queueJump(patId, QueueStatusEnum.WAITING.getStatus(), jumped);
+ public Integer patientJump(String patId, Integer bookCheckType, Byte jumped) {
+ Integer updateNum = queueMapper.queueJump(patId, bookCheckType, QueueStatusEnum.WAITING.getStatus(), jumped);
- QueueDO queueDO = queueMapper.getQueueByPatId(patId);
+ QueueDO queueDO = queueMapper.getQueueByPatId(patId, bookCheckType);
startHurryUpOneCheckType(Integer.valueOf(queueDO.getBookCheckType()));
return updateNum;
}
@Override
- public RoomDO getDocRoomInfo(Long docId) {
+ public List<RoomDO> getDocRoomInfo(Long docId) {
return roomMapper.getRoomByDocId(docId);
}
@@ -655,6 +684,7 @@
if (!affinityItems.isEmpty()) {
QueueDO queueItem = affinityItems.get(0);
queueSaveReqVO.setStatus(QueueStatusEnum.AFFINITY_WAITING.getStatus()); // [浜插拰-鎺掗槦] 鐘舵��
+ queueSaveReqVO.setAffinityItem( 1 );
queueSaveReqVO.setRoomId(queueItem.getRoomId());
queueSaveReqVO.setRoomName(queueItem.getRoomName());
queueSaveReqVO.setBedNo(queueItem.getBedNo());
--
Gitblit v1.9.3