From 3f3ec086fc73102dd2473fd2e197c3c9a16d4231 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期四, 14 十一月 2024 10:12:55 +0800
Subject: [PATCH] refactor
---
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/queue/QueueServiceImpl.java | 26 ++++++-------
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java | 39 ++++++++++++++-----
2 files changed, 40 insertions(+), 25 deletions(-)
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
index 7592e6b..3bcf171 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/queue/QueueMapper.java
@@ -67,27 +67,44 @@
@Select("<script>" +
"SELECT * FROM lihu.queue " +
- "where pat_id = #{patId} and book_check_type in (" +
- " <foreach collection='arrCheckType' separator=',' item='checkType'>" +
- " #{checkType} " +
- " </foreach> )" +
- " and TO_DAYS(book_date) = TO_DAYS(NOW()) " +
+ "where pat_id = #{patId} " +
+ " and book_check_type in (" +
+ " <foreach collection='arrCheckType' separator=',' item='checkType'>" +
+ " #{checkType} " +
+ " </foreach> )" +
+ " and TO_DAYS(book_date) = TO_DAYS(NOW()) " +
"</script>")
List<QueueDO> getCurPatGivenCheckTypes(@Param("patId")String patId, @Param("arrCheckType")Integer[] arrCheckType);
@Select("<script>" +
"SELECT * FROM lihu.queue " +
- "where pat_id = #{patId} and book_check_type in (" +
- " <foreach collection='arrCheckType' separator=',' item='checkType'>" +
- " #{checkType} " +
- " </foreach> ) " +
- " and status = #{status} " +
- " and TO_DAYS(book_date) = TO_DAYS(NOW()) " +
+ "where pat_id = #{patId} " +
+ " and book_check_type in (" +
+ " <foreach collection='arrCheckType' separator=',' item='_checkType'>" +
+ " #{_checkType} " +
+ " </foreach> ) " +
+ " and status = #{status} " +
+ " and TO_DAYS(book_date) = TO_DAYS(NOW()) " +
"</script>")
List<QueueDO> getCurPatGivenCheckTypesAndStatus(@Param("patId")String patId, @Param("arrCheckType")Integer[] arrCheckType, @Param("status")Integer status);
@Select("<script>" +
"SELECT * FROM lihu.queue " +
+ "where pat_id = #{patId} " +
+ " and book_check_type in (" +
+ " <foreach collection='arrCheckType' separator=',' item='_checkType'>" +
+ " #{_checkType} " +
+ " </foreach> ) " +
+ " and status in (" +
+ " <foreach collection='statusList' separator=',' item='_status'>" +
+ " #{_status} " +
+ " </foreach> ) " +
+ " and TO_DAYS(book_date) = TO_DAYS(NOW()) " +
+ "</script>")
+ List<QueueDO> getCurPatGivenCheckTypesAndStatusList(@Param("patId")String patId, @Param("arrCheckType")Integer[] arrCheckType, @Param("statusList")List<Integer> statusList);
+
+ @Select("<script>" +
+ "SELECT * FROM lihu.queue " +
"where id >= #{from} and status in (" +
" <foreach collection='statusList' separator=',' item='status'>" +
" #{status} " +
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 10ca305..19825ba 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
@@ -318,24 +318,22 @@
@Override
@Transactional
public void queue(QueueSaveReqVO queueSaveReqVO) {
- queueSaveReqVO.setStatus(QueueStatusEnum.WAITING.getStatus()); //榛樿鐘舵��: 鎺掗槦涓�
+ // 榛樿浠� [鎺掗槦涓璢 鐘舵�� 杩涘叆 queue 琛�
+ queueSaveReqVO.setStatus(QueueStatusEnum.WAITING.getStatus());
// 澶勭悊 妫�鏌ラ」鐩�.浜插拰鎬� 閫昏緫
+ // 濡傛灉瀛樺湪 澶勪簬 [灏辫瘖鍑嗗涓璢 | [灏辫瘖涓璢 鐨勪翰鍜岄」锛屽垯璺熼殢鍏朵腑涓�涓翰鍜岄」
CheckTypeDO checkTypeDO = queueServiceTxFunctions.getCheckTypeItem( queueSaveReqVO.getBookCheckType() );
if ( checkTypeDO.getAffinityCheckTypes().length > 0) {
- List<QueueDO> affinityItems = queueMapper.getCurPatGivenCheckTypes(queueSaveReqVO.getPatId(), checkTypeDO.getAffinityCheckTypes());
-
- for (int i=0; i < affinityItems.size(); i++) {
- QueueDO queueItem = affinityItems.get(i);
- if (QueueStatusEnum.READY.getStatus() == queueItem.getStatus()
- || QueueStatusEnum.ONSTAGE.getStatus() == queueItem.getStatus()) {
- queueSaveReqVO.setStatus(QueueStatusEnum.AFFINITY_WAITING.getStatus()); //鏀瑰彉 鎺掗槦鐘舵��
- queueSaveReqVO.setRoomId(queueItem.getRoomId());
- queueSaveReqVO.setRoomName(queueItem.getRoomName());
- queueSaveReqVO.setBedNo(queueItem.getBedNo());
- queueSaveReqVO.setSeqNum(queueItem.getSeqNum());
- break;
- }
+ List<QueueDO> affinityItems = queueMapper.getCurPatGivenCheckTypesAndStatusList( queueSaveReqVO.getPatId(), checkTypeDO.getAffinityCheckTypes(),
+ List.of(QueueStatusEnum.READY.getStatus(), QueueStatusEnum.ONSTAGE.getStatus()));
+ if (!affinityItems.isEmpty()) {
+ QueueDO queueItem = affinityItems.get(0);
+ queueSaveReqVO.setStatus(QueueStatusEnum.AFFINITY_WAITING.getStatus()); // [浜插拰-鎺掗槦] 鐘舵��
+ queueSaveReqVO.setRoomId(queueItem.getRoomId());
+ queueSaveReqVO.setRoomName(queueItem.getRoomName());
+ queueSaveReqVO.setBedNo(queueItem.getBedNo());
+ queueSaveReqVO.setSeqNum(queueItem.getSeqNum());
}
}
--
Gitblit v1.9.3