From 666045f7d2d90cee9d3d9d4bcb749015cf6faa9f Mon Sep 17 00:00:00 2001 From: Yen Date: Tue, 16 May 2023 16:49:24 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BmsRegionUserController.java | 6 + .../BmsSupplierChannelPointController.java | 129 ++++++++++++++++++ .../bms/controller/BmsSupplierController.java | 3 + .../bms/entity/BmsSupplierChannel.java | 8 ++ .../impl/HisUserSupplierServiceImpl.java | 2 +- .../modules/tbs/common/dto/CompensateDTO.java | 14 ++ .../controller/TbsCostApplyController.java | 14 ++ .../wx/controller/WxFormPushController.java | 9 +- .../serve/modules/wx/entity/WxFormPush.java | 5 + .../mapper/bms/BmsSupplierChannelMapper.xml | 6 + .../resources/mapper/wx/WxFormPushMapper.xml | 1 + 11 files changed, 192 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierChannelPointController.java create mode 100644 src/main/java/com/qs/serve/modules/tbs/common/dto/CompensateDTO.java diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsRegionUserController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsRegionUserController.java index 97989198..95977092 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsRegionUserController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsRegionUserController.java @@ -19,6 +19,7 @@ import com.qs.serve.modules.bms.service.BmsChannelPointService; import com.qs.serve.modules.bms.service.BmsRegion2Service; import com.qs.serve.modules.bms.service.BmsRegionService; import com.qs.serve.modules.his.service.HisUserChannelPointService; +import com.qs.serve.modules.his.service.HisUserSupplierService; import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.service.SysUserService; import lombok.AllArgsConstructor; @@ -53,6 +54,7 @@ public class BmsRegionUserController { private SysUserService sysUserService; private HisUserChannelPointService hisUserChannelPointService; private BmsChannelPointService channelPointService; + private HisUserSupplierService hisUserSupplierService; /** @@ -186,6 +188,8 @@ public class BmsRegionUserController { hisUserChannelPointService.flushBatchUserRegion(userIds,pointIds,1,pathIds); } } + //清空临时表 + hisUserSupplierService.cleanTable(); return R.ok(); } @@ -215,6 +219,7 @@ public class BmsRegionUserController { regionUser.setId(id); regionUser.setMasterFlag(0); bmsRegionUserService.updateById(regionUser); + hisUserSupplierService.cleanTable(); return R.ok(); } @@ -239,6 +244,7 @@ public class BmsRegionUserController { } } bmsRegionUserService.removeByIds(idsLong); + hisUserSupplierService.cleanTable(); return R.ok(); } diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierChannelPointController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierChannelPointController.java new file mode 100644 index 00000000..7b0428a6 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierChannelPointController.java @@ -0,0 +1,129 @@ +package com.qs.serve.modules.bms.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.bms.entity.BmsChannel; +import com.qs.serve.modules.bms.entity.BmsChannelPoint; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.entity.BmsSupplierChannel; +import com.qs.serve.modules.bms.entity.bo.BmsSupplierChannelBo; +import com.qs.serve.modules.bms.service.BmsChannelPointService; +import com.qs.serve.modules.bms.service.BmsChannelService; +import com.qs.serve.modules.bms.service.BmsSupplierChannelService; +import com.qs.serve.modules.bms.service.BmsSupplierService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 基础档案 客户渠道关系2 + * @author YenHex + * @since 2022-11-03 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("bms/supplierRelate") +public class BmsSupplierChannelPointController { + + private BmsSupplierChannelService bmsSupplierChannelService; + private BmsChannelService bmsChannelService; + private BmsChannelPointService bmsChannelPointService; + private BmsSupplierService bmsSupplierService; + + + /** + * 供应商ID加载渠道列表 + * @param supplierId + * @return + */ + @GetMapping("/listChannelBySupplier") + public R> listChannelBySupplier(String supplierId,BmsChannel query){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BmsSupplierChannel::getSupplierId,supplierId); + List supplierChannels = bmsSupplierChannelService.list(lqw); + List channelIds = supplierChannels.stream().map(BmsSupplierChannel::getChannelId).distinct().collect(Collectors.toList()); + if(channelIds.size()<1){ + return R.ok(); + } + LambdaQueryWrapper lqw2 = new LambdaQueryWrapper<>(query); + lqw2.in(BmsChannel::getId,channelIds); + List bmsChannels = bmsChannelService.list(lqw2); + return R.ok(bmsChannels); + } + + /** + * 供应商ID加载渠道列表 + * @param supplierId + * @return + */ + @GetMapping("/pageChannelBySupplier") + public R> pageChannelBySupplier(String supplierId,BmsChannel query){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BmsSupplierChannel::getSupplierId,supplierId); + List supplierChannels = bmsSupplierChannelService.list(lqw); + List channelIds = supplierChannels.stream().map(BmsSupplierChannel::getChannelId).distinct().collect(Collectors.toList()); + if(channelIds.size()<1){ + return R.byEmptyList(); + } + PageUtil.startPage(); + LambdaQueryWrapper lqw2 = new LambdaQueryWrapper<>(query); + lqw2.in(BmsChannel::getId,channelIds); + List bmsChannels = bmsChannelService.list(lqw2); + return R.byPageHelperList(bmsChannels); + } + + /** + * 供应商ID加载网点列表 + * @param supplierId + * @return + */ + @GetMapping("/listPointBySupplier") + public R> listPointBySupplier(String supplierId,BmsChannelPoint query){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BmsSupplierChannel::getSupplierId,supplierId); + List supplierChannels = bmsSupplierChannelService.list(lqw); + List channelIds = supplierChannels.stream().map(BmsSupplierChannel::getChannelId).distinct().collect(Collectors.toList()); + if(channelIds.size()<1){ + return R.ok(); + } + LambdaQueryWrapper lqw2 = new LambdaQueryWrapper<>(query); + lqw2.in(BmsChannelPoint::getChannelId,channelIds); + List channelPoints = bmsChannelPointService.list(lqw2); + return R.ok(channelPoints); + } + + /** + * 供应商ID加载网点列表 + * @param supplierId + * @return + */ + @GetMapping("/pagePointBySupplier") + public R> pagePointBySupplier(String supplierId,BmsChannelPoint query){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BmsSupplierChannel::getSupplierId,supplierId); + List supplierChannels = bmsSupplierChannelService.list(lqw); + List channelIds = supplierChannels.stream().map(BmsSupplierChannel::getChannelId).distinct().collect(Collectors.toList()); + if(channelIds.size()<1){ + return R.byEmptyList(); + } + PageUtil.startPage(); + LambdaQueryWrapper lqw2 = new LambdaQueryWrapper<>(query); + lqw2.in(BmsChannelPoint::getChannelId,channelIds); + List channelPoints = bmsChannelPointService.list(lqw2); + return R.byPageHelperList(channelPoints); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java index 5de29c5c..c8a9ca68 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java @@ -351,6 +351,8 @@ public class BmsSupplierController { bmsSupplier.setId(supplier.getId()); bmsSupplier.setOtherUserIds(otherArr); bmsSupplierService.updateById(bmsSupplier); + //清空临时表 + hisUserSupplierService.cleanTable(); initSupplierOtherInfo(Arrays.asList(supplierId.toString())); return R.ok(); } @@ -431,6 +433,7 @@ public class BmsSupplierController { } bmsSupplierService.edit(param); redisService.remove(RedisCacheKeys.SUPPLIER_RELATE_TREE); + hisUserSupplierService.cleanTable(); return R.ok(); } diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierChannel.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierChannel.java index 866778ac..fd546b75 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierChannel.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierChannel.java @@ -71,6 +71,14 @@ public class BmsSupplierChannel implements Serializable { @TableField(exist = false) private String channelName; + /** 渠道编码 */ + @TableField(exist = false) + private String channelCode; + + /** 渠道编码 */ + @TableField(exist = false) + private String channelType; + /** 客户名称 */ @TableField(exist = false) private String supplierName; diff --git a/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java b/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java index 3a8adf3c..598ac2f4 100644 --- a/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java @@ -127,7 +127,7 @@ public class HisUserSupplierServiceImpl extends ServiceImpl region2List = saleRegionsMap.get(level); List region2Ids = region2List.stream().map(BmsRegion2::getId).collect(Collectors.toList()); - toHisUserSupplier(userSuppliers,1,region2Ids,1,userId); + toHisUserSupplier(userSuppliers,1,region2Ids,level,userId); } } if(userSuppliers.size()>0){ diff --git a/src/main/java/com/qs/serve/modules/tbs/common/dto/CompensateDTO.java b/src/main/java/com/qs/serve/modules/tbs/common/dto/CompensateDTO.java new file mode 100644 index 00000000..8830ddaa --- /dev/null +++ b/src/main/java/com/qs/serve/modules/tbs/common/dto/CompensateDTO.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.tbs.common.dto; + +import lombok.Data; + +/** + * @author YenHex + * @since 2023/5/16 + */ +@Data +public class CompensateDTO { + + String id; + +} diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java index 2464db2a..5a2054ea 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java @@ -27,6 +27,7 @@ import com.qs.serve.modules.sys.service.SysUserSalesService; import com.qs.serve.modules.sys.service.SysUserService; import com.qs.serve.modules.tbs.common.TbsCostApplyState; import com.qs.serve.modules.tbs.common.TbsSeeYonConst; +import com.qs.serve.modules.tbs.common.dto.CompensateDTO; import com.qs.serve.modules.tbs.common.util.TbsBudgetCostUtil; import com.qs.serve.modules.tbs.entity.*; import com.qs.serve.modules.tbs.entity.bo.TbsActivityBo; @@ -489,5 +490,18 @@ public class TbsCostApplyController { return R.error("远程调用失败"); } + /** + * 补偿接口 + * @param param + * @return + */ + @PostMapping("/compensate") + @SysLog(module = SystemModule.Budget, title = "费用申请", biz = BizType.DELETE) + public R compensateOAResult(@RequestBody CompensateDTO param){ + seeYonService.testConnection(); + + return R.ok(); + } + } diff --git a/src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java b/src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java index 77b79c1d..c95763f0 100644 --- a/src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java +++ b/src/main/java/com/qs/serve/modules/wx/controller/WxFormPushController.java @@ -112,6 +112,7 @@ public class WxFormPushController { return R.error("已发布的消息不能再次发布"); } entity.setStatus("1"); + entity.setPublishTime(LocalDateTime.now()); boolean result = wxFormPushService.updateById(entity); LambdaQueryWrapper userlqw = new LambdaQueryWrapper<>(); userlqw.eq(WxFormPushUser::getFormPushId,entity.getId()); @@ -154,7 +155,7 @@ public class WxFormPushController { * @return */ @PostMapping("/compensate") - @SysLog(module = SystemModule.Verification, title = "表单推送发布", biz = BizType.UPDATE) + @SysLog(module = SystemModule.Verification, title = "表单推送补偿通知", biz = BizType.UPDATE) public R compensate(@RequestBody WxFormPushBo param){ String id = param.getId(); List userIds = param.getUserIds(); @@ -163,9 +164,8 @@ public class WxFormPushController { return R.error("未发布"); } LambdaQueryWrapper userlqw = new LambdaQueryWrapper<>(); - if(StringUtils.hasText(id)){ - userlqw.eq(WxFormPushUser::getFormPushId,entity.getId()); - }else { + userlqw.eq(WxFormPushUser::getFormPushId,entity.getId()); + if(CollectionUtil.isNotEmpty(userIds)) { userlqw.in(WxFormPushUser::getUserId,userIds); } userlqw.eq(WxFormPushUser::getPushStatus,0); @@ -250,6 +250,7 @@ public class WxFormPushController { } entity.setPreNotifyStatus(entity.getPreNotifyTime()==null?0:1); if(null==entity.getId()) { + entity.setPublishTime(LocalDateTime.now()); wxFormPushService.save(entity); }else{ WxFormPush ori_entity = wxFormPushService.getById(entity.getId()); diff --git a/src/main/java/com/qs/serve/modules/wx/entity/WxFormPush.java b/src/main/java/com/qs/serve/modules/wx/entity/WxFormPush.java index e0f58cb0..224bd899 100644 --- a/src/main/java/com/qs/serve/modules/wx/entity/WxFormPush.java +++ b/src/main/java/com/qs/serve/modules/wx/entity/WxFormPush.java @@ -87,6 +87,11 @@ public class WxFormPush implements Serializable { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime preNotifyTime; + /** 发布时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime publishTime; + /** 附件ids */ @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR) private String[] attachIds; diff --git a/src/main/resources/mapper/bms/BmsSupplierChannelMapper.xml b/src/main/resources/mapper/bms/BmsSupplierChannelMapper.xml index d54a4250..387ca466 100644 --- a/src/main/resources/mapper/bms/BmsSupplierChannelMapper.xml +++ b/src/main/resources/mapper/bms/BmsSupplierChannelMapper.xml @@ -15,6 +15,8 @@ + + @@ -33,6 +35,8 @@