diff --git a/src/main/java/com/qs/serve/modules/goods/service/GoodsRuleService.java b/src/main/java/com/qs/serve/modules/goods/service/GoodsRuleService.java index 20275b2c..01cd3ffd 100644 --- a/src/main/java/com/qs/serve/modules/goods/service/GoodsRuleService.java +++ b/src/main/java/com/qs/serve/modules/goods/service/GoodsRuleService.java @@ -40,6 +40,15 @@ public interface GoodsRuleService extends IService { */ boolean checkSkuCode(List skuCodes,String supplierId,boolean throwEx); + /** + * 检测sku是否符合规则 + * @param skuCodes + * @param userId + * @param throwEx + * @return + */ + boolean checkSkuCodeByUserId(List skuCodes,String userId,boolean throwEx); + /** * 检测sku是否符合规则,返回不和规范的ID * @param supplierId 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 5db60c53..50c734d6 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 @@ -377,6 +377,16 @@ public class GoodsRuleServiceImpl extends ServiceImpl @Override public boolean checkSkuCode(List skuCodes, String supplierId, boolean throwEx) { List ruleItems = this.listBySupplierId(supplierId); + return baseCheckSkuCode(skuCodes, throwEx, ruleItems); + } + + @Override + public boolean checkSkuCodeByUserId(List skuCodes, String userId, boolean throwEx) { + List ruleItems = this.listByUserId(userId); + return baseCheckSkuCode(skuCodes, throwEx, ruleItems); + } + + private boolean baseCheckSkuCode(List skuCodes, boolean throwEx, List ruleItems) { if(CollUtil.isEmpty(skuCodes)){ return false; } @@ -384,7 +394,7 @@ public class GoodsRuleServiceImpl extends ServiceImpl if(itemDTO==null){ return true; } - List goodsSkuList = skuMapper.selectList(new LambdaQueryWrapper().in(GoodsSku::getSkuCode,skuCodes)); + List goodsSkuList = skuMapper.selectList(new LambdaQueryWrapper().in(GoodsSku::getSkuCode, skuCodes)); for (GoodsSku sku : goodsSkuList) { boolean notExistInOnly = false; if(itemDTO.getOnlySpuIds()!=null){ diff --git a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java index 1d6e6c10..e7246eda 100644 --- a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java @@ -363,6 +363,9 @@ public class OmsOrderServiceImpl extends ServiceImpl i //拦截客户维度规则 goodsRuleService.checkSkuCode(skuCodes, supplier.getId(), true); + //用户维度拦截 + goodsRuleService.checkSkuCodeByUserId(skuCodes,AuthContextUtils.getSysUserId(),true); + //拦截品类下单规则 this.handleCategoryRule(categoryRule, newOrderItemList);