Browse Source

商品导入规则

master
wangpengfei 6 months ago
parent
commit
76039145b5
  1. 110
      oms/src/main/java/com/yxt/oms/biz/func/basegoodsspu/BaseGoodsSpuService.java

110
oms/src/main/java/com/yxt/oms/biz/func/basegoodsspu/BaseGoodsSpuService.java

@ -144,6 +144,7 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
OrgPathQuery q = new OrgPathQuery();
q.setOrgPath(orgPath);
List<BaseGoodsSkuVo> vos1 = baseGoodsSkuFeign.listAllByOrg(q).getData();
List<String> list2=new ArrayList<>();
if (!list.isEmpty()) {
List<BaseGoodsSpuDto> tt = new ArrayList();
List<BaseGoodsImportVo> list1 = new ArrayList<>();
@ -152,125 +153,156 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
BaseGoodsSpuDto dto = new BaseGoodsSpuDto();
String spuCode = StringUtils.isEmpty(list.get(i)[0]) ? null : list.get(i)[0];
if (StringUtils.isBlank(spuCode)) {
return rb.setMsg("第" + (i + 1) + "行商品编码为空!");
// return rb.setMsg("第" + (i + 1) + "行商品编码为空!");
list2.add("第" + (i + 1) + "行商品编码为空!");
}
String spuName = StringUtils.isEmpty(list.get(i)[2]) ? null : list.get(i)[2];
if (StringUtils.isBlank(spuName)) {
return rb.setMsg("第" + (i + 1) + "行商品名称为空!");
// return rb.setMsg("第" + (i + 1) + "行商品名称为空!");
list2.add("第" + (i + 1) + "行商品名称为空!");
}
String type = StringUtils.isEmpty(list.get(i)[6]) ? null : list.get(i)[6];
if (StringUtils.isBlank(type)) {
return rb.setMsg("第" + (i + 1) + "行商品分类为空!");
// return rb.setMsg("第" + (i + 1) + "行商品分类为空!");
list2.add("第" + (i + 1) + "行商品分类为空!");
}
String brand = StringUtils.isEmpty(list.get(i)[7]) ? null : list.get(i)[7];
if (StringUtils.isBlank(brand)) {
return rb.setMsg("第" + (i + 1) + "行品牌为空!");
// return rb.setMsg("第" + (i + 1) + "行品牌为空!");
list2.add("第" + (i + 1) + "行品牌为空!");
}
String cj = StringUtils.isEmpty(list.get(i)[8]) ? null : list.get(i)[8];
if (StringUtils.isBlank(cj)) {
return rb.setMsg("第" + (i + 1) + "行厂家为空!");
// return rb.setMsg("第" + (i + 1) + "行厂家为空!");
list2.add("第" + (i + 1) + "行厂家为空!");
}
String unit = StringUtils.isEmpty(list.get(i)[9]) ? null : list.get(i)[9];
if (StringUtils.isBlank(unit)) {
return rb.setMsg("第" + (i + 1) + "行商品单位为空!");
// return rb.setMsg("第" + (i + 1) + "行商品单位为空!");
list2.add("第" + (i + 1) + "行商品单位为空!");
}
String taxRate = StringUtils.isEmpty(list.get(i)[10]) ? null : list.get(i)[10];
if (!isNumeric(taxRate)) {
return rb.setMsg("第" + (i + 1) + "行税率不是数字!");
// return rb.setMsg("第" + (i + 1) + "行税率不是数字!");
list2.add("第" + (i + 1) + "行税率不是数字!");
}
if (StringUtils.isNotBlank(taxRate)) {
if (taxRate.contains("-")) {
return rb.setMsg("第" + (i + 1) + "行税率不能为负数!");
// return rb.setMsg("第" + (i + 1) + "行税率不能为负数!");
list2.add("第" + (i + 1) + "行税率不能为负数!");
}
if (!taxRate.contains(".")) {
return rb.setMsg("第" + (i + 1) + "行税率不是小数!");
// return rb.setMsg("第" + (i + 1) + "行税率不是小数!");
list2.add("第" + (i + 1) + "行税率不是小数!");
}
if (taxRate.length() > 4) {
return rb.setMsg("第" + (i + 1) + "行税率长度不正确!");
// return rb.setMsg("第" + (i + 1) + "行税率长度不正确!");
list2.add("第" + (i + 1) + "行税率长度不正确!");
}
} else {
return rb.setMsg("第" + (i + 1) + "行税率为空!");
// return rb.setMsg("第" + (i + 1) + "行税率为空!");
list2.add("第" + (i + 1) + "行税率为空!");
}
String bzq = StringUtils.isEmpty(list.get(i)[11]) ? null : list.get(i)[11];
if (!isNumeric(bzq)) {
return rb.setMsg("第" + (i + 1) + "行保质期(天)不是数字!");
// return rb.setMsg("第" + (i + 1) + "行保质期(天)不是数字!");
list2.add("第" + (i + 1) + "行保质期(天)不是数字!");
}
if (StringUtils.isBlank(bzq)) {
return rb.setMsg("第" + (i + 1) + "行保质期(天)为空!");
// return rb.setMsg("第" + (i + 1) + "行保质期(天)为空!");
list2.add("第" + (i + 1) + "行保质期(天)为空!");
}
String ggdm = StringUtils.isEmpty(list.get(i)[18]) ? null : list.get(i)[18];
boolean b=vos1.stream().anyMatch(o->o.getGoodsSkuCode().equals(ggdm));
if(b){
return rb.setMsg("第" + (i + 1) + "行规格代码已存在!");
// return rb.setMsg("第" + (i + 1) + "行规格代码已存在!");
list2.add("第" + (i + 1) + "行规格代码已存在!");
}
BaseGoodsImportVo vo = new BaseGoodsImportVo();
vo.setXh(String.valueOf(i + 1));
vo.setXpdm(ggdm);
list1.add(vo);
if (StringUtils.isBlank(ggdm)) {
return rb.setMsg("第" + (i + 1) + "行规格代码不正确!");
// return rb.setMsg("第" + (i + 1) + "行规格代码不正确!");
list2.add("第" + (i + 1) + "行规格代码不正确!");
}
String ggxh = StringUtils.isEmpty(list.get(i)[20]) ? null : list.get(i)[20];
if (StringUtils.isBlank(ggxh)) {
return rb.setMsg("第" + (i + 1) + "行规格型号为空!");
// return rb.setMsg("第" + (i + 1) + "行规格型号为空!");
list2.add("第" + (i + 1) + "行规格型号为空!");
}
String cgj = StringUtils.isEmpty(list.get(i)[21]) ? null : list.get(i)[21];
if (!isNumeric(cgj)) {
return rb.setMsg("第" + (i + 1) + "行最后采购价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行最后采购价不是数字!");
list2.add("第" + (i + 1) + "行最后采购价不是数字!");
}
if (StringUtils.isBlank(cgj)) {
return rb.setMsg("第" + (i + 1) + "行最后采购价为空!");
// return rb.setMsg("第" + (i + 1) + "行最后采购价为空!");
list2.add("第" + (i + 1) + "行最后采购价为空!");
}
String aqts = StringUtils.isEmpty(list.get(i)[22]) ? null : list.get(i)[22];
if (!isNumeric(aqts)) {
return rb.setMsg("第" + (i + 1) + "行库存安全天数不是数字!");
// return rb.setMsg("第" + (i + 1) + "行库存安全天数不是数字!");
list2.add("第" + (i + 1) + "行库存安全天数不是数字!");
}
String jjsx = StringUtils.isEmpty(list.get(i)[25]) ? null : list.get(i)[25];
if (!isNumeric(jjsx)) {
return rb.setMsg("第" + (i + 1) + "行库存警戒上线不是数字!");
// return rb.setMsg("第" + (i + 1) + "行库存警戒上线不是数字!");
list2.add("第" + (i + 1) + "行库存警戒上线不是数字!");
}
String jjxx = StringUtils.isEmpty(list.get(i)[26]) ? null : list.get(i)[26];
if (!isNumeric(jjxx)) {
return rb.setMsg("第" + (i + 1) + "行库存警戒下线不是数字!");
// return rb.setMsg("第" + (i + 1) + "行库存警戒下线不是数字!");
list2.add("第" + (i + 1) + "行库存警戒下线不是数字!");
}
String cbj = StringUtils.isEmpty(list.get(i)[27]) ? null : list.get(i)[27];
if (!isNumeric(cbj)) {
return rb.setMsg("第" + (i + 1) + "行成本价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行成本价不是数字!");
list2.add("第" + (i + 1) + "行成本价不是数字!");
}
if (StringUtils.isBlank(cbj)) {
return rb.setMsg("第" + (i + 1) + "行成本价为空!");
// return rb.setMsg("第" + (i + 1) + "行成本价为空!");
list2.add("第" + (i + 1) + "行成本价为空!");
}
String dpj = StringUtils.isEmpty(list.get(i)[28]) ? null : list.get(i)[28];
if (!isNumeric(dpj)) {
return rb.setMsg("第" + (i + 1) + "行吊牌价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行吊牌价不是数字!");
list2.add("第" + (i + 1) + "行吊牌价不是数字!");
}
String xsdj = StringUtils.isEmpty(list.get(i)[29]) ? null : list.get(i)[29];
if(!isNumeric(xsdj)){
return rb.setMsg("第" + (i + 1) + "行销售单价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行销售单价不是数字!");
list2.add("第" + (i + 1) + "行销售单价不是数字!");
}
if (StringUtils.isBlank(xsdj)) {
return rb.setMsg("第" + (i + 1) + "行销售单价为空!");
// return rb.setMsg("第" + (i + 1) + "行销售单价为空!");
list2.add("第" + (i + 1) + "行销售单价为空!");
}
String bzjj = StringUtils.isEmpty(list.get(i)[30]) ? null : list.get(i)[30];
if(!isNumeric(bzjj)){
return rb.setMsg("第" + (i + 1) + "行标准进价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行标准进价不是数字!");
list2.add("第" + (i + 1) + "行标准进价不是数字!");
}
String dlj = StringUtils.isEmpty(list.get(i)[31]) ? null : list.get(i)[31];
if(!isNumeric(dlj)){
return rb.setMsg("第" + (i + 1) + "行代理价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行代理价不是数字!");
list2.add("第" + (i + 1) + "行代理价不是数字!");
}
String zk = StringUtils.isEmpty(list.get(i)[32]) ? null : list.get(i)[32];
if(!isNumeric(zk)){
return rb.setMsg("第" + (i + 1) + "行折扣不是数字!");
// return rb.setMsg("第" + (i + 1) + "行折扣不是数字!");
list2.add("第" + (i + 1) + "行折扣不是数字!");
}
String zdls = StringUtils.isEmpty(list.get(i)[33]) ? null : list.get(i)[33];
if(!isNumeric(zdls)){
return rb.setMsg("第" + (i + 1) + "行最低零售价不是数字!");
// return rb.setMsg("第" + (i + 1) + "行最低零售价不是数字!");
list2.add("第" + (i + 1) + "行最低零售价不是数字!");
}
String jf = StringUtils.isEmpty(list.get(i)[36]) ? null : list.get(i)[36];
if(!isNumeric(jf)){
return rb.setMsg("第" + (i + 1) + "行积分不是数字!");
list2.add("第" + (i + 1) + "行积分不是数字!");
// return rb.setMsg("第" + (i + 1) + "行积分不是数字!");
}
dto = this.packaging(list.get(i), dto);
if (null == dto) {
@ -293,10 +325,22 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
}
}
}
return rb.setMsg("导入失败,第" + a + "行规格代码数据重复!");
list2.add("导入失败,第" + a + "行规格代码数据重复!");
}
tt1 = a(tt);
return rb.success().setMsg("导入成功").setData(tt1);
if (list2.size()!=0){
String err="";
for (String vo : list2) {
if(StringUtils.isBlank(err)){
err=err+vo;
}else{
err=err+","+vo;
}
}
return rb.setMsg(err).setData(tt1);
}else {
return rb.success().setMsg("导入成功").setData(tt1);
}
} else {
return rb.setMsg("导入文件没有有效数据");
}

Loading…
Cancel
Save