39 lines
1.3 KiB
Markdown
39 lines
1.3 KiB
Markdown
# 问题入口
|
|
|
|
com.cmcc.cdn.platform.selfservice.controller.AdaptConfigChangeWorkController#submitWorkOrder
|
|
|
|
## 状态机生成
|
|
|
|
com.cmcc.cdn.platform.selfservice.service.impl.AdaptWorkOrderServiceImpl#createOrder
|
|
|
|
获取状态机
|
|
|
|
```java
|
|
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 后进行统一优化。
|