Эх сурвалжийг харах

feat: 修改领取积分包但是没有提交任务计算逻辑

shc 3 жил өмнө
parent
commit
d458dbe61b

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

@@ -929,6 +929,7 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 			//部分终止,收回剩余积分值,没有审核的任务继续审核
 			//先更新任务状态为已审核
 			int resSum = 0;//收回值
+			boolean pickedButNotSubmitted = false;
 			if (CollUtil.isNotEmpty(scorestatusList)) {
 				wmScorePackage.setUserNum(scorestatusList.size());
 				for (WmScorePackageStatus wmScorePackageStatus : scorestatusList) {
@@ -944,14 +945,16 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 						if (wmScorePackage.getPackageType1().equals("1") || wmScorePackage.getPackageType1().equals("5")) {//定额
 							//这个用户还没有做任务时,积分值设为0
 							wmScorePackageStatus.setUserScore("0");
-							wmScorePackage.setScore(wmScorePackage.getScore() - Integer.valueOf(wmScorePackageStatus.getUserScore()));
-							resSum += Integer.valueOf(wmScorePackageStatus.getUserScore());
+							wmScorePackage.setScore(wmScorePackage.getScore() - Integer.parseInt(wmScorePackageStatus.getUserScore()));
+							resSum += Integer.parseInt(wmScorePackage.getUserScore());
+							// 已终止
+							wmScorePackage.setScorePackageStatus("6");
+							pickedButNotSubmitted = true;
 						} else {//2,3 定量
 							//定量收回任务个数
 							//定量收回任务个数
 							wmScorePackageStatus.setTaskNum(0);
 						}
-						//resSum=wmScorePackage.getScore();
 						wmScorePackage.setPackageFinishStatus("1");//已完成
 
 					} else {
@@ -1021,7 +1024,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 					wmScorePackageStatus.setTaskAddFlag("0");
 					if (all) {
 						wmScorePackageStatus.setEnableType("1");
-						wmScorePackageStatus.setEnableType("1");
 					} else {
 						//更新接单数据
 						wmScorePackageStatus.setEnableType("2");
@@ -1031,7 +1033,9 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 				}
 				//更新积分包的积分总值
 				if (resSum > 0) {
-					wmScorePackage.setScore(wmScorePackage.getScore() - resSum);
+					if (!pickedButNotSubmitted){
+						wmScorePackage.setScore(wmScorePackage.getScore() - resSum);
+					}
 					if (wmScorePackage.getPackageType1().equals("5")) {
 						// 如果是患者教育,则需要更新下个人积分包值
 						wmScorePackage.setUserScore(String.valueOf(Integer.parseInt(wmScorePackage.getUserScore()) - resSum));