Commit 8cab5e68 authored by suhuiguang's avatar suhuiguang

fix(开通):bug修改

1.在撤回到、驳回到发起单位时,清楚审批流程中填充的机构分类、有限期字段
parent ff085064
...@@ -171,9 +171,10 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -171,9 +171,10 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
@GlobalTransactional(rollbackFor = Exception.class) @GlobalTransactional(rollbackFor = Exception.class)
public JyjcOpeningApplicationModel saveOrUpdate(JyjcOpeningApplicationModel model, String unitCode) { public JyjcOpeningApplicationModel saveOrUpdate(JyjcOpeningApplicationModel model, String unitCode) {
if (model.getSequenceNbr() != null) { if (model.getSequenceNbr() != null) {
// 编辑逻辑
model.setOriDetectionRegion(model.getDetectionRegion());
// 存json // 存json
commonService.saveOrUpdateHistory(model.getOpenBizType(), JSONObject.parseObject(JSONObject.toJSONString(model)), model.getSequenceNbr()); commonService.saveOrUpdateHistory(model.getOpenBizType(), JSONObject.parseObject(JSONObject.toJSONString(model)), model.getSequenceNbr());
// 编辑逻辑
return this.updateWithModel(model); return this.updateWithModel(model);
} else { } else {
// 工作台暂存(新增)逻辑 // 工作台暂存(新增)逻辑
...@@ -186,6 +187,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -186,6 +187,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
model.setCreateUserId(RequestContext.getExeUserId()); model.setCreateUserId(RequestContext.getExeUserId());
model.setStatus(WorkFlowStatusEnum.OPENING_APPLICATION_SUBMIT.getPass()); model.setStatus(WorkFlowStatusEnum.OPENING_APPLICATION_SUBMIT.getPass());
model.setDockingUnitCode(this.getAppId(unitCode)); model.setDockingUnitCode(this.getAppId(unitCode));
// 编辑逻辑
model.setOriDetectionRegion(model.getDetectionRegion());
this.createWithModel(model); this.createWithModel(model);
// 2.创建待办 // 2.创建待办
createDraftTask(model); createDraftTask(model);
...@@ -278,8 +281,10 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -278,8 +281,10 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
private JyjcOpeningApplicationModel saveModel(JyjcOpeningApplicationModel model) { private JyjcOpeningApplicationModel saveModel(JyjcOpeningApplicationModel model) {
if (model.getSequenceNbr() == null) { if (model.getSequenceNbr() == null) {
model.setOriDetectionRegion(model.getDetectionRegion());
return this.createWithModel(model); return this.createWithModel(model);
} else { } else {
model.setOriDetectionRegion(model.getDetectionRegion());
return this.updateWithModel(model); return this.updateWithModel(model);
} }
} }
...@@ -803,6 +808,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -803,6 +808,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
// 驳回操作, 驳回时不更新json数据 // 驳回操作, 驳回时不更新json数据
jyjcOpeningApplication.setStatus(WorkFlowStatusEnum.getMessage(workflowResultDto.getNextTaskCode()).getReject()); jyjcOpeningApplication.setStatus(WorkFlowStatusEnum.getMessage(workflowResultDto.getNextTaskCode()).getReject());
jyjcOpeningApplication.setPromoter(""); jyjcOpeningApplication.setPromoter("");
// 驳回到发起单位时,恢复原始的开通区域,清空机构分类、核准项目
this.restoreApplicationData(jyjcOpeningApplication, params);
} }
jyjcOpeningApplication.setNextTaskId(workflowResultDto.getNextTaskId()); jyjcOpeningApplication.setNextTaskId(workflowResultDto.getNextTaskId());
jyjcOpeningApplication.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds()); jyjcOpeningApplication.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
...@@ -852,9 +859,26 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -852,9 +859,26 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
return null; return null;
} }
private void restoreApplicationData(JyjcOpeningApplication jyjcOpeningApplication, Map<String, Object> params) {
// 资料校对受理已退回时恢复数据到原始数据
if(jyjcOpeningApplication.getStatus().equals(WorkFlowStatusEnum.OPENING_APPLICATION_SUBMIT.getReject())){
jyjcOpeningApplication.setDetectionRegion(jyjcOpeningApplication.getOriDetectionRegion());
jyjcOpeningApplication.setAgencyClassify(null);
jyjcOpeningApplication.setExpiryDate(null);
JSONObject data = new JSONObject(params);
List<BaseEnterpriseCertDto> certDtos = data.getJSONArray(BizCommonConstant.UNIT_LICENCE_KEY).toJavaList(BaseEnterpriseCertDto.class);
certDtos.forEach(c->{
c.setItemCodes(new ArrayList<>());
});
data.put(BizCommonConstant.UNIT_LICENCE_KEY, certDtos);
// 更新json
commonService.saveOrUpdateHistory(jyjcOpeningApplication.getOpenBizType(), data, jyjcOpeningApplication.getSequenceNbr());
}
}
private void sendMsg2User(JyjcOpeningApplication jyjcOpeningApplication) { private void sendMsg2User(JyjcOpeningApplication jyjcOpeningApplication) {
// 系统对接中时发送对接消息 // 系统对接中时发送对接消息
if (jyjcOpeningApplication.getStatus().equals(WorkFlowStatusEnum.OPENING_APPLICATION_PRELIMINARY.getPass())) { if (jyjcOpeningApplication.getStatus().equals(WorkFlowStatusEnum.OPENING_APPLICATION_PRELIMINARY.getReject())) {
String createUserId = jyjcOpeningApplication.getCreateUserId(); String createUserId = jyjcOpeningApplication.getCreateUserId();
String relationId = jyjcOpeningApplication.getSequenceNbr() + ""; String relationId = jyjcOpeningApplication.getSequenceNbr() + "";
String companyType = this.OpenBizType2CompanyType(jyjcOpeningApplication.getOpenBizType()); String companyType = this.OpenBizType2CompanyType(jyjcOpeningApplication.getOpenBizType());
...@@ -1054,6 +1078,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -1054,6 +1078,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
jsonObject.put("flowStatus", commonService.getDictionaryCodeByName(jyjcOpeningApplication.getStatus())); jsonObject.put("flowStatus", commonService.getDictionaryCodeByName(jyjcOpeningApplication.getStatus()));
jsonObject.put("flowStatusLabel", jyjcOpeningApplication.getStatus()); jsonObject.put("flowStatusLabel", jyjcOpeningApplication.getStatus());
this.deleteMsg(jyjcOpeningApplication.getStatus(), jyjcOpeningApplication.getSequenceNbr()); this.deleteMsg(jyjcOpeningApplication.getStatus(), jyjcOpeningApplication.getSequenceNbr());
// 撤回到发起单位时,数据恢复到原始提交状态
this.restoreApplicationData(jyjcOpeningApplication);
// 撤回删除代办 // 撤回删除代办
taskModelService.rollbackTask(jyjcOpeningApplication.getWorkflowProstanceId(), jsonObject); taskModelService.rollbackTask(jyjcOpeningApplication.getWorkflowProstanceId(), jsonObject);
// 更新数据 // 更新数据
...@@ -1071,6 +1097,21 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -1071,6 +1097,21 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
return null; return null;
} }
private void restoreApplicationData(JyjcOpeningApplication jyjcOpeningApplication) {
if(jyjcOpeningApplication.getStatus().equals(WorkFlowStatusEnum.OPENING_APPLICATION_SUBMIT.getRollBack())){
jyjcOpeningApplication.setDetectionRegion(jyjcOpeningApplication.getOriDetectionRegion());
jyjcOpeningApplication.setAgencyClassify(null);
jyjcOpeningApplication.setExpiryDate(null);
JyjcInspectionHistory history = inspectionHistoryService.getBySSeq(jyjcOpeningApplication.getSequenceNbr());
JSONObject hisData = history.getHistoryData();
List<BaseEnterpriseCertDto> certDtos = hisData.getJSONArray(BizCommonConstant.UNIT_LICENCE_KEY).toJavaList(BaseEnterpriseCertDto.class);
certDtos.forEach(c-> c.setItemCodes(new ArrayList<>()));
hisData.put(BizCommonConstant.UNIT_LICENCE_KEY, certDtos);
// 更新json
commonService.saveOrUpdateHistory(jyjcOpeningApplication.getOpenBizType(), hisData, jyjcOpeningApplication.getSequenceNbr());
}
}
private void deleteMsg(String status, Long sequenceNbr) { private void deleteMsg(String status, Long sequenceNbr) {
// 流程到<系统对接受理已退回, 资料校对受理已撤回>时删除之前的消息 // 流程到<系统对接受理已退回, 资料校对受理已撤回>时删除之前的消息
if (WorkFlowStatusEnum.OPENING_APPLICATION_RECEIVE.getReject().equals(status) || WorkFlowStatusEnum.OPENING_APPLICATION_RECEIVE.getRollBack().equals(status)) { if (WorkFlowStatusEnum.OPENING_APPLICATION_RECEIVE.getReject().equals(status) || WorkFlowStatusEnum.OPENING_APPLICATION_RECEIVE.getRollBack().equals(status)) {
......
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