refactor(ops): 扩展 LogType 枚举,补全工单生命周期与 IoT 审计事件类型
新增 ORDER_CREATED/CONFIRM/ARRIVED/COMPLETED 等工单生命周期枚举、 BEACON_ARRIVE_CONFIRMED/BEACON_COMPLETE_REQUESTED 等 IoT 审计枚举, 添加 getByCode() 反查方法支持中文 title 映射。 同步新增 LogModule 常量类收口模块标识。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package com.viewsh.module.ops.infrastructure.log.enumeration;
|
||||
|
||||
/**
|
||||
* 日志模块常量
|
||||
* <p>
|
||||
* 用于 {@link com.viewsh.module.ops.infrastructure.log.recorder.EventLogRecord} 的 module 字段,
|
||||
* 避免各业务线硬编码字符串。
|
||||
*
|
||||
* @author lzh
|
||||
*/
|
||||
public final class LogModule {
|
||||
|
||||
/** 保洁 */
|
||||
public static final String CLEAN = "clean";
|
||||
|
||||
/** 安保 */
|
||||
public static final String SECURITY = "security";
|
||||
|
||||
/** 工程 @since 2026-03-11 预留 */
|
||||
public static final String FACILITIES = "facilities";
|
||||
|
||||
/** 客服 @since 2026-03-11 预留 */
|
||||
public static final String SERVICE = "service";
|
||||
|
||||
/**
|
||||
* 根据工单类型(orderType)返回对应的日志模块标识。
|
||||
* 未知类型降级返回 orderType 小写。
|
||||
*
|
||||
* @param orderType 工单类型,如 "CLEAN"、"SECURITY"
|
||||
* @return 日志模块标识
|
||||
*/
|
||||
public static String fromOrderType(String orderType) {
|
||||
if (orderType == null) {
|
||||
return CLEAN;
|
||||
}
|
||||
return switch (orderType) {
|
||||
case "CLEAN" -> CLEAN;
|
||||
case "SECURITY" -> SECURITY;
|
||||
case "REPAIR" -> FACILITIES;
|
||||
case "SERVICE" -> SERVICE;
|
||||
default -> orderType.toLowerCase();
|
||||
};
|
||||
}
|
||||
|
||||
private LogModule() {}
|
||||
}
|
||||
@@ -1,5 +1,8 @@
|
||||
package com.viewsh.module.ops.infrastructure.log.enumeration;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 日志类型枚举
|
||||
*
|
||||
@@ -7,45 +10,51 @@ package com.viewsh.module.ops.infrastructure.log.enumeration;
|
||||
*/
|
||||
public enum LogType {
|
||||
|
||||
/**
|
||||
* 派单日志
|
||||
*/
|
||||
DISPATCH("ORDER_DISPATCHED", "派单"),
|
||||
// ========== 注解体系(@BusinessLog)使用 ==========
|
||||
|
||||
/**
|
||||
* 状态转换日志
|
||||
*/
|
||||
TRANSITION("ORDER_STATUS_CHANGED", "状态转换"),
|
||||
/** 派单 */
|
||||
ORDER_DISPATCHED("ORDER_DISPATCHED", "派单"),
|
||||
/** 系统事件(注解默认值) */
|
||||
SYSTEM_EVENT("SYSTEM_EVENT", "系统"),
|
||||
|
||||
/**
|
||||
* 生命周期日志
|
||||
*/
|
||||
LIFECYCLE("ORDER_LIFECYCLE", "生命周期"),
|
||||
// ========== 工单生命周期 ==========
|
||||
|
||||
/**
|
||||
* 队列日志
|
||||
*/
|
||||
QUEUE("ORDER_QUEUE_CHANGED", "队列"),
|
||||
ORDER_CREATED("ORDER_CREATED", "工单创建"),
|
||||
ORDER_CONFIRM("ORDER_CONFIRM", "工单确认"),
|
||||
ORDER_ARRIVED("ORDER_ARRIVED", "到岗确认"),
|
||||
ORDER_COMPLETED("ORDER_COMPLETED", "工单完成"),
|
||||
ORDER_INTERRUPTED("ORDER_INTERRUPTED", "工单打断"),
|
||||
ORDER_CANCELLED("ORDER_CANCELLED", "工单取消"),
|
||||
ORDER_PAUSED("ORDER_PAUSED", "工单暂停"),
|
||||
ORDER_RESUMED("ORDER_RESUMED", "工单恢复"),
|
||||
|
||||
/**
|
||||
* 保洁员日志
|
||||
*/
|
||||
CLEANER("CLEANER_ACTION", "保洁员"),
|
||||
// ========== 语音播报 ==========
|
||||
|
||||
/**
|
||||
* 设备日志
|
||||
*/
|
||||
DEVICE("DEVICE_ACTION", "设备"),
|
||||
TTS_SENT("TTS_SENT", "语音播报"),
|
||||
TTS_FAILED("TTS_FAILED", "播报失败"),
|
||||
|
||||
/**
|
||||
* 通知日志
|
||||
*/
|
||||
NOTIFICATION("NOTIFICATION_SENT", "通知"),
|
||||
// ========== 优先级 & 静默 ==========
|
||||
|
||||
/**
|
||||
* 系统日志
|
||||
*/
|
||||
SYSTEM("SYSTEM_EVENT", "系统");
|
||||
PRIORITY_UPGRADE("PRIORITY_UPGRADE", "优先级升级"),
|
||||
PRIORITY_CEILING("PRIORITY_CEILING", "优先级封顶"),
|
||||
ARRIVED_SILENT_IGNORE("ARRIVED_SILENT_IGNORE", "静默忽略"),
|
||||
|
||||
// ========== IoT 审计事件(来自 ops-order-audit MQ) ==========
|
||||
|
||||
BEACON_ARRIVE_CONFIRMED("BEACON_ARRIVE_CONFIRMED", "信标到岗确认"),
|
||||
BEACON_LEAVE_WARNING_SENT("BEACON_LEAVE_WARNING_SENT", "离开区域警告"),
|
||||
COMPLETE_SUPPRESSED_INVALID("COMPLETE_SUPPRESSED_INVALID", "作业时长不足抑制"),
|
||||
BEACON_COMPLETE_REQUESTED("BEACON_COMPLETE_REQUESTED", "信号丢失自动完成请求"),
|
||||
TTS_REQUEST("TTS_REQUEST", "语音播报请求"),
|
||||
ARRIVE_REJECTED("ARRIVE_REJECTED", "到岗请求被拒绝");
|
||||
|
||||
private static final Map<String, LogType> CODE_MAP = new HashMap<>();
|
||||
|
||||
static {
|
||||
for (LogType type : values()) {
|
||||
CODE_MAP.put(type.code, type);
|
||||
}
|
||||
}
|
||||
|
||||
private final String code;
|
||||
private final String description;
|
||||
@@ -62,4 +71,11 @@ public enum LogType {
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据 code 反查枚举,找不到返回 null
|
||||
*/
|
||||
public static LogType getByCode(String code) {
|
||||
return CODE_MAP.get(code);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user