Prechádzať zdrojové kódy

fix: 个人承接积分包终止-任务状态判断

lixuesong 1 rok pred
rodič
commit
49af5ba30e

+ 3 - 1
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmScorePackageServiceImpl.java

@@ -2904,12 +2904,14 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 				.eq(WmTask::getEnableFlag, EnableEnum.ENABLE.val()));
 		int approvedScore = 0;
 		if (CollUtil.isNotEmpty(taskList)) {
+			// 个人包审核情况
 			boolean pendingTaskApprovalFlag = taskList.stream()
 					.anyMatch(wmTask -> TaskStatusEnum.UNDER_REVIEW.val().equals(wmTask.getTaskStatus())
 							|| TaskStatusEnum.INIT.val().equals(wmTask.getTaskStatus()));
 			if (pendingTaskApprovalFlag) {
 				throw new RuntimeException("有在途任务,不允许终止");
 			}
+			// 有上级包的情况
 			boolean pendingReportApprovalFlag = taskList.stream()
 					.filter(t -> TaskStatusEnum.APPROVED.val().equals(t.getTaskStatus()))
 					.anyMatch(wmTask -> ReportEnum.REPORT_STATUS_APPROVAL.getType().equals(wmTask.getReportDrugApprovalStatus())
@@ -2918,7 +2920,7 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 							|| ReportEnum.REPORT_STATUS_PART_APPROVAL.getType().equals(wmTask.getReportOneApprovalStatus())
 							|| StrUtil.isBlank(wmTask.getReportDrugApprovalOpinion())
 							|| StrUtil.isBlank(wmTask.getReportOneApprovalOpinion()));
-			if (pendingReportApprovalFlag) {
+			if (pendingReportApprovalFlag && parentScorePackage != null) {
 				throw new RuntimeException("有在途任务,不允许终止");
 			}
 			// 审核通过的任务