|
|
@ -259,6 +259,7 @@ public class GoodsSkuController { |
|
|
|
final String UPDATE = "2"; |
|
|
|
final String DELETE = "3"; |
|
|
|
final String SAVE = "1"; |
|
|
|
boolean throwEx = false; |
|
|
|
Map<String,List<GoodsSkuImportBo.SkuItem>> skuItemList = param.getSkuList().stream().collect(Collectors.groupingBy(GoodsSkuImportBo.SkuItem::getOpt)); |
|
|
|
//处理删除
|
|
|
|
List<GoodsSkuImportBo.SkuItem> delList = skuItemList.get(DELETE); |
|
|
@ -275,6 +276,7 @@ public class GoodsSkuController { |
|
|
|
for (GoodsSkuImportBo.SkuItem skuItem : param.getSkuList()) { |
|
|
|
if(item.getTargetCode().equals(skuItem.getSkuCode())&&DELETE.equals(skuItem.getOpt())){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"活动含有当前商品,删除失败;":skuItem.getErrMsg()+"\n活动含有当前商品,删除失败;"); |
|
|
|
throwEx = true; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -282,6 +284,7 @@ public class GoodsSkuController { |
|
|
|
for (GoodsSkuImportBo.SkuItem skuItem : param.getSkuList()) { |
|
|
|
if(item.getTargetCode().equals(skuItem.getSkuCode())&&DELETE.equals(skuItem.getOpt())){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"预算含有当前商品,删除失败;":skuItem.getErrMsg()+"\n预算含有当前商品,删除失败;"); |
|
|
|
throwEx = true; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -289,6 +292,7 @@ public class GoodsSkuController { |
|
|
|
for (GoodsSkuImportBo.SkuItem skuItem : param.getSkuList()) { |
|
|
|
if(item.getTargetCode().equals(skuItem.getSkuCode())&&DELETE.equals(skuItem.getOpt())){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"销售计划含有当前商品,删除失败;":skuItem.getErrMsg()+"\n销售计划含有当前商品,删除失败;"); |
|
|
|
throwEx = true; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -316,10 +320,18 @@ public class GoodsSkuController { |
|
|
|
} |
|
|
|
GoodsSku sku = this.selectSku(skuList,skuItem.getSkuCode()); |
|
|
|
GoodsSpu spu = this.selectSpu(spuList,skuItem.getSpuCode()); |
|
|
|
|
|
|
|
if(StringUtils.hasText(skuItem.getSpuCode())&&spu==null){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"无匹配SKU"+skuItem.getSpuCode()+"编码产品,更新失败;":skuItem.getErrMsg()+"\n无匹配编码产品,更新失败;"); |
|
|
|
throwEx = true; |
|
|
|
continue; |
|
|
|
} |
|
|
|
|
|
|
|
if(UPDATE.equals(opt)){ |
|
|
|
//更新
|
|
|
|
if(sku==null){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"无匹配编码产品,更新失败;":skuItem.getErrMsg()+"\n无匹配编码产品,更新失败;"); |
|
|
|
throwEx = true; |
|
|
|
continue; |
|
|
|
} |
|
|
|
GoodsSku goodsSku = buildByImportItem(skuItem); |
|
|
@ -335,10 +347,12 @@ public class GoodsSkuController { |
|
|
|
//保存
|
|
|
|
if(sku!=null){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"已保存,新增失败;":skuItem.getErrMsg()+"\n已保存,新增失败;"); |
|
|
|
throwEx = true; |
|
|
|
continue; |
|
|
|
} |
|
|
|
if(spu==null){ |
|
|
|
skuItem.setErrMsg(skuItem.getErrMsg()==null?"SKU不存在,新增失败;":skuItem.getErrMsg()+"\nSKU不存在,新增失败;"); |
|
|
|
throwEx = true; |
|
|
|
continue; |
|
|
|
} |
|
|
|
GoodsSku addSku = buildByImportItem(skuItem); |
|
|
@ -351,6 +365,9 @@ public class GoodsSkuController { |
|
|
|
for (GoodsSpu spu : spuList) { |
|
|
|
goodsSpuService.updateOnlineOfflineFlat(spu.getId()); |
|
|
|
} |
|
|
|
if(throwEx){ |
|
|
|
return R.ok(param.getSkuList(),"错误数据"); |
|
|
|
} |
|
|
|
return R.ok(); |
|
|
|
} |
|
|
|
|
|
|
@ -395,10 +412,7 @@ public class GoodsSkuController { |
|
|
|
private GoodsSpu selectSpu( List<GoodsSpu> spuList, String skuCode){ |
|
|
|
if(skuCode!=null){ |
|
|
|
for (GoodsSpu goodsSpu : spuList) { |
|
|
|
if(goodsSpu.getSkuCode()==null){ |
|
|
|
continue; |
|
|
|
} |
|
|
|
if(goodsSpu.getSkuCode().equals(skuCode)){ |
|
|
|
if(goodsSpu.getSpuCode().equals(skuCode)){ |
|
|
|
return goodsSpu; |
|
|
|
} |
|
|
|
} |
|
|
|