feat(分诊队列): 实现分诊队列核心功能与日志记录

新增分诊队列相关服务接口与实现,包括队列管理、叫号操作和日志记录
添加DivLogService和CallRecordService用于记录分诊操作和叫号历史
在CurrentDayEncounterDto和TriageQueueItem中增加seqNo字段用于显示预约序号
实现分诊操作日志记录功能,包括添加队列、移除队列、叫号、完成等操作
新增CallType枚举定义叫号类型,并实现叫号记录功能
优化队列状态映射逻辑,支持更多状态类型显示
This commit is contained in:
wangjian963
2026-04-30 16:02:52 +08:00
parent 81daaccdda
commit 4a01825a30
8 changed files with 139 additions and 75 deletions

View File

@@ -0,0 +1,35 @@
package com.openhis.common.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 智能分诊队列状态
*/
@Getter
@AllArgsConstructor
public enum TriageQueueStatus implements HisEnumInterface {
WAITING(0, "waiting", "等待"),
CALLING(10, "calling", "叫号中"),
IN_CLINIC(20, "in-clinic", "就诊中"),
COMPLETED(30, "completed", "完成"),
SKIPPED(40, "skipped", "跳过");
@EnumValue
private final Integer value;
private final String code;
private final String info;
public static TriageQueueStatus getByValue(Integer value) {
if (value == null) {
return null;
}
for (TriageQueueStatus val : values()) {
if (val.getValue().equals(value)) {
return val;
}
}
return null;
}
}