From fce96ef468291fb9a0e6a4d34ab371315e9485d4 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期六, 03 十月 2026 00:59:44 +0800
Subject: [PATCH] ai优化
---
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/enums/ActionTypeEnum.java | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 107 insertions(+), 9 deletions(-)
diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/enums/ActionTypeEnum.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/enums/ActionTypeEnum.java
index 2d9f849..5943f62 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/enums/ActionTypeEnum.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/enums/ActionTypeEnum.java
@@ -3,19 +3,55 @@
import lombok.AllArgsConstructor;
import lombok.Getter;
+import java.util.Arrays;
+import java.util.List;
+
/**
- * Action绫诲瀷鏋氫妇
+ * HIS 鎶ユ枃 header 涓� action 鐨勫彇鍊兼灇涓俱��
+ *
+ * <h3>鍏充簬 PACS / ECG 鐨� action 鍖哄垎</h3>
+ * 闄㈡柟銆婁氦浜掓湇鍔¢�氱敤鎺ュ彛鏂囨。銆嬩腑锛屽悓涓�鏈嶅姟鍦ㄤ笉鍚岀郴缁熶笅浣跨敤**涓嶅悓鐨勪氦鏄撶紪鍙�**锛�
+ * <pre>
+ * 6.4 妫�鏌ラ绾︾姸鎬佹柊澧烇細S050401锛坧acs锛� / S050402锛圗CG锛�
+ * 6.5 妫�鏌ラ绾︾姸鎬佹洿鏂帮細S050501锛坧acs锛� / S050502锛圗CG锛�
+ * </pre>
+ *
+ * <p><b>瀹炴祴缁撹锛�2026-09-17 鏃ュ織锛屽叡 1753 鏉¤姹傦級</b>锛氬疄闄呭埌杈剧殑 action 鍙湁
+ * {@code S0405}銆亄@code S050401}銆亄@code S0201ECG}銆亄@code S0202ECG}銆�
+ * {@code S050501}銆亄@code S040501HIS} 鍏锛屽叾涓�
+ * <b>{@code S050402} 涓� {@code S050502} 鍑虹幇 0 娆�</b>銆�
+ * 鍗抽櫌鏂瑰綋鍓嶈蛋鐨勬槸 pacs 缂栧彿锛孍CG 涓撳睘缂栧彿灏氭湭鍚敤銆�
+ *
+ * <p>涓轰簡鍦ㄩ櫌鏂瑰垏鎹㈢紪鍙锋椂涓嶄涪娑堟伅锛岃繖閲�**鍚屾椂娉ㄥ唽涓ょ缂栧彿**锛堜富鍔ㄥ吋瀹癸級锛�
+ * 骞堕澶栧吋瀹圭敵璇峰崟鏂板/鏇存柊鐨勬棤鍚庣紑鍐欐硶 {@code S0201} / {@code S0202}
+ * 锛堟枃妗e彧瀹氫箟浜嗘棤鍚庣紑褰㈠紡锛岃�屽疄娴嬫姤鏂囧甫 {@code ECG} 鍚庣紑锛夈��
+ *
+ * @author 蹇冪數鎺掗槦瑁呮満绯荤粺
*/
@Getter
@AllArgsConstructor
public enum ActionTypeEnum {
+ // ---------- 6.1 鐢宠鍗曟柊澧烇紙鏂囨。涓� S0201锛屽疄娴嬫姤鏂囦负 S0201ECG锛屼袱绉嶉兘鍏煎锛� ----------
S0201ECG("S0201ECG", "鐢宠鍗曞垱寤�"),
- S0202ECG("S0202ECG", "鐢宠鍗曟洿鏂�"),
- S040501HIS("S040501HIS", "棰勭害鏇存柊"),
- S050401("S050401", "妫�鏌ラ绾︾姸鎬佹柊澧�"),
- S050501("S050501", "妫�鏌ラ绾︾姸鎬佷慨鏀�");
+ S0201("S0201", "鐢宠鍗曞垱寤�"),
+ // ---------- 6.2 鐢宠鍗曟洿鏂帮紙鏂囨。涓� S0202锛屽疄娴嬫姤鏂囦负 S0202ECG锛� ----------
+ S0202ECG("S0202ECG", "鐢宠鍗曟洿鏂�"),
+ S0202("S0202", "鐢宠鍗曟洿鏂�"),
+
+ // ---------- 6.3 鐢宠鍗曠姸鎬佹洿鏂帮紙鍏ㄩ櫌閫氱敤锛屼笉鍖哄垎绉戝锛� ----------
+ S040501HIS("S040501HIS", "棰勭害鏇存柊"),
+ S0405HIS("S0405HIS", "鐢宠鍗曠姸鎬佹洿鏂�"),
+ S0405("S0405", "鐢宠鍗曠櫥璁扮姸鎬佹洿鏂�"),
+
+ // ---------- 6.4 妫�鏌ラ绾︾姸鎬佹柊澧烇紙pacs / ECG 涓ょ缂栧彿閮芥帴鏀讹級 ----------
+ S050401("S050401", "妫�鏌ラ绾︾姸鎬佹柊澧�"), // pacs
+ S050402("S050402", "妫�鏌ラ绾︾姸鎬佹柊澧�"), // ECG锛堟枃妗e畾涔夛紝褰撳墠鏈惎鐢紝涓诲姩鍏煎锛�
+
+ // ---------- 6.5 妫�鏌ラ绾︾姸鎬佹洿鏂帮紙pacs / ECG 涓ょ缂栧彿閮芥帴鏀讹級 ----------
+ S050501("S050501", "妫�鏌ラ绾︾姸鎬佷慨鏀�"), // pacs
+ S050502("S050502", "妫�鏌ラ绾︾姸鎬佷慨鏀�"); // ECG锛堟枃妗e畾涔夛紝褰撳墠鏈惎鐢紝涓诲姩鍏煎锛�
/**
* 绫诲瀷
@@ -27,17 +63,79 @@
private final String description;
/**
- * 鏍规嵁绫诲瀷鑾峰彇鏋氫妇
+ * 鏍规嵁绫诲瀷鑾峰彇鏋氫妇銆�
+ * <p>
+ * 鍏煎澶勭悊锛氬叆鍙傚厛鍘婚櫎棣栧熬绌虹櫧锛涜嫢鏈懡涓紝鍐嶅皾璇曞拷鐣ュぇ灏忓啓鍖归厤锛�
+ * 閬垮厤鍥� HIS 渚уぇ灏忓啓涓嶄竴鑷达紙濡� {@code s0201ecg}锛夊鑷存暣鏉℃秷鎭鎷掋��
*
- * @param type 绫诲瀷
- * @return 鏋氫妇
+ * @param type action 鍊�
+ * @return 鏋氫妇锛涙棤娉曡瘑鍒椂杩斿洖 null
*/
public static ActionTypeEnum getByType(String type) {
+ if (type == null) {
+ return null;
+ }
+ String trimmed = type.trim();
+ if (trimmed.isEmpty()) {
+ return null;
+ }
+ // 1. 绮剧‘鍖归厤
for (ActionTypeEnum value : values()) {
- if (value.getType().equals(type)) {
+ if (value.type.equals(trimmed)) {
+ return value;
+ }
+ }
+ // 2. 蹇界暐澶у皬鍐欏厹搴�
+ for (ActionTypeEnum value : values()) {
+ if (value.type.equalsIgnoreCase(trimmed)) {
return value;
}
}
return null;
}
+
+ /** 鐢宠鍗曟柊澧炵被 action锛堝惈鏃犲悗缂�鍏煎鍐欐硶锛� */
+ public static final List<ActionTypeEnum> APPLY_CREATE_ACTIONS =
+ Arrays.asList(S0201ECG, S0201);
+
+ /** 鐢宠鍗曟洿鏂扮被 action锛堝惈鏃犲悗缂�鍏煎鍐欐硶锛� */
+ public static final List<ActionTypeEnum> APPLY_UPDATE_ACTIONS =
+ Arrays.asList(S0202ECG, S0202);
+
+ /** 鐢宠鍗曠姸鎬佹洿鏂扮被 action锛堝叏闄㈤�氱敤锛� */
+ public static final List<ActionTypeEnum> APPLY_STATUS_ACTIONS =
+ Arrays.asList(S040501HIS, S0405HIS, S0405);
+
+ /** 妫�鏌ラ绾︾姸鎬佹柊澧炵被 action锛坧acs + ECG锛� */
+ public static final List<ActionTypeEnum> APPOINTMENT_STATUS_CREATE_ACTIONS =
+ Arrays.asList(S050401, S050402);
+
+ /** 妫�鏌ラ绾︾姸鎬佹洿鏂扮被 action锛坧acs + ECG锛� */
+ public static final List<ActionTypeEnum> APPOINTMENT_STATUS_UPDATE_ACTIONS =
+ Arrays.asList(S050501, S050502);
+
+ /** 鏄惁涓虹敵璇峰崟鏂板 */
+ public boolean isApplyCreate() {
+ return APPLY_CREATE_ACTIONS.contains(this);
+ }
+
+ /** 鏄惁涓虹敵璇峰崟鏇存柊 */
+ public boolean isApplyUpdate() {
+ return APPLY_UPDATE_ACTIONS.contains(this);
+ }
+
+ /** 鏄惁涓虹敵璇峰崟鐘舵�佹洿鏂帮紙鍏ㄩ櫌閫氱敤娴侊紝闇�瑕佹寜蹇冪數涓氬姟杩囨护锛� */
+ public boolean isApplyStatusUpdate() {
+ return APPLY_STATUS_ACTIONS.contains(this);
+ }
+
+ /** 鏄惁涓烘鏌ラ绾︾姸鎬佹柊澧� */
+ public boolean isAppointmentStatusCreate() {
+ return APPOINTMENT_STATUS_CREATE_ACTIONS.contains(this);
+ }
+
+ /** 鏄惁涓烘鏌ラ绾︾姸鎬佹洿鏂� */
+ public boolean isAppointmentStatusUpdate() {
+ return APPOINTMENT_STATUS_UPDATE_ACTIONS.contains(this);
+ }
}
--
Gitblit v1.9.3