Prechádzať zdrojové kódy

fix: 个人承接-修改积分包可分配积分值问题

lixuesong 1 rok pred
rodič
commit
7f6fa468c5

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

@@ -1532,6 +1532,12 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 				}
 			}
 		}
+
+		WmScorePackage oldScorePackage = wmScorePackageMapper.selectById(wmScorePackage.getId());
+
+		// 积分值相比修改前的变动(相对于积分余额,增加则为负-消耗,减少则为正-回收)
+		int changeScore = oldScorePackage.getScore() - wmScorePackage.getScore();
+
 		WmScorePackage relationScorePackage = new WmScorePackage();//关联积分包
 		//判断预积分包值不能大于可分配积分值
 		if (!StringUtil.isEmpty(wmScorePackage.getRelationScoreId()) && !wmScorePackage.getRelationScoreId()
@@ -1545,10 +1551,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 
 			if (CollUtil.isNotEmpty(scorePackagekfpjf)) {
 				kfpjf = scorePackagekfpjf.get(0).getKfpjf();
-				WmScorePackage oldScorePackage = wmScorePackageMapper.selectById(wmScorePackage.getId());
-
-				// 积分值相比修改前的变动(相对于积分余额,增加则为负-消耗,减少则为正-回收)
-				int changeScore = oldScorePackage.getScore() - wmScorePackage.getScore();
 
 				if (changeScore < 0 && Math.abs(changeScore) > kfpjf) {
 					return R.failed("修改后增加的积分值不能大于可分配积分值");
@@ -1560,26 +1562,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 				}
 			}
 
-//			if (wmScorePackage2 != null) {
-//				kfpjf += wmScorePackage2.getKfpjf() == null ? 0 : wmScorePackage2.getKfpjf();
-//				WmScorePackage wmScorePackageOld = wmScorePackageMapper.selectById(wmScorePackage.getId());
-//				kfpjf += wmScorePackageOld.getScore();
-//				if (kfpjf > 0 && wmScorePackage.getScore() > kfpjf) {
-//					return R.failed("预积分包值不能大于可分配积分值");
-//				}
-//				//更新可分配积分包值
-//				if (kfpjf >= wmScorePackage.getScore()) {
-//					relationScorePackage.setId(wmScorePackage.getRelationScoreId());
-//					relationScorePackage.setKfpjf(kfpjf - wmScorePackage.getScore());
-//				}
-//
-//			}
-			//List<WmScorePackage> packageList=wmScorePackageMapper.getScorePackagekfpjf(wmScorePackage1);
-			//Integer kfpjf=0;
-//			if(null!=packageList&&packageList.size()!=0){
-//				kfpjf=packageList.get(0).getKfpjf();
-//			}
-
 		}
 		HnqzUser currentUser = SecurityUtils.getUser();
 		if (wmScorePackage.getRelationScoreId() == null || (wmScorePackage.getRelationScoreId() != null && wmScorePackage
@@ -1708,15 +1690,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 					tasktypeList.add(addTaskTypeTree49);
 					tasktypeList.add(addTaskTypeTree50);
 				}
-				// 如果存在taskTypeId=51 51,信用管理A  52,信用管理B 53,信用管理C
-//				if (tasktypeList.stream().anyMatch(wmTaskTypeTree -> "51".equals(wmTaskTypeTree.getTaskTypeId()))) {
-//					WmTaskTypeTree addTaskTypeTree51 = new WmTaskTypeTree();
-//					addTaskTypeTree51.setTaskTypeId("52");
-//					WmTaskTypeTree addTaskTypeTree52 = new WmTaskTypeTree();
-//					addTaskTypeTree52.setTaskTypeId("53");
-//					tasktypeList.add(addTaskTypeTree51);
-//					tasktypeList.add(addTaskTypeTree52);
-//				}
 
 				for (WmTaskTypeTree type : tasktypeList) {
 					WmScoreTaskType wmScoreTaskType = new WmScoreTaskType();
@@ -1785,9 +1758,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 
 		boolean relatedScoreId = StrUtil.isNotBlank(wmScorePackage.getRelationScoreId()) && Integer.parseInt(wmScorePackage.getRelationScoreId()) > 0;
 
-		// 积分值相比修改前的变动(相对于积分余额,增加则为负-消耗,减少则为正-回收)
-		int changeScore = oldPackageScore - wmScorePackage.getScore();
-
 		if (!relatedScoreId) {
 			// 没有关联上级积分包的情况
 			log.info("修改积分包,更新积分配置信息");
@@ -1834,19 +1804,6 @@ public class WmScorePackageServiceImpl extends ServiceImpl<WmScorePackageMapper,
 			newRechargeRecord.setPackageId(wmScorePackage.getId());
 			newRechargeRecord.setCreateUser(userId);
 			sysDeptRechargeRecordMapper.insert(newRechargeRecord);
-		} else {
-			if (changeScore < 0) {
-				// 变动积分值为增加,则校验上级可分配积分值
-				List<WmScorePackage> scorePackagekfpjf = this.getScorePackagekfpjf(null, null, new String[]{"0", "1", "2"},
-						new String[]{wmScorePackage.getRelationScoreId()});
-
-				if (CollUtil.isNotEmpty(scorePackagekfpjf)) {
-					int kfpjf = scorePackagekfpjf.get(0).getKfpjf();
-					if (Math.abs(changeScore) > kfpjf) {
-						throw new RuntimeException("可分配积分值不足");
-					}
-				}
-			}
 		}
 
 		return R.ok();