|
|
|
@ -61,6 +61,7 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
private static final String ACTION_OPEN_DEFECT = "OPEN_DEFECT"; |
|
|
|
private static final String ACTION_OPEN_DOWNTIME = "OPEN_DOWNTIME"; |
|
|
|
private static final String ACTION_LOCK_PAGE = "LOCK_PAGE"; |
|
|
|
private static final String FUNCTION_NAME_ABNORMAL_ROLL_CUT = "异常截卷"; |
|
|
|
private static final String TODO_MSG_TRANS_TYPE = "ExM"; |
|
|
|
private static final String TODO_MSG_TRANS_TYPE_FALLBACK = "ExR"; |
|
|
|
private static final String TODO_MSG_SOURCE_PREFIX = "过站采集-创建分卷"; |
|
|
|
@ -3881,7 +3882,7 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
if ("异常代码".equals(triggerEvent)) { |
|
|
|
resultMap.put("action", ACTION_OPEN_DEFECT); |
|
|
|
resultMap.put("lockPage", "N"); |
|
|
|
resultMap.put("message", "触发异常规则,请先执行【报告不良】。"); |
|
|
|
resultMap.put("message", "触发提示规则,本次操作完成后将打开【报告不良】。"); |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
@ -3893,7 +3894,7 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
} else { |
|
|
|
resultMap.put("action", ACTION_OPEN_DOWNTIME); |
|
|
|
resultMap.put("lockPage", "N"); |
|
|
|
resultMap.put("message", "触发异常规则,请先执行【异常停机】。"); |
|
|
|
resultMap.put("message", "触发提示规则,本次操作完成后将打开【异常停机】。"); |
|
|
|
} |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -3904,8 +3905,19 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
} |
|
|
|
|
|
|
|
private void saveSplitRuleMatchedData(SearchScheduleData inData, String action) { |
|
|
|
if (ACTION_LOCK_PAGE.equals(action)) { |
|
|
|
saveSplitRuleCacheData(inData); |
|
|
|
saveSplitRuleTodoMessage(inData, ACTION_LOCK_PAGE.equals(action)); |
|
|
|
saveSplitRuleTodoMessage(inData, true, false); |
|
|
|
return; |
|
|
|
} |
|
|
|
if (ACTION_OPEN_DEFECT.equals(action) || ACTION_OPEN_DOWNTIME.equals(action)) { |
|
|
|
String functionName = inData == null ? "" : StringUtils.trimWhitespace(inData.getFunctionName()); |
|
|
|
if (FUNCTION_NAME_ABNORMAL_ROLL_CUT.equals(functionName)) { |
|
|
|
// 异常截卷流程等同“产量报告 + 换班结转”,提示类规则也需要缓存当前数据 |
|
|
|
saveSplitRuleCacheData(inData); |
|
|
|
} |
|
|
|
saveSplitRuleTodoMessage(inData, false, true); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void saveSplitRuleCacheData(SearchScheduleData inData) { |
|
|
|
@ -3955,7 +3967,7 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void saveSplitRuleTodoMessage(SearchScheduleData inData, boolean lockRequired) { |
|
|
|
private void saveSplitRuleTodoMessage(SearchScheduleData inData, boolean lockRequired, boolean operated) { |
|
|
|
if (inData == null || !StringUtils.hasText(inData.getSite()) || !StringUtils.hasText(inData.getBuNo()) |
|
|
|
|| !StringUtils.hasText(inData.getOrderNo()) || !StringUtils.hasText(inData.getSeqNo())) { |
|
|
|
return; |
|
|
|
@ -3982,7 +3994,7 @@ public class ScheduleServiceImpl implements ScheduleService { |
|
|
|
entity.setCreatedBy(StringUtils.hasText(inData.getOperatorId()) ? inData.getOperatorId() : inData.getCreatedBy()); |
|
|
|
entity.setMessageSource(buildTodoMessageSource(inData.getFunctionName())); |
|
|
|
entity.setAuditFlag(FLAG_N); |
|
|
|
entity.setOperateFlag(FLAG_N); |
|
|
|
entity.setOperateFlag(operated ? FLAG_Y : FLAG_N); |
|
|
|
entity.setLockFlag(lockRequired ? FLAG_Y : FLAG_N); |
|
|
|
scheduleTodoMessageMapper.insertTodoMessage(entity); |
|
|
|
} |
|
|
|
|