Commit 9575a667 authored by 韩桐桐's avatar 韩桐桐

fix(jg):维保作废

parent 7f1fd233
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
tjmc.create_user_id, tjmc.create_user_id,
tjmc.next_execute_user_ids, tjmc.next_execute_user_ids,
tjmc.next_task_id, tjmc.next_task_id,
tjmc.cancel_reason,
ri."EQU_CODE" as equCode, ri."EQU_CODE" as equCode,
concat(date_format(IFNULL(inform_start, null),'%Y-%m-%d'),' ~ ',date_format(IFNULL(inform_end, null),'%Y-%m-%d')) as informStartAndEnd, concat(date_format(IFNULL(inform_start, null),'%Y-%m-%d'),' ~ ',date_format(IFNULL(inform_end, null),'%Y-%m-%d')) as informStartAndEnd,
(SELECT name from tz_equipment_category ec WHERE ec.code = ri.EQU_LIST) AS equList, (SELECT name from tz_equipment_category ec WHERE ec.code = ri.EQU_LIST) AS equList,
......
...@@ -746,34 +746,55 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC ...@@ -746,34 +746,55 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
return format; return format;
} }
@Transactional(rollbackFor = Exception.class)
public JgMaintenanceContract cancelApplication(Long sequenceNbr, String cancelReason) { public JgMaintenanceContract cancelApplication(Long sequenceNbr, String cancelReason) {
JgMaintenanceContract maintenanceContract = this.getById(sequenceNbr); JgMaintenanceContract maintenanceContract = this.getById(sequenceNbr);
// 1.更新为已作废 // 1.更新为已作废
String oldNoticeStatus = maintenanceContract.getStatus(); String oldNoticeStatus = maintenanceContract.getStatus();
maintenanceContract.setApplyStatus(String.valueOf(FlowStatusEnum.TO_BE_DISCARD.getCode())); maintenanceContract.setStatus(FlowStatusEnum.TO_BE_DISCARD.getName());
maintenanceContract.setCancelReason(cancelReason); maintenanceContract.setCancelReason(cancelReason);
maintenanceContract.setCancelDate(new Date()); maintenanceContract.setCancelDate(new Date());
maintenanceContract.setCancelUserId(RequestContext.getExeUserId()); maintenanceContract.setCancelUserId(RequestContext.getExeUserId());
maintenanceContract.setNextExecuteUserIds(null); maintenanceContract.setNextExecuteUserIds(null);
maintenanceContract.setPromoter(null); maintenanceContract.setPromoter(null);
this.updateById(maintenanceContract); this.updateById(maintenanceContract);
this.processElseDataByStatus(Objects.requireNonNull(FlowStatusEnum.getEumByCode(Integer.parseInt(oldNoticeStatus))), maintenanceContract); this.processElseDataByStatus(Objects.requireNonNull(this.confirmBusinessPhase(oldNoticeStatus)), maintenanceContract);
return maintenanceContract; return maintenanceContract;
} }
private FlowStatusEnum confirmBusinessPhase(String status) {
Set<String> toBeSubmittedSet = new HashSet<>(Arrays.asList(
WorkFlowStatusEnum.MAIN_SUBMIT.getPass(),
WorkFlowStatusEnum.MAIN_SUBMIT.getReject(),
WorkFlowStatusEnum.MAIN_SUBMIT.getRollBack(),
WorkFlowStatusEnum.MAIN_RECEIVE.getPass(),
WorkFlowStatusEnum.MAIN_RECEIVE.getReject(),
WorkFlowStatusEnum.MAIN_RECEIVE.getRollBack(),
WorkFlowStatusEnum.MAIN_PRELIMINARY.getPass()
));
if (toBeSubmittedSet.contains(status)) {
return FlowStatusEnum.TO_BE_SUBMITTED;
}
if (FlowStatusEnum.TO_BE_FINISHED.getName().equals(status)) {
return FlowStatusEnum.TO_BE_FINISHED;
}
return null;
}
private void processElseDataByStatus(FlowStatusEnum oldNoticeStatus, JgMaintenanceContract maintenanceContract) { private void processElseDataByStatus(FlowStatusEnum oldNoticeStatus, JgMaintenanceContract maintenanceContract) {
switch (oldNoticeStatus) { switch (oldNoticeStatus) {
case TO_BE_SUBMITTED: // 待提交 case TO_BE_SUBMITTED:
// 1.写入历史表 // 1.写入历史表
this.saveHisDataBeforeUpdate(maintenanceContract); this.saveHisDataBeforeUpdate(maintenanceContract);
// 2.删除暂存时生成的待办 // 2.删除暂存时生成的待办
commonService.deleteTasksByRelationId(maintenanceContract.getSequenceNbr() + ""); commonService.deleteTasksAndStopProcess(maintenanceContract.getInstanceId(),"监管单位主动作废");
break; break;
case TO_BE_FINISHED: // 已完成 case TO_BE_FINISHED:
// 1.回退表单 // 1.回退表单
updateIdxBizJgRegisterInfo(maintenanceContract); updateIdxBizJgRegisterInfo(maintenanceContract);
// 2.清空redis 缓存的流程中及已完成安装告知的设备
// this.delRepeatUseEquipData(maintenanceContract);
break; break;
default: default:
// 流程中(驳回、撤回等) // 流程中(驳回、撤回等)
...@@ -783,11 +804,11 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC ...@@ -783,11 +804,11 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
iCmWorkflowService.stopProcess(maintenanceContract.getInstanceId(), maintenanceContract.getCancelReason()); iCmWorkflowService.stopProcess(maintenanceContract.getInstanceId(), maintenanceContract.getCancelReason());
// 3.写入历史表 // 3.写入历史表
this.saveHisDataBeforeUpdate(maintenanceContract); this.saveHisDataBeforeUpdate(maintenanceContract);
// 4.清空redis(缓存的流程中及已完成安装告知的设备)
// this.delRepeatUseEquipData(maintenanceContract);
} }
} }
private void updateIdxBizJgRegisterInfo(JgMaintenanceContract maintenanceContract) { private void updateIdxBizJgRegisterInfo(JgMaintenanceContract maintenanceContract) {
LambdaQueryWrapper<JgMaintenanceContractEq> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<JgMaintenanceContractEq> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(JgMaintenanceContractEq::getEquipTransferId, maintenanceContract.getSequenceNbr()); queryWrapper.eq(JgMaintenanceContractEq::getEquipTransferId, maintenanceContract.getSequenceNbr());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment