Files
notes/work/移动杭研/问题处理/2023-03/0302-需求变更工单邮件异常提醒.md
T
2026-03-01 01:43:46 +08:00

1.3 KiB

问题入口

com.cmcc.cdn.platform.selfservice.controller.AdaptConfigChangeWorkController#submitWorkOrder

状态机生成

com.cmcc.cdn.platform.selfservice.service.impl.AdaptWorkOrderServiceImpl#createOrder

获取状态机

WorkOrderStateMachine<ConfigChangeWorkOrderPO, ConfigChangeOrderEventEnum, ConfigChangeOrderStateEnum> machine =
GeneralMachineBuilder.createByMachineId(MachineName.ADAPT_CONFIG_CHANGE, order.getMachineId());

状态机启动

com.cmcc.cdn.platform.selfservice.statemachine.AbstractWorkOrderMachineRunConfig#handleOrderEvent

状态机事件组合 MAP

com.cmcc.cdn.platform.selfservice.statemachine.ConfigChangeMachineAdapter

此问题对应可触发事件

array[2] = new State(ConfigChangeOrderStateEnum.ESOP_CM_ZQ_PRV_CREATED, ConfigChangeOrderEventEnum.esop_prv_create, null);

监听位置获取下一审批人和通知人

com.cmcc.cdn.platform.selfservice.statemachine.ConfigChangeOrderHandler#esopGrpCreate

触发邮件位置

com.cmcc.cdn.platform.selfservice.statemachine.ConfigChangeOrderHandler#transitionEnd

问题总结

此问题的关键在于需求变更工单的下发 bpm 后保留了状态机的状态变化流程。当状态机状态发生变化的时候,会按照原流程进行邮件通知操作。6.7.0 版本全部下发 bpm 后进行统一优化。