From 60604de92d01829e09805a9f104bf6244971f38f Mon Sep 17 00:00:00 2001 From: Yen Date: Fri, 24 Nov 2023 15:41:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=BF=E7=AD=96=E5=90=8C=E6=AD=A5=E5=88=B0?= =?UTF-8?q?=E9=94=80=E8=B7=AF=E9=80=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tzc/controller/TzcPolicyController.java | 14 ++++++++++++-- .../modules/tzc/entity/dto/PolicyItemDto.java | 3 ++- .../service/TzcPolicyApplicationService.java | 2 ++ .../impl/TzcPolicyApplicationServiceImpl.java | 19 ++++++++++++++++++- .../impl/TzcPolicyOperationServiceImpl.java | 7 +++++++ 5 files changed, 41 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java b/src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java index 7dd43063..5bdbc296 100644 --- a/src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java +++ b/src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java @@ -71,8 +71,18 @@ public class TzcPolicyController { private TbsBudgetLogService budgetLogService; @GetMapping("succ") - public R succ(Long id){ - policyApplicationService.syncPolicyItem(id); + public R succ(Long id,String all){ + if("all".equals(all)){ + LambdaQueryWrapper itemLqw = new LambdaQueryWrapper<>(); + itemLqw.select(TzcPolicyItem::getId); + itemLqw.eq(TzcPolicyItem::getPolicyItemStatus,TzPolicyItemStatus.Status_1_PassSuccess); + List policyItemList = tzcPolicyItemService.list(itemLqw); + for (TzcPolicyItem policyItem : policyItemList) { + policyApplicationService.syncPolicyItem(policyItem.getId()); + } + }else { + policyApplicationService.syncPolicyItem(id); + } return R.ok(); } diff --git a/src/main/java/com/qs/serve/modules/tzc/entity/dto/PolicyItemDto.java b/src/main/java/com/qs/serve/modules/tzc/entity/dto/PolicyItemDto.java index b351a245..70746735 100644 --- a/src/main/java/com/qs/serve/modules/tzc/entity/dto/PolicyItemDto.java +++ b/src/main/java/com/qs/serve/modules/tzc/entity/dto/PolicyItemDto.java @@ -5,6 +5,7 @@ import lombok.Data; import java.math.BigDecimal; import java.util.Date; import java.util.List; +import java.util.Set; /** * @author YenHex @@ -33,6 +34,6 @@ public class PolicyItemDto { /** 优惠上限 */ private BigDecimal discountMax; - List invCodeList; + Set invCodeList; } diff --git a/src/main/java/com/qs/serve/modules/tzc/service/TzcPolicyApplicationService.java b/src/main/java/com/qs/serve/modules/tzc/service/TzcPolicyApplicationService.java index 2059c2aa..c5cbb32e 100644 --- a/src/main/java/com/qs/serve/modules/tzc/service/TzcPolicyApplicationService.java +++ b/src/main/java/com/qs/serve/modules/tzc/service/TzcPolicyApplicationService.java @@ -19,6 +19,8 @@ public interface TzcPolicyApplicationService { */ void syncPolicyItem(Long policyItemId); + void syncPolicy(Long policyId); + /** * 创建费用占用结果 * @param policyId diff --git a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java index cb7992c0..462ca032 100644 --- a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java @@ -96,9 +96,23 @@ public class TzcPolicyApplicationServiceImpl implements TzcPolicyApplicationServ private final BmsRegionMapper regionMapper; private final BmsRegion2Mapper region2Mapper; + @Override + public void syncPolicy(Long policyId) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TzcPolicyItem::getPolicyId,policyId); + wrapper.select(TzcPolicyItem::getId); + List list = tzcPolicyItemService.list(wrapper); + for (TzcPolicyItem policyItem : list) { + this.syncPolicyItem(policyItem.getId()); + } + } + @Override public void syncPolicyItem(Long policyItemId) { TzcPolicyItem policyItem = tzcPolicyItemService.getById(policyItemId); + if(policyItem==null||!policyItem.getPolicyItemStatus().equals(TzPolicyItemStatus.Status_1_PassSuccess)){ + return; + } PolicyItemDto policyItemDto = new PolicyItemDto(); policyItemDto.setTitle(policyItem.getTitle()); policyItemDto.setCusCode(policyItem.getSupplierCode()); @@ -111,7 +125,7 @@ public class TzcPolicyApplicationServiceImpl implements TzcPolicyApplicationServ //加载InvCode List policyGoods = tzcPolicyGoodsService.listByItemId(policyItemId); Map> policyGoodsMap = policyGoods.stream().collect(Collectors.groupingBy(TzcPolicyGoods::getTargetType)); - List invCodes = new ArrayList<>(); + Set invCodes = new HashSet<>(); for (String goodType : policyGoodsMap.keySet()) { List policyGoodsList = policyGoodsMap.get(goodType); List targetIds = policyGoodsList.stream().map(TzcPolicyGoods::getTargetId).collect(Collectors.toList()); @@ -136,6 +150,9 @@ public class TzcPolicyApplicationServiceImpl implements TzcPolicyApplicationServ invCodes.addAll(invCodeList); } } + if(invCodes.size()<1){ + return; + } policyItemDto.setInvCodeList(invCodes); //保存异步处理的 R result = xiaoLuTonService.savePolicyItem(policyItemDto); diff --git a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyOperationServiceImpl.java b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyOperationServiceImpl.java index 581040d3..87572b26 100644 --- a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyOperationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyOperationServiceImpl.java @@ -40,6 +40,7 @@ public class TzcPolicyOperationServiceImpl implements SeeYonOperationService { private final TzcPolicyService tzcPolicyService; private final TzcPolicyItemService tzcPolicyItemService; private final TbsBudgetLogService tbsBudgetLogService; + private final TzcPolicyApplicationServiceImpl tzcPolicyApplicationService; @Override public String getTargetId(TbsAffairCommitBo affairCommit) { @@ -96,6 +97,12 @@ public class TzcPolicyOperationServiceImpl implements SeeYonOperationService { LambdaQueryWrapper itemLqw = new LambdaQueryWrapper<>(); itemLqw.eq(TzcPolicyItem::getPolicyId,tzcPolicy.getId()); tzcPolicyItemService.update(policyItem,itemLqw); + //同步到销路通表 + try { + tzcPolicyApplicationService.syncPolicy(tzcPolicy.getId()); + } catch (Exception e) { + e.printStackTrace(); + } return R.ok(); }