Browse Source

feat: 个人承接剩余回收调整

lixuesong 1 year ago
parent
commit
7c41a2066e

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

@@ -2928,7 +2928,7 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 							|| StrUtil.isBlank(wmTask.getReportDrugApprovalOpinion())
 							|| StrUtil.isBlank(wmTask.getReportDrugApprovalOpinion())
 							|| StrUtil.isBlank(wmTask.getReportOneApprovalOpinion()));
 							|| StrUtil.isBlank(wmTask.getReportOneApprovalOpinion()));
 			if (pendingReportApprovalFlag) {
 			if (pendingReportApprovalFlag) {
-				throw new RuntimeException("有待审批的任务,不允许终止");
+				throw new RuntimeException("有在途任务,不允许终止");
 			}
 			}
 			// 审核通过的任务
 			// 审核通过的任务
 			List<WmTask> approvedTasks = taskList.stream()
 			List<WmTask> approvedTasks = taskList.stream()
@@ -2944,11 +2944,11 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 		// 更新积分包状态
 		// 更新积分包状态
 		WmScorePackage updateScorePackage = new WmScorePackage();
 		WmScorePackage updateScorePackage = new WmScorePackage();
 		updateScorePackage.setId(packageId);
 		updateScorePackage.setId(packageId);
-		if (UpmsType.TerminatePackageType.ALL.equals(terminatePackageType)) {
-			// 全部终止: 改为已终止
+		if (UpmsType.TerminatePackageType.ALL.equals(terminatePackageType) || approvedScore <= 0) {
+			// 全部终止/或已审核: 改为已终止
 			updateScorePackage.setScorePackageStatus(ScorePackageStatusEnum.TERMINATED.val());
 			updateScorePackage.setScorePackageStatus(ScorePackageStatusEnum.TERMINATED.val());
 		} else {
 		} else {
-			// 剩余回收: 没完成的那部分(剩余回收积分值 = 积分包值 - 审核通过的任务积分值)
+			// 剩余回收: 积分包值改为 审核通过的任务积分值
 			updateScorePackage.setScore(approvedScore);
 			updateScorePackage.setScore(approvedScore);
 			// 根据是否存在父级包,更新积分包完成状态
 			// 根据是否存在父级包,更新积分包完成状态
 			updateScorePackage.setScorePackageStatus(ScorePackageStatusEnum.TO_BE_SETTLED.val());
 			updateScorePackage.setScorePackageStatus(ScorePackageStatusEnum.TO_BE_SETTLED.val());
@@ -2993,7 +2993,7 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 			// 全部终止
 			// 全部终止
 			recoveryScore = scorePackage.getScore();
 			recoveryScore = scorePackage.getScore();
 		} else {
 		} else {
-			// 剩余回收
+			// 剩余回收(剩余回收积分值 = 积分包值 - 审核通过的任务积分值)
 			recoveryScore = scorePackage.getScore() - approvedScore;
 			recoveryScore = scorePackage.getScore() - approvedScore;
 		}
 		}
 		// 如果关联了大包 回收整包的积分值到大包的可分配积分值。如果没有关联大包,回收整包积分值到该企业的余额
 		// 如果关联了大包 回收整包的积分值到大包的可分配积分值。如果没有关联大包,回收整包积分值到该企业的余额
@@ -3053,7 +3053,7 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 			if (CollUtil.isNotEmpty(subPackages)) {
 			if (CollUtil.isNotEmpty(subPackages)) {
 				throw new RuntimeException("积分包已被分派,请联系下属CSO终止关联积分包后再进行次操作");
 				throw new RuntimeException("积分包已被分派,请联系下属CSO终止关联积分包后再进行次操作");
 			}
 			}
-			// 全部终止: 更新积分包状态为已终止
+			// 全部终止/或已分配积分为0的: 更新积分包状态为已终止
 			WmScorePackage updateEntity = new WmScorePackage();
 			WmScorePackage updateEntity = new WmScorePackage();
 			updateEntity.setId(packageId);
 			updateEntity.setId(packageId);
 			updateEntity.setPackageFinishStatus("2");
 			updateEntity.setPackageFinishStatus("2");