fix(ops): 修复直接派单场景事件发布问题并统一日志规范
1. 修复 QueueSyncHandler 在直接派单场景下提前返回的问题 2. 修复 EventPublishHandler 日志级别便于排查 3. 统一 LogType.eventType 为大写下划线格式 Co-Authored-By: Claude (MiniMax-M2.1) <noreply@anthropic.com>
This commit is contained in:
@@ -146,7 +146,7 @@ public class OrderLifecycleManagerImpl implements OrderLifecycleManager {
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public OrderTransitionResult dispatch(OrderTransitionRequest request) {
|
public OrderTransitionResult dispatch(OrderTransitionRequest request) {
|
||||||
log.info("工单派发: orderId={}, queueId={}", request.getOrderId(), request.getQueueId());
|
log.info("工单派发: orderId={}, queueId={}, assigneeId={}", request.getOrderId(), request.getQueueId(), request.getAssigneeId());
|
||||||
|
|
||||||
// 设置目标状态
|
// 设置目标状态
|
||||||
request.setTargetStatus(WorkOrderStatusEnum.DISPATCHED);
|
request.setTargetStatus(WorkOrderStatusEnum.DISPATCHED);
|
||||||
|
|||||||
@@ -30,7 +30,8 @@ public class EventPublishHandler extends TransitionHandler {
|
|||||||
WorkOrderStatusEnum targetStatus = request.getTargetStatus();
|
WorkOrderStatusEnum targetStatus = request.getTargetStatus();
|
||||||
WorkOrderStatusEnum oldStatus = context.getOldStatus();
|
WorkOrderStatusEnum oldStatus = context.getOldStatus();
|
||||||
|
|
||||||
log.debug("事件发布处理器: orderId={}, {} -> {}", context.getOrder().getId(), oldStatus, targetStatus);
|
log.info("事件发布处理器: orderId={}, {} -> {}, assigneeId={}",
|
||||||
|
context.getOrder().getId(), oldStatus, targetStatus, request.getAssigneeId());
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// 构建事件 payload(包含 assigneeId)
|
// 构建事件 payload(包含 assigneeId)
|
||||||
|
|||||||
@@ -103,7 +103,8 @@ public class QueueSyncHandler extends TransitionHandler {
|
|||||||
Long queueId = request.getQueueId();
|
Long queueId = request.getQueueId();
|
||||||
|
|
||||||
if (queueId == null) {
|
if (queueId == null) {
|
||||||
log.warn("派发时缺少队列ID: orderId={}", context.getOrder().getId());
|
// 直接派单场景(无队列记录),跳过队列同步,继续执行后续处理器
|
||||||
|
log.debug("直接派单无队列记录,跳过队列同步: orderId={}", context.getOrder().getId());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,42 +10,42 @@ public enum LogType {
|
|||||||
/**
|
/**
|
||||||
* 派单日志
|
* 派单日志
|
||||||
*/
|
*/
|
||||||
DISPATCH("dispatch", "派单"),
|
DISPATCH("ORDER_DISPATCHED", "派单"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 状态转换日志
|
* 状态转换日志
|
||||||
*/
|
*/
|
||||||
TRANSITION("transition", "状态转换"),
|
TRANSITION("ORDER_STATUS_CHANGED", "状态转换"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生命周期日志
|
* 生命周期日志
|
||||||
*/
|
*/
|
||||||
LIFECYCLE("lifecycle", "生命周期"),
|
LIFECYCLE("ORDER_LIFECYCLE", "生命周期"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 队列日志
|
* 队列日志
|
||||||
*/
|
*/
|
||||||
QUEUE("queue", "队列"),
|
QUEUE("ORDER_QUEUE_CHANGED", "队列"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保洁员<EFBFBD><EFBFBD>志
|
* 保洁员日志
|
||||||
*/
|
*/
|
||||||
CLEANER("cleaner", "保洁员"),
|
CLEANER("CLEANER_ACTION", "保洁员"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设备日志
|
* 设备日志
|
||||||
*/
|
*/
|
||||||
DEVICE("device", "设备"),
|
DEVICE("DEVICE_ACTION", "设备"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通知日志
|
* 通知日志
|
||||||
*/
|
*/
|
||||||
NOTIFICATION("notification", "通知"),
|
NOTIFICATION("NOTIFICATION_SENT", "通知"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统日志
|
* 系统日志
|
||||||
*/
|
*/
|
||||||
SYSTEM("system", "系统");
|
SYSTEM("SYSTEM_EVENT", "系统");
|
||||||
|
|
||||||
private final String code;
|
private final String code;
|
||||||
private final String description;
|
private final String description;
|
||||||
|
|||||||
Reference in New Issue
Block a user