撤回按钮,发起人和admin可见,发起人在第一个人没有审核的情况下可以撤回,admin在任意时候都能撤回

master
Harry Yang 2023-01-03 20:16:28 +08:00
parent 326a3343ae
commit c1fe70180f
1 changed files with 12 additions and 3 deletions
src/main/java/cn/palmte/work/controller/backend

View File

@ -655,6 +655,11 @@ public class ProcessController {
if (!Objects.equals(admin.getId(), applyPersonId)) {
throw ErrorMessageException.failed("流程不属于自己");
}
List<ProjectTaskRecord> projectTaskRecords = getProjectTaskRecords(id, process.getProcessType());
if (projectTaskRecords.size() > 1) {
// 有多个人审核过
throw ErrorMessageException.failed("流程已经在审核中,不能撤回");
}
processService.revoke(id);
}
}
@ -690,10 +695,9 @@ public class ProcessController {
// ret.add(create("2021-02-03 22:01:12", "系统产品集成部尹浩审核已通过"));
// ret.add(create("2021-03-03 22:05:12", "财务部主管何丹审核已通过"));
ProjectProcess process = processService.getById(id);
ProjectProcess process = obtainProjectProcess(id);
ProcessType processType = process.getProcessType();
List<ProjectTaskRecord> projectTaskRecords = projectTaskRecordService.listV2(id,
processType == ProcessType.sale_contract ? ActProjectTypeEnum.SALE_CONTRACT : ActProjectTypeEnum.BUSINESS_PURCHASE);
List<ProjectTaskRecord> projectTaskRecords = getProjectTaskRecords(id, processType);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return projectTaskRecords.stream()
.map(item -> {
@ -702,6 +706,11 @@ public class ProcessController {
}).collect(Collectors.toList());
}
private List<ProjectTaskRecord> getProjectTaskRecords(int id, ProcessType processType) {
return projectTaskRecordService.listV2(id,
processType == ProcessType.sale_contract ? ActProjectTypeEnum.SALE_CONTRACT : ActProjectTypeEnum.BUSINESS_PURCHASE);
}
private Map<String, String> create(String timestamp, String content) {
Map<String, String> map = new HashMap<>();
map.put("content", content);