Commit a7714823 authored by lisong's avatar lisong

逻辑调整

parent 9990472a
......@@ -57,7 +57,7 @@ public enum BizTypeEnum {
public static String getNameByNum(String num) {
for (BizTypeEnum c : BizTypeEnum.values()) {
if (c.getCode().equals(num)){
if (c.getNum().equals(num)){
return c.getName();
}
}
......
......@@ -80,9 +80,13 @@ public class JyjcOpeningApplicationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/submit")
@ApiOperation(httpMethod = "PUT", value = "保存并提交", notes = "保存并提交")
public ResponseModel<JyjcOpeningApplicationModel> updateBySequenceNbrAndStartFlow(@RequestBody JSONObject jsonObject, @RequestParam(value = "sequenceNbr", required = false) Long sequenceNbr) {
public ResponseModel<List<JyjcOpeningApplicationModel>> updateBySequenceNbrAndStartFlow(@RequestBody JSONObject jsonObject, @RequestParam(value = "sequenceNbr", required = false) Long sequenceNbr) {
JyjcOpeningApplicationModel model = new JyjcOpeningApplicationModel();
BeanUtil.copyProperties(jsonObject.get("applyInfo"),model);
if (jsonObject.containsKey("applyInfo")) {
BeanUtil.copyProperties(jsonObject.get("applyInfo"), model);
} else {
BeanUtil.copyProperties(jsonObject, model);
}
model.setSequenceNbr(sequenceNbr);
if (sequenceNbr != null) {
JyjcOpeningApplicationModel jyjcOpeningApplicationModel = jyjcOpeningApplicationServiceImpl.queryDetail(sequenceNbr);
......@@ -90,7 +94,8 @@ public class JyjcOpeningApplicationController extends BaseController {
throw new BadRequest("企业资质信息和检验人员信息为空,无法提交!");
}
}
return ResponseHelper.buildResponse(jyjcOpeningApplicationServiceImpl.saveOrUpdateModel(model,true));
JyjcOpeningApplicationModel data = jyjcOpeningApplicationServiceImpl.saveOrUpdateModel(model, true);
return ResponseHelper.buildResponse(Collections.singletonList(data));
}
@Deprecated
......
......@@ -17,6 +17,7 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcOpeningApplication;
import com.yeejoin.amos.boot.module.jyjc.api.enums.BizTypeEnum;
import com.yeejoin.amos.boot.module.jyjc.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jyjc.api.mapper.JyjcBaseMapper;
import com.yeejoin.amos.boot.module.jyjc.api.mapper.JyjcOpeningApplicationMapper;
import com.yeejoin.amos.boot.module.jyjc.api.model.*;
......@@ -167,7 +168,8 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
// 存在流程,执行
HashMap<String, Object> map = new HashMap<>();
map.put("sequenceNbr",model.getSequenceNbr());
map.put("op", "1");
map.put("op", "0");
map.put("comments", "提交");
execueFlow(map);
// TaskResultDTO dto = new TaskResultDTO();
// dto.setResultCode("approvalStatus");
......@@ -207,15 +209,15 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
// 申请单号
dto.setTaskCode(model.getApplicationSeq());
// 业务类型
dto.setTaskType("114");
dto.setTaskType(BusinessTypeEnum.JY_OPENING_APPLICATION.getCode());
// 业务主键
dto.setRelationId(String.valueOf(model.getSequenceNbr()));
dto.setNextExecuteUser("");
dto.setTaskName("");
list.add(dto);
commonServiceImpl.buildTaskModel(list);
}
}
model.setStatusName(FlowStatusEnum.TO_BE_PROCESSED.getName());
return this.updateWithModel(model);
}
......@@ -520,6 +522,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
* 接收/驳回通知检验单
*/
public void execueFlow(Map<String, Object> params) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
Long sequenceNbr = Long.parseLong(params.get("sequenceNbr") + "");
String op = params.get("op").toString();
JyjcOpeningApplication data = jyjcOpeningApplicationMapper.selectById(sequenceNbr);
......@@ -530,6 +533,9 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
dto.setComment(params.get("comments").toString());
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", op);
if (String.valueOf(FlowStatusEnum.ROLLBACK.getCode()).equals(data.getStatus()) || String.valueOf(FlowStatusEnum.REJECTED.getCode()).equals(data.getStatus())) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
ProcessTaskDTO complete = cmWorkflowService.complete(data.getNextTaskId(), dto);
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
......@@ -537,13 +543,22 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!org.springframework.util.ObjectUtils.isEmpty(resultDto) && !org.springframework.util.ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
if (!ObjectUtils.isEmpty(workflowResultDto.getNextTaskId())){
if ("1".equals(op)) {
// 驳回
data.setStatus(String.valueOf(FlowStatusEnum.REJECTED.getCode()));
data.setStatusName(String.valueOf(FlowStatusEnum.REJECTED.getName()));
data.setPromoter("");
}else {
data.setStatus(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getCode()));
data.setStatusName(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getName()));
data.setPromoter(reginParams.getUserModel().getUserId());
}
// 更新代办
updateTask(data, workflowResultDto);
} else {
updateTask(data, workflowResultDto, op);
data.setNextTaskId(workflowResultDto.getNextTaskId());
}else {
// 流程结束
data.setStatus(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode()));
// 更新代办
......@@ -555,6 +570,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
taskParams.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
taskParams.put("model", data);
commonServiceImpl.updateTaskModel(taskParams);
data.setStatusName(FlowStatusEnum.TO_BE_FINISHED.getName());
}
}
jyjcOpeningApplicationMapper.updateById(data);
......@@ -571,7 +587,23 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
ProcessTaskDTO processTaskDTO = cmWorkflowService.rollBack(jyjcOpeningApplication.getWorkflowProstanceId());
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
processTaskDTOS.add(processTaskDTO);
jyjcOpeningApplication.setStatus(String.valueOf(FlowStatusEnum.ROLLBACK.getCode()));
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(jyjcOpeningApplication));
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
jsonObject.put("nextExecuteUser", workflowResultDto.getNextExecutorRoleIds());
jyjcOpeningApplication.setNextTaskId(workflowResultDto.getNextTaskId());
jyjcOpeningApplication.setStatusName(FlowStatusEnum.ROLLBACK.getName());
}
jsonObject.put("nextTaskId", jyjcOpeningApplication.getNextTaskId());
jsonObject.put("taskType", BusinessTypeEnum.JY_OPENING_APPLICATION.getCode());
jsonObject.put("flowStatus", FlowStatusEnum.ROLLBACK.getCode());
jsonObject.put("flowStatusLabel", FlowStatusEnum.ROLLBACK.getName());
// 撤回删除代办
commonServiceImpl.rollbackTask(jyjcOpeningApplication.getWorkflowProstanceId(), jsonObject);
// 更新数据
jyjcOpeningApplicationMapper.updateById(jyjcOpeningApplication);
return jyjcOpeningApplication;
}
......@@ -640,7 +672,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
// 代办消息
ArrayList<TaskModelDto> list = new ArrayList<>();
TaskModelDto dto = new TaskModelDto();
dto.setTaskType("114");
dto.setTaskType(BusinessTypeEnum.JY_OPENING_APPLICATION.getCode());
dto.setTaskTypeLabel(BizTypeEnum.BUSINESS_OPEN.getName());
dto.setFlowCreateDate(model.getRecDate());
dto.setTaskName(workflowResultDto.getNextTaskName());
......@@ -658,13 +690,16 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
dto.setStartDate(new Date());
model.setWorkflowProstanceId(workflowResultDto.getInstanceId());
model.setNextExecuteIds(workflowResultDto.getNextExecutorRoleIds());
dto.setModel(model);
JyjcOpeningApplicationModel urlParms = new JyjcOpeningApplicationModel();
BeanUtil.copyProperties(model, urlParms, "unitCode" ,"unitAddress" , "unitCodeName" ,"detectionRegion" , "detectionRegionName" , "applicationSeq" , "resultType" , "expiryDate" , "acceptDate" , "remark" , "applyTime" , "baseUnitLicences" , "userInfos" , "useContact" , "contactPhone" , "industrySupervisor" , "longitude" , "latitude" , "geographic" , "unitBusinessLicense");
dto.setModel(urlParms);
dto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
dto.setPageType("look");
list.add(dto);
commonServiceImpl.buildTaskModel(list);
}
public void updateTask(JyjcOpeningApplication model, WorkflowResultDto workflowResultDto) {
public void updateTask(JyjcOpeningApplication model, WorkflowResultDto workflowResultDto, String op) {
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", model.getWorkflowProstanceId());
......@@ -677,10 +712,24 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
if (!ObjectUtils.isEmpty(taskV2Model)) {
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
taskModelDto.setModel(model);
JyjcOpeningApplication urlParms = new JyjcOpeningApplication();
BeanUtil.copyProperties(model, urlParms, "unitCode" ,"unitAddress" , "unitCodeName" ,"detectionRegion" , "detectionRegionName" , "applicationSeq" , "resultType" , "expiryDate" , "acceptDate" , "remark" , "applyTime" , "baseUnitLicences" , "userInfos" , "useContact" , "contactPhone" , "industrySupervisor" , "longitude" , "latitude" , "geographic" , "unitBusinessLicense");
taskModelDto.setModel(urlParms);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
if ("0".equals(op)){
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setTaskStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
}else {
taskModelDto.setTaskStatusLabel(FlowStatusEnum.REJECTED.getName());
taskModelDto.setTaskStatus(FlowStatusEnum.REJECTED.getCode());
taskModelDto.setFlowStatus(FlowStatusEnum.REJECTED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.REJECTED.getName());
taskModelDto.setPageType("edit");
}
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
commonServiceImpl.buildTaskModel(Collections.singletonList(taskModelDto));
} else {
......
......@@ -42,7 +42,7 @@
}, {
"type":"114",
"pageType": "look",
"url": "/mixuap?appId=1742358052905971713&id=1735201757841092609&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1735201757841092609&roleIds={roleIds}&userId={userId}&pageType=look"
}, {
"type":"114",
"pageType": "edit",
......
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