diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java index 8e78775..c2b8404 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityTemplateController.java @@ -203,10 +203,17 @@ public class TbsActivityTemplateController { */ @GetMapping("/listBySupplier/{id}") public R> listBySupplier(@PathVariable("id") String id){ + // 罗列所有可见的模板 LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); - lqw.eq(TbsActivityTemplate::getBizRegionFlag,0).or().eq(TbsActivityTemplate::getSaleRegionFlag,0); + lqw.eq(TbsActivityTemplate::getBizRegionFlag,0) + .or() + .eq(TbsActivityTemplate::getSaleRegionFlag,0) + .or() + .eq(TbsActivityTemplate::getCustomFlag,0) + ; List activityTemplateList = tbsActivityTemplateService.list(lqw); List tmpIds = activityTemplateList.stream().map(TbsActivityTemplate::getId).collect(Collectors.toList()); + // 过滤客户仅可见的模板 List templateRegions = tbsActivityTemplateRegionService.getTemplateIds(id,tmpIds); List templateIds = templateRegions.stream().map(TbsActivityTemplateRegion::getTemplateId) .distinct().collect(Collectors.toList()); diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityTemplate.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityTemplate.java index 33c0d49..690d319 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityTemplate.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/TbsActivityTemplate.java @@ -55,6 +55,9 @@ public class TbsActivityTemplate implements Serializable { @NotNull(message = "行政区域标识:0-全部可见;1-部分可见;2-全部不可不能为空") private Integer bizRegionFlag; + /** 客户标识:0-全部可见;1-部分可见;2-全部不可 */ + private Integer customFlag; + /** 合同类型:0->无;1->有合同 */ private Integer contractFlag; diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityTemplateBo.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityTemplateBo.java index 8309c9a..d7cfda5 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityTemplateBo.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsActivityTemplateBo.java @@ -53,6 +53,9 @@ public class TbsActivityTemplateBo implements Serializable { /** 行政区域标识:0-全部可见;1-部分可见;2-全部不可 */ private Integer bizRegionFlag; + /** 客户标识:0-全部可见;1-部分可见;2-全部不可 */ + private Integer customFlag; + /** 合同类型:0->无;1->有合同 */ private Integer contractFlag; @@ -62,6 +65,9 @@ public class TbsActivityTemplateBo implements Serializable { /** 销售区域id列表 */ private List bizRegionIds; + /** 客户id列表 */ + private List customerIds; + /** 开始时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") diff --git a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityTemplateServiceImpl.java b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityTemplateServiceImpl.java index f52d3ca..a413673 100644 --- a/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityTemplateServiceImpl.java +++ b/cms-modules/cms-system/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityTemplateServiceImpl.java @@ -3,6 +3,8 @@ package com.qs.serve.modules.tbs.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qs.serve.common.exception.Assert; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.service.BmsSupplierService; import com.qs.serve.modules.sys.common.AuthContextUtils; import com.qs.serve.framework.base.util.CollectionUtil; import com.qs.serve.common.utils.CopierUtil; @@ -43,6 +45,7 @@ public class TbsActivityTemplateServiceImpl extends ServiceImpl customerList = bizSupplierService.listByIds(templateBo.getCustomerIds()); + List templateRegions = customerList.stream().map(reg->{ + TbsActivityTemplateRegion templateRegion = new TbsActivityTemplateRegion(); + templateRegion.setTemplateId(template.getId()); + templateRegion.setType("cus"); + templateRegion.setRegionId(reg.getId()); + templateRegion.setRegionName(reg.getName()); + templateRegion.setRegionCode(reg.getCode()); + templateRegion.setRegionLevel(0); + return templateRegion; + }).collect(Collectors.toList()); + templateRegionList.addAll(templateRegions); + } if(CollectionUtil.isNotEmpty(templateRegionList)){ templateRegionService.saveBatch(templateRegionList); }