From d7b4594bbbc30dbbc62950d0b2f3b9c3f78d0fc2 Mon Sep 17 00:00:00 2001 From: Yen Date: Wed, 24 Jul 2024 11:08:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=95=86=E5=93=81=E8=A7=84=E5=88=99?= =?UTF-8?q?=E5=B1=80=E9=83=A8=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../goods/entity/bo/GoodsAccreditBo.java | 2 ++ .../impl/GoodsAccreditServiceImpl.java | 26 ++++++++++++++++--- .../service/impl/GoodsRuleServiceImpl.java | 2 +- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsAccreditBo.java b/src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsAccreditBo.java index 9ad164ce..e3ba72ab 100644 --- a/src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsAccreditBo.java +++ b/src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsAccreditBo.java @@ -40,6 +40,8 @@ public class GoodsAccreditBo { /** 不能选的客户 */ private List notInSupplierIds; + /** 是否局部更新 */ + private boolean onlyPastUpdate = false; public GoodsAccreditBo(String categoryId,String spuId,String skuId){ this.categoryId = categoryId; diff --git a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java index 1e6eef84..0fe0f8a5 100644 --- a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsAccreditServiceImpl.java @@ -63,7 +63,8 @@ public class GoodsAccreditServiceImpl extends ServiceImpl onlySaleRegionCodes = importBo.getOnlySaleRegionCodes(); if(CollUtil.isNotEmpty(onlySaleRegionCodes)){ List saleRegionList = regionMapper.selectList( @@ -430,8 +431,27 @@ public class GoodsAccreditServiceImpl extends ServiceImpl() - .eq(GoodsAccreditItem::getAccId,goodsAccredit.getId())); + if(!param.isOnlyPastUpdate()){ + goodsAccreditItemService.remove(new LambdaQueryWrapper() + .eq(GoodsAccreditItem::getAccId,goodsAccredit.getId())); + }else { + // in 或者 not in + int accType = (b2||b4||b6)?1:0; + String targetType; + if(b3||b4){ + targetType = "bizRegion"; + }else if (b5 || b6){ + targetType = "supplier"; + }else { + targetType = "saleRegion"; + } + goodsAccreditItemService.remove( + new LambdaQueryWrapper() + .eq(GoodsAccreditItem::getAccId,goodsAccredit.getId()) + .eq(GoodsAccreditItem::getAccType,accType) + .eq(GoodsAccreditItem::getTargetType,targetType) + ); + } if(!b1 && !b2 && !b3 && !b4 && !b5 && !b6){ if(goodsAccredit.getId()!=null){ diff --git a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java index efd72549..aa3ff026 100644 --- a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsRuleServiceImpl.java @@ -178,7 +178,7 @@ public class GoodsRuleServiceImpl extends ServiceImpl rmItem.eq(GoodsRuleItem::getRuleId,goodsRule.getId()); //用于区分导入时,excel未传入数据,导致删除 if(CollUtil.isNotEmpty(param.getSelectTargetTypes())){ - rmItem.eq(GoodsRuleItem::getTargetType,param.getSelectTargetTypes()); + rmItem.in(GoodsRuleItem::getTargetType,param.getSelectTargetTypes()); } goodsRuleItemService.remove(rmItem);