Commit ce5e4aab authored by yangyang's avatar yangyang

fix(检验业务开通):保存并提交判断是否开启过工作流,如果开启过则不重新开启

parent 21539aa5
...@@ -232,8 +232,8 @@ public class JyjcInspectionApplicationController extends BaseController { ...@@ -232,8 +232,8 @@ public class JyjcInspectionApplicationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "撤回", notes = "撤回") @ApiOperation(httpMethod = "GET",value = "撤回", notes = "撤回")
@GetMapping(value = "/flow/rollback") @GetMapping(value = "/flow/rollback")
public void doRollbackFlow(@RequestParam("instanceId") String instanceId) { public void doRollbackFlow(@RequestParam("sequenceNbr") String sequenceNbr) {
jyjcInspectionApplicationServiceImpl.doRollback(instanceId); jyjcInspectionApplicationServiceImpl.doRollback(sequenceNbr);
} }
/** /**
* 查询指定设备种类的设备列表 * 查询指定设备种类的设备列表
......
...@@ -241,7 +241,8 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -241,7 +241,8 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
Long sequenceNbr = (Long) params.get("sequenceNbr"); Long sequenceNbr = (Long) params.get("sequenceNbr");
JyjcInspectionApplicationModel inspectionApplicationModel = this.queryBySeq(sequenceNbr); JyjcInspectionApplicationModel inspectionApplicationModel = this.queryBySeq(sequenceNbr);
List<JyjcInspectionApplicationEquipModel> applicationEquipModels = applicationEquipService.listApplicationEquipByApplicationSeq(sequenceNbr); List<JyjcInspectionApplicationEquipModel> applicationEquipModels = applicationEquipService.listApplicationEquipByApplicationSeq(sequenceNbr);
if (ValidationUtil.isEmpty(applicationEquipModels)) { if (inspectionApplicationModel == null || ValidationUtil.isEmpty(applicationEquipModels)) {
log.warn("JyjcInspectionApplicationModel Not Found!");
return; return;
} }
List<JyjcInspectionResult> resultModels = new ArrayList(applicationEquipModels.size()); List<JyjcInspectionResult> resultModels = new ArrayList(applicationEquipModels.size());
...@@ -253,6 +254,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -253,6 +254,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
resultModel.setApplicationUnitCode(inspectionApplicationModel.getApplicationUnitCode()); resultModel.setApplicationUnitCode(inspectionApplicationModel.getApplicationUnitCode());
resultModel.setResultStatus("未出"); resultModel.setResultStatus("未出");
resultModel.setApplicationDate(inspectionApplicationModel.getApplicationDate()); resultModel.setApplicationDate(inspectionApplicationModel.getApplicationDate());
resultModel.setResultType(inspectionApplicationModel.getResultType());
// 解析设备 // 解析设备
resultModel.setBizType(inspectionApplicationModel.getBizType()); resultModel.setBizType(inspectionApplicationModel.getBizType());
resultModel.setResultNo(codes.get(i)); resultModel.setResultNo(codes.get(i));
...@@ -314,17 +316,23 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec ...@@ -314,17 +316,23 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
/** /**
* 撤回流程办理单 * 撤回流程办理单
*/ */
public void doRollback(String instanceId) { public void doRollback(String sequenceNbr) {
JSONObject jsonObject;
JyjcInspectionApplicationModel inspectionApplicationModel = this.queryBySeq(Long.valueOf(sequenceNbr));
if (inspectionApplicationModel == null) {
log.warn("JyjcInspectionApplicationModel Not Found!sequenceNbr => " + sequenceNbr);
return;
}
try { try {
// 撤回流程 // 撤回流程
FeignClientResult feignClientResult =new FeignClientResult(); jsonObject = workflowHelper.rollBack(inspectionApplicationModel.getProcessInstanceId());
if (ObjectUtils.isEmpty(feignClientResult)) { if (ObjectUtils.isEmpty(jsonObject)) {
} }
updateModelByInstanceId(instanceId, MapBuilder.<String, Object>create().put("status", FlowStatusEnum.REJECTED.getCode() + "").build()); updateModelByInstanceId(inspectionApplicationModel.getProcessInstanceId(), MapBuilder.<String, Object>create().put("status", FlowStatusEnum.REJECTED.getCode() + "").build());
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
log.error("撤回工作流错误, => {}", instanceId, e); log.error("撤回工作流错误, => {}", inspectionApplicationModel.getProcessInstanceId(), e);
} }
} }
......
...@@ -99,10 +99,21 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -99,10 +99,21 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
@Transactional(rollbackFor = {Exception.class, BaseException.class}) @Transactional(rollbackFor = {Exception.class, BaseException.class})
public JyjcOpeningApplicationModel saveOrUpdateModel(JyjcOpeningApplicationModel model, Boolean enableStartFlow) { public JyjcOpeningApplicationModel saveOrUpdateModel(JyjcOpeningApplicationModel model, Boolean enableStartFlow) {
boolean isUpdate = false;
String instanceId = null;
try { try {
if (model.getSequenceNbr() != null) {
JyjcOpeningApplication entity = this.lambdaQuery().eq(JyjcOpeningApplication::getSequenceNbr, model.getSequenceNbr()).getEntity();
if (entity != null) {
instanceId = entity.getWorkflowProstanceId();
isUpdate = true;
}
}
if (enableStartFlow) { if (enableStartFlow) {
// 开启工作流 startProcess if (StringUtils.isBlank(instanceId)) {
String instanceId = startFlow("1"); // 未开启过工作流则进行开启 startProcess
instanceId = startFlow("1");
}
JSONObject dataObject = getTask(instanceId); JSONObject dataObject = getTask(instanceId);
JSONArray executorArray = dataObject.getJSONObject("nodeInfo").getJSONArray("executor"); JSONArray executorArray = dataObject.getJSONObject("nodeInfo").getJSONArray("executor");
if (!ValidationUtil.isEmpty(executorArray)) { if (!ValidationUtil.isEmpty(executorArray)) {
...@@ -113,7 +124,6 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -113,7 +124,6 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
model.setStatusName(FlowStatusEnum.SUBMITTED.getName()); model.setStatusName(FlowStatusEnum.SUBMITTED.getName());
model.setApplyTime(new Date()); model.setApplyTime(new Date());
model.setWorkflowActiveKey(dataObject.getString("taskDefinitionKey")); model.setWorkflowActiveKey(dataObject.getString("taskDefinitionKey"));
// model.setStatus(!ValidationUtil.isEmpty(dataObject) && !ValidationUtil.isEmpty(dataObject.get("status")) ? String.valueOf(dataObject.get("status")) : "");
model.setWorkflowProstanceId(instanceId); model.setWorkflowProstanceId(instanceId);
// 默认自动执行第一步 // 默认自动执行第一步
execueFlow(MapBuilder.<String, Object>create().put("op", "0").put("instanceId", instanceId).put("comments", "").build()); execueFlow(MapBuilder.<String, Object>create().put("op", "0").put("instanceId", instanceId).put("comments", "").build());
...@@ -121,7 +131,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp ...@@ -121,7 +131,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
model.setStatus(FlowStatusEnum.TO_BE_SUBMITTED.getCode() + ""); model.setStatus(FlowStatusEnum.TO_BE_SUBMITTED.getCode() + "");
model.setStatusName(FlowStatusEnum.TO_BE_SUBMITTED.getName()); model.setStatusName(FlowStatusEnum.TO_BE_SUBMITTED.getName());
} }
if (model.getSequenceNbr() == null) { if (!isUpdate) {
CompanyBo companyBo = commonserviceImpl.getReginParamsOfCurrentUser().getCompany(); CompanyBo companyBo = commonserviceImpl.getReginParamsOfCurrentUser().getCompany();
model.setUnitCode(companyBo.getCompanyCode()); model.setUnitCode(companyBo.getCompanyCode());
model.setUnitCodeName(companyBo.getCompanyName()); model.setUnitCodeName(companyBo.getCompanyName());
......
...@@ -63,4 +63,8 @@ public class WorkflowHelper { ...@@ -63,4 +63,8 @@ public class WorkflowHelper {
} }
return null; return null;
} }
public JSONObject rollBack(String workflowProstanceId) {
return workflowFeignClient.rollBack(workflowProstanceId);
}
} }
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