|
|
@ -456,17 +456,32 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule> |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public List<SimpleKeyValue> checkSkuCodeByUserId(String userId, List<Long> skuIds) { |
|
|
|
List<GoodsRuleItem> ruleItems = this.listByUserId(userId); |
|
|
|
if(CollUtil.isEmpty(skuIds)){ |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
return baseCheckRuleItem(skuIds, ruleItems,true); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public List<SimpleKeyValue> checkSkuCode( String supplierId,List<Long> skuIds) { |
|
|
|
List<SimpleKeyValue> errorSkuIds = new ArrayList<>(); |
|
|
|
List<GoodsRuleItem> ruleItems = this.listBySupplierId(supplierId); |
|
|
|
if(CollUtil.isEmpty(skuIds)){ |
|
|
|
return errorSkuIds; |
|
|
|
return new ArrayList<>(); |
|
|
|
} |
|
|
|
return baseCheckRuleItem(skuIds, ruleItems,false); |
|
|
|
} |
|
|
|
|
|
|
|
@NotNull |
|
|
|
private List<SimpleKeyValue> baseCheckRuleItem(List<Long> skuIds, List<GoodsRuleItem> ruleItems,boolean isUserRule) { |
|
|
|
List<SimpleKeyValue> errorSkuIds = new ArrayList<>(); |
|
|
|
GoodsRuleItemDTO itemDTO = this.buildGoodsRuleItemDTO(ruleItems); |
|
|
|
if(itemDTO==null){ |
|
|
|
return errorSkuIds; |
|
|
|
}List<GoodsSku> goodsSkuList = skuMapper.selectBatchIds(skuIds); |
|
|
|
} |
|
|
|
List<GoodsSku> goodsSkuList = skuMapper.selectBatchIds(skuIds); |
|
|
|
for (GoodsSku sku : goodsSkuList) { |
|
|
|
boolean notExistInOnly = false; |
|
|
|
if(itemDTO.getOnlySpuIds()!=null){ |
|
|
@ -476,19 +491,19 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule> |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
if(!notExistInOnly){ |
|
|
|
errorSkuIds.add(new SimpleKeyValue(isUserRule?"客户人员维度(只可选未包含该产品)":"客户维度(只可选未包含该产品)",sku.getId())); |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if(!notExistInOnly){ |
|
|
|
errorSkuIds.add(new SimpleKeyValue("客户维度(只可选未包含该产品)",sku.getId())); |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
if(itemDTO.getNotInSpuIds()!=null){ |
|
|
|
boolean isErr = false; |
|
|
|
for (String notInSpuId : itemDTO.getNotInSpuIds()) { |
|
|
|
if(sku.getSpuId().toString().equals(notInSpuId)){ |
|
|
|
isErr = true; |
|
|
|
errorSkuIds.add(new SimpleKeyValue("客户维度(不可选)",sku.getId())); |
|
|
|
errorSkuIds.add(new SimpleKeyValue(isUserRule?"客户人员维度(不可选)":"客户维度(不可选)",sku.getId())); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
@ -512,7 +527,7 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule> |
|
|
|
} |
|
|
|
} |
|
|
|
if (!anyMatch){ |
|
|
|
errorSkuIds.add(new SimpleKeyValue("客户维度(只可选未包含该产品)",sku.getId())); |
|
|
|
errorSkuIds.add(new SimpleKeyValue(isUserRule?"客户人员维度(只可选未包含该产品)":"客户维度(只可选未包含该产品)",sku.getId())); |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
@ -524,7 +539,7 @@ public class GoodsRuleServiceImpl extends ServiceImpl<GoodsRuleMapper,GoodsRule> |
|
|
|
boolean b3 = notInCateId.equals(spu.getCategoryThird()); |
|
|
|
boolean anyMatch = b1||b2||b3; |
|
|
|
if (anyMatch){ |
|
|
|
errorSkuIds.add(new SimpleKeyValue("客户维度(不可选)",sku.getId())); |
|
|
|
errorSkuIds.add(new SimpleKeyValue(isUserRule?"客户人员维度(不可选)":"客户维度(不可选)",sku.getId())); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|