diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetCostResult.java b/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetCostResult.java index 7e09d9e8..c08e76c8 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetCostResult.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/dto/TbsBudgetCostResult.java @@ -31,7 +31,4 @@ public class TbsBudgetCostResult { /** 表数据封装 */ private TbsBudgetTableVo tableData; - /** 匹配状态:0-无匹配的预算;1-有匹配的预算 */ - private Integer state; - } diff --git a/src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java b/src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java index d70586c6..7ce30d6b 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/TbsActivityApplicationService.java @@ -64,11 +64,6 @@ public class TbsActivityApplicationService { if(budgetIds.size()<1&&throwEx){ Assert.throwEx("无匹配的预算"); } - if(budgetIds.size()<1){ - TbsBudgetCostResult result = new TbsBudgetCostResult(); - result.setState(0); - return result; - } //加载预算占用历史 List scheduleItemBudgetIds = scheduleItemList.stream().map(TbsScheduleItemBudget::getId).collect(Collectors.toList()); List hisBudgetCostItemList = tbsBudgetCostItemService.listByScheduleItemBudgetIds(scheduleItemBudgetIds,null); @@ -85,11 +80,13 @@ public class TbsActivityApplicationService { List activityCenterGoodsList = new ArrayList<>(); activityService.initCenterGoods(activityBo,subjectMap,centerDtoMap,checkAmountMap,activityGoodsList,activityCenterGoodsList,null,new TbsActivity(),supplier); // 加载所有条件 - LambdaQueryWrapper budgetLqw = new LambdaQueryWrapper<>(); - budgetLqw.in(TbsBudget::getId,budgetIds); - budgetLqw.eq(TbsBudget::getBudgetState,1); - List budgetList = tbsBudgetMapper.selectList(budgetLqw); - + List budgetList = new ArrayList<>(); + if(budgetIds.size()>0){ + LambdaQueryWrapper budgetLqw = new LambdaQueryWrapper<>(); + budgetLqw.in(TbsBudget::getId,budgetIds); + budgetLqw.eq(TbsBudget::getBudgetState,1); + budgetList = tbsBudgetMapper.selectList(budgetLqw); + } List noConditionBudgetList = new ArrayList<>(); boolean budgetNoCondition = this.loadConditionByBudgetsAndMatch(budgetList, noConditionBudgetList); //预算条件需包含活动条件, Map结构:活动id->满足的预算id列表 @@ -110,7 +107,6 @@ public class TbsActivityApplicationService { List budgetUnMatchList = actUnMatchList.stream() .map(TbsActivityCenterGoods::toBudgetCostItem).collect(Collectors.toList()); TbsBudgetCostResult result = new TbsBudgetCostResult(); - result.setState(1); result.setBudgetMatchList(budgetMatchList); result.setBudgetUnMatchList(budgetUnMatchList); return result; @@ -172,7 +168,7 @@ public class TbsActivityApplicationService { * @param counterMap 历史预算占用 * @param actMatchList 匹配预算占用的费用(含超支预算) * @param actUnMatchList 没有匹配预算的费用 - * @param activityAllowBudgetIds 满足当前活动项的费用idMap + * @param allowBudgetIds 满足当前活动项的费用idMap */ private void matchActivityMain(TbsActivityCenterGoods activityCostItem, Boolean throwEx, @@ -184,9 +180,7 @@ public class TbsActivityApplicationService { Map counterMap, final List actMatchList, final List actUnMatchList, - final List activityAllowBudgetIds) { - //过滤满全条件的预算 - List allowBudgetIds = activityAllowBudgetIds; + final List allowBudgetIds) { List budgetList = allBudgetList.stream().filter(obj->allowBudgetIds.contains(obj.getId())).collect(Collectors.toList()); //PS:排序规则:优先为时间条件,其次匹配品牌条件 //按品类条件,提取可用预算(列表已按小维度到大维度排列)