feat: 年度制修订-标准化发起二级驳回
This commit is contained in:
+1
@@ -9,6 +9,7 @@ public class AnnualInitTaskNameConstant {
|
|||||||
public static final String STANDARD_ENGINEER_INIT = "标准化工程师发起";
|
public static final String STANDARD_ENGINEER_INIT = "标准化工程师发起";
|
||||||
public static final String CONTACT_USER_SELECT = "部所联络人选取审批人";
|
public static final String CONTACT_USER_SELECT = "部所联络人选取审批人";
|
||||||
public static final String STANDARD_ENGINEER_EDIT = "标准化工程师修改调整";
|
public static final String STANDARD_ENGINEER_EDIT = "标准化工程师修改调整";
|
||||||
|
public static final String STANDARD_ENGINEER_SECOND_EDIT = "标准化工程师二次修改调整";
|
||||||
public static final String MAIN_DRAFT_LEADER_APPROVAL_DISTRIBUTE = "主起草单位主管级领导审批下发";
|
public static final String MAIN_DRAFT_LEADER_APPROVAL_DISTRIBUTE = "主起草单位主管级领导审批下发";
|
||||||
public static final String CONTACT_USER_EDIT = "部所联络人修改调整";
|
public static final String CONTACT_USER_EDIT = "部所联络人修改调整";
|
||||||
public static final String MAIN_DRAFT_WRITE = "主起草人填写信息";
|
public static final String MAIN_DRAFT_WRITE = "主起草人填写信息";
|
||||||
|
|||||||
+4
@@ -337,6 +337,10 @@ public class ProcessEsAnnualInit implements Serializable {
|
|||||||
@Dict(dicCode = "YN")
|
@Dict(dicCode = "YN")
|
||||||
private String rejectFlag;
|
private String rejectFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "二级驳回标识")
|
||||||
|
@Dict(dicCode = "YN")
|
||||||
|
private String rejectSecondFlag;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 执行id
|
* 执行id
|
||||||
*/
|
*/
|
||||||
|
|||||||
+61
-7
@@ -207,6 +207,11 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
case CONTACT_USER_SELECT:
|
case CONTACT_USER_SELECT:
|
||||||
wrapper.eq(ProcessEsAnnualInit::getContactUser, userId);
|
wrapper.eq(ProcessEsAnnualInit::getContactUser, userId);
|
||||||
break;
|
break;
|
||||||
|
case STANDARD_ENGINEER_SECOND_EDIT:
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getApprovalUser, approvalUser);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getRejectSecondFlag, YesOrNoEnum.YES.getValue());
|
||||||
|
break;
|
||||||
case STANDARD_ENGINEER_EDIT:
|
case STANDARD_ENGINEER_EDIT:
|
||||||
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
wrapper.eq(ProcessEsAnnualInit::getRejectFlag, YesOrNoEnum.YES.getValue());
|
wrapper.eq(ProcessEsAnnualInit::getRejectFlag, YesOrNoEnum.YES.getValue());
|
||||||
@@ -270,6 +275,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();
|
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult();
|
||||||
String processDefinitionId = processInstance.getProcessDefinitionId();
|
String processDefinitionId = processInstance.getProcessDefinitionId();
|
||||||
Map<String, Object> userMap = new HashMap<>();
|
Map<String, Object> userMap = new HashMap<>();
|
||||||
|
boolean batchDelFlag = StrUtil.isNotBlank(annualInitData.getBatchRejectIds());
|
||||||
switch (taskName) {
|
switch (taskName) {
|
||||||
case CONTACT_USER_SELECT:
|
case CONTACT_USER_SELECT:
|
||||||
dataList = annualInitData.getDataList();
|
dataList = annualInitData.getDataList();
|
||||||
@@ -298,10 +304,33 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case STANDARD_ENGINEER_SECOND_EDIT:
|
||||||
|
dataList = annualInitData.getDataList();
|
||||||
|
dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.NO.getValue()));
|
||||||
|
// 先删后增
|
||||||
|
if (batchDelFlag) {
|
||||||
|
saveOrUpdateBatch(dataList);
|
||||||
|
} else {
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getContactUser, contactUser);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getRejectSecondFlag, YesOrNoEnum.YES.getValue());
|
||||||
|
remove(wrapper);
|
||||||
|
saveBatch(dataList);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case STANDARD_ENGINEER_EDIT:
|
case STANDARD_ENGINEER_EDIT:
|
||||||
dataList = annualInitData.getDataList();
|
dataList = annualInitData.getDataList();
|
||||||
dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.NO.getValue()));
|
dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.NO.getValue()));
|
||||||
saveOrUpdateBatch(dataList);
|
// 先删后增
|
||||||
|
if (batchDelFlag) {
|
||||||
|
saveOrUpdateBatch(dataList);
|
||||||
|
} else {
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getContactUser, contactUser);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getRejectFlag, YesOrNoEnum.YES.getValue());
|
||||||
|
remove(wrapper);
|
||||||
|
saveBatch(dataList);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case MAIN_DRAFT_LEADER_APPROVAL_DISTRIBUTE:
|
case MAIN_DRAFT_LEADER_APPROVAL_DISTRIBUTE:
|
||||||
dataList = annualInitData.getDataList();
|
dataList = annualInitData.getDataList();
|
||||||
@@ -312,6 +341,7 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
Set<String> mainDraftUserSet = new HashSet<>();
|
Set<String> mainDraftUserSet = new HashSet<>();
|
||||||
dataList.forEach(d -> mainDraftUserSet.add(d.getPrcMainDraftUser()));
|
dataList.forEach(d -> mainDraftUserSet.add(d.getPrcMainDraftUser()));
|
||||||
dataList.forEach(data -> data.setExecutionId(executionId));
|
dataList.forEach(data -> data.setExecutionId(executionId));
|
||||||
|
saveOrUpdateBatch(dataList);
|
||||||
taskService.setVariable(taskId, "mainDraftUserList", mainDraftUserSet);
|
taskService.setVariable(taskId, "mainDraftUserList", mainDraftUserSet);
|
||||||
// 保存人员
|
// 保存人员
|
||||||
userMap.put("mainDraftUserList", String.join(",", mainDraftUserSet));
|
userMap.put("mainDraftUserList", String.join(",", mainDraftUserSet));
|
||||||
@@ -326,11 +356,26 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
break;
|
break;
|
||||||
case CONTACT_USER_EDIT:
|
case CONTACT_USER_EDIT:
|
||||||
dataList = annualInitData.getDataList();
|
dataList = annualInitData.getDataList();
|
||||||
dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.NO.getValue()));
|
if (pass) {
|
||||||
taskService.setVariable(taskId, "approvalUser", annualInitData.getDataList().get(0).getApprovalUser());
|
dataList.forEach(d -> d.setRejectFlag(YesOrNoEnum.NO.getValue()));
|
||||||
dataList.forEach(data -> data.setExecutionId(executionId));
|
taskService.setVariable(taskId, "approvalUser", annualInitData.getDataList().get(0).getApprovalUser());
|
||||||
dataList.forEach(data -> data.setApprovalUser(annualInitData.getDataList().get(0).getApprovalUser()));
|
dataList.forEach(data -> data.setExecutionId(executionId));
|
||||||
saveOrUpdateBatch(dataList);
|
dataList.forEach(data -> data.setApprovalUser(annualInitData.getDataList().get(0).getApprovalUser()));
|
||||||
|
saveOrUpdateBatch(dataList);
|
||||||
|
} else {
|
||||||
|
if (dataList == null) {
|
||||||
|
// 找到所有数据,然后设置驳回标志位
|
||||||
|
updateWrapper.eq(ProcessEsAnnualInit::getContactUser, userId);
|
||||||
|
updateWrapper.set(ProcessEsAnnualInit::getRejectSecondFlag, YesOrNoEnum.YES.getValue());
|
||||||
|
updateWrapper.set(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
|
update(updateWrapper);
|
||||||
|
} else {
|
||||||
|
dataList.forEach(d -> d.setRejectSecondFlag(YesOrNoEnum.YES.getValue()));
|
||||||
|
dataList.forEach(data -> data.setExecutionId(executionId));
|
||||||
|
saveOrUpdateBatch(dataList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
case MAIN_DRAFT_WRITE:
|
case MAIN_DRAFT_WRITE:
|
||||||
dataList = annualInitData.getDataList();
|
dataList = annualInitData.getDataList();
|
||||||
dataList.forEach(d -> d.setMainDraftingUser(userId));
|
dataList.forEach(d -> d.setMainDraftingUser(userId));
|
||||||
@@ -380,9 +425,12 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
@Override
|
@Override
|
||||||
public void batchReject(AnnualInitDataVO annualInitData, String ids) {
|
public void batchReject(AnnualInitDataVO annualInitData, String ids) {
|
||||||
CommonVO commonVO = annualInitData.getCommonVO();
|
CommonVO commonVO = annualInitData.getCommonVO();
|
||||||
String processInstanceId = commonVO.getProcessInstanceId();
|
String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(commonVO.getTaskId());
|
||||||
String taskId = commonVO.getTaskId();
|
String taskId = commonVO.getTaskId();
|
||||||
// 获取task
|
// 获取task
|
||||||
|
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
|
||||||
|
// 获取执行id
|
||||||
|
String executionId = task.getExecutionId();
|
||||||
if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) {
|
if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) {
|
||||||
throw new JeroBootException("taskId为空或任务不存在");
|
throw new JeroBootException("taskId为空或任务不存在");
|
||||||
}
|
}
|
||||||
@@ -392,8 +440,14 @@ public class ProcessEsAnnualInitServiceImpl extends ServiceImpl<ProcessEsAnnualI
|
|||||||
wrapper.eq(ProcessEsAnnualInit::getDelFlag, YesOrNoEnum.NO.getValue());
|
wrapper.eq(ProcessEsAnnualInit::getDelFlag, YesOrNoEnum.NO.getValue());
|
||||||
wrapper.eq(ProcessEsAnnualInit::getContactUser, userId);
|
wrapper.eq(ProcessEsAnnualInit::getContactUser, userId);
|
||||||
wrapper.in(ProcessEsAnnualInit::getId, Arrays.asList(ids.split(",")));
|
wrapper.in(ProcessEsAnnualInit::getId, Arrays.asList(ids.split(",")));
|
||||||
|
if (STANDARD_ENGINEER_SECOND_EDIT.equals(task.getName())) {
|
||||||
|
wrapper.eq(ProcessEsAnnualInit::getExecutionId, executionId);
|
||||||
|
}
|
||||||
List<ProcessEsAnnualInit> list = list(wrapper);
|
List<ProcessEsAnnualInit> list = list(wrapper);
|
||||||
annualInitData.setDataList(list);
|
annualInitData.setDataList(list);
|
||||||
|
if (list.isEmpty()) {
|
||||||
|
throw new JeroBootException("无法获取数据,请重试。");
|
||||||
|
}
|
||||||
// 将对应数据找出来
|
// 将对应数据找出来
|
||||||
this.approvalProcess(annualInitData, false);
|
this.approvalProcess(annualInitData, false);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user