diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java index f11fade6..c85a89ff 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java @@ -10,14 +10,17 @@ import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; +import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler; import com.qs.serve.modules.bms.entity.BmsSupplier; import lombok.Data; +import org.apache.ibatis.type.JdbcType; import org.hibernate.validator.constraints.Length; import org.springframework.format.annotation.DateTimeFormat; import javax.validation.constraints.NotNull; import javax.validation.constraints.NotBlank; import java.time.Period; +import java.time.temporal.ChronoUnit; import java.util.List; /** * 费用活动 实体类 @@ -186,6 +189,8 @@ public class TbsActivity implements Serializable { /** 模板ID */ private Long templateId; + private String templateBudgetIds; + /** 产品类型 */ @TableField(exist = false) private String goodsType; diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityBo.java b/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityBo.java index a825878b..65a5ec4b 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityBo.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityBo.java @@ -108,5 +108,7 @@ public class TbsActivityBo implements Serializable { /** 模板值 */ private String templateValue; + private List templateBudgetIds; + } diff --git a/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetApplicationService.java b/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetApplicationService.java index 22c6e5aa..207eeac4 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetApplicationService.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/TbsBudgetApplicationService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.model.consts.SysConfigKey; import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.CollectionUtil; +import com.qs.serve.common.util.StringUtils; import com.qs.serve.modules.sys.service.SysConfigService; import com.qs.serve.modules.tbs.common.TbsGoodsType; import com.qs.serve.modules.tbs.common.dto.CostSortWrapper; @@ -762,6 +763,12 @@ public class TbsBudgetApplicationService { for (TbsActivity activity : activityList) { List budgetItemList = tbsScheduleItemBudgetService .betweenDateList(activity.getPreStartDate(),activity.getPreEndDate()); + + if(StringUtils.hasText(activity.getTemplateBudgetIds())){ + List budgetIdsList = Arrays.stream(activity.getTemplateBudgetIds().split(",")).map(Long::parseLong) + .collect(Collectors.toList()); + budgetItemList = budgetItemList.stream().filter(a->budgetIdsList.contains(a.getBudgetId())).collect(Collectors.toList()); + } //设置关联用于后面条件过滤 activity.setScheduleItemBudgetList(budgetItemList); if(CollectionUtil.isNotEmpty(budgetItemList)){ diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java index 7ad1ceec..62b28855 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java @@ -120,11 +120,17 @@ public class TbsActivityServiceImpl extends ServiceImpl0){ + String budgetIds = activityBo.getTemplateBudgetIds().stream() + .map(a->a.toString()).collect(Collectors.joining(",")); + activity.setTemplateBudgetIds(budgetIds); + } activity.setActStartDate(activityBo.getActStartDate()); activity.setActEndDate(activityBo.getActEndDate()); activity.setPreStartDate(activityBo.getPreStartDate());