diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOutsourceProjectServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOutsourceProjectServiceImpl.java index 6855e6e..986c75f 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOutsourceProjectServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOutsourceProjectServiceImpl.java @@ -378,7 +378,7 @@ //草稿 case ApprovalStatusEnum.DRAFT: list = projectMapper.selectDraftListForApproval(page, request); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.DRAFT); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.DRAFT, request.getTypeFlag()); break; //待审批,该状态维护在flowable中 case ApprovalStatusEnum.TO_BE_APPROVED: @@ -388,7 +388,7 @@ } if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.TO_BE_APPROVED); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.TO_BE_APPROVED, request.getTypeFlag()); //DTO根据业务主键补全taskId approvalList.forEach(approval -> { toBeApprovedList.forEach(toBeApprovedDTO -> { @@ -406,7 +406,7 @@ businessKeys = baseApprovalService.getInApprovedList(request.getFormId()); if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.IN_APPROVED); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.IN_APPROVED, request.getTypeFlag()); } break; //已通过,该状态维护在flowable @@ -414,7 +414,7 @@ businessKeys = baseApprovalService.getPassedList(request.getFormId()); if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.PASSED); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.PASSED, request.getTypeFlag()); } break; //未通过(包括拒绝、驳回,拒绝为直接删除实例,驳回为驳回到起点),该状态维护在flowable @@ -423,12 +423,12 @@ List rejectBusinessKey = baseApprovalService.getFailedRejectList(request.getFormId()); //未通过-驳回 if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.FAILED); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.FAILED, request.getTypeFlag()); } List rejectApprovalList = new ArrayList<>(); if (!CollectionUtils.isEmpty(rejectBusinessKey)) { List rejectList = projectMapper.selectBatchForApproval(page, request, rejectBusinessKey); - rejectApprovalList = handleApprovalListResponse(approvalList, rejectList, ApprovalStatusEnum.FAILED_REJECT); + rejectApprovalList = handleApprovalListResponse(approvalList, rejectList, ApprovalStatusEnum.FAILED_REJECT, request.getTypeFlag()); } //合并未通过-拒绝和未通过-驳回 approvalList.addAll(rejectApprovalList); @@ -438,7 +438,7 @@ businessKeys = baseApprovalService.getCanceledList(request.getFormId()); if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.CANCELED); + approvalList = handleApprovalListResponse(approvalList, list, ApprovalStatusEnum.CANCELED, request.getTypeFlag()); } break; //全部 @@ -451,29 +451,29 @@ } if (!CollectionUtils.isEmpty(businessKeys)) { list = projectMapper.selectBatchForApproval(page, request, businessKeys); - approvalList = handleAllApprovalListResponse(approvalList, list, allApproveList); + approvalList = handleAllApprovalListResponse(approvalList, list, allApproveList, request.getTypeFlag()); } break; } return approvalList; } - private List handleApprovalListResponse(List approvalList, List list, String status) { + private List handleApprovalListResponse(List approvalList, List list, String status, Integer typeFlag) { approvalList = ConvertUtils.sourceToTarget(list, OutsourceProjectApprovalListResponse.class); approvalList.stream().forEach(result -> { //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - if(StringUtils.isNotEmpty(result.getApplyApprovalStatus()) && StringUtils.isEmpty(result.getCheckApprovalStatus())) { + if(1 == typeFlag) { + result.setApplyApprovalStatus(status); result.setApplyApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - } - if(StringUtils.isNotEmpty(result.getCheckApprovalStatus())){ + } else if(2 == typeFlag) { + result.setCheckApprovalStatus(status); result.setCheckApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); } - }); return approvalList; } - private List handleAllApprovalListResponse(List approvalList, List list, List allApproveList) { + private List handleAllApprovalListResponse(List approvalList, List list, List allApproveList, Integer typeFlag) { Map taskMap = new HashMap<>(); approvalList = ConvertUtils.sourceToTarget(list, OutsourceProjectApprovalListResponse.class); allApproveList.forEach(allApprove -> { @@ -481,10 +481,13 @@ }); //状态补全 approvalList.forEach(approval -> { - approval.setApplyApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApplyApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - approval.setCheckApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setCheckApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); + if(1 == typeFlag) { + approval.setApplyApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); + approval.setApplyApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); + } else if(2 == typeFlag) { + approval.setCheckApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); + approval.setCheckApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); + } }); //排序 return approvalList.stream().sorted(Comparator.comparing(OutsourceProjectApprovalListResponse::getCreateTime).reversed()).collect(Collectors.toList());