Commit ce5e4aab authored by yangyang's avatar yangyang

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

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