|
|
@@ -131,9 +131,13 @@ public class ProductServiceImpl implements ProductService {
|
|
|
product.setSpec(productInfo.getSpec());
|
|
|
}
|
|
|
String newkind = productInfo.getKind();
|
|
|
- if ((product.getStandard() == Constant.NO) && !StringUtils.isEmpty(newkind)) {
|
|
|
- product.setKind(newkind);
|
|
|
- product.setTitle(newkind);
|
|
|
+ if (!StringUtils.isEmpty(newkind)) {
|
|
|
+ if (Constant.YES == product.getStandard()) {
|
|
|
+ product.setTitle(newkind);
|
|
|
+ } else {
|
|
|
+ product.setKind(newkind);
|
|
|
+ product.setTitle(newkind);
|
|
|
+ }
|
|
|
}
|
|
|
return productDao.save(product);
|
|
|
}
|
|
|
@@ -171,16 +175,11 @@ public class ProductServiceImpl implements ProductService {
|
|
|
products.add(prod.convert());
|
|
|
} else { // 物料库上已经存在的物料,修改
|
|
|
Product product = prod.convert();
|
|
|
- // 如果已存在物料类目不为空,erp上传的类目就不用覆盖
|
|
|
+ // 如果已存在物料类目不为空且为标准物料,erp上传的类目就不覆盖kind属性
|
|
|
Product existProduct = prodResult.get(0);
|
|
|
- if (!StringUtils.isEmpty(existProduct.getKind())) {
|
|
|
- product.setTitle(existProduct.getKind());
|
|
|
+ if (!StringUtils.isEmpty(existProduct.getKind()) && Constant.YES == existProduct.getStandard()) {
|
|
|
product.setKind(existProduct.getKind());
|
|
|
}
|
|
|
- // 如果已存在物料规格不为空,erp上传的规格就不用覆盖
|
|
|
- if (!StringUtils.isEmpty(existProduct.getSpec())) {
|
|
|
- product.setSpec(existProduct.getSpec());
|
|
|
- }
|
|
|
product.setId(existProduct.getId());
|
|
|
product.setCode(existProduct.getCode());
|
|
|
products.add(product);
|
|
|
@@ -201,16 +200,11 @@ public class ProductServiceImpl implements ProductService {
|
|
|
return (prod.convert());
|
|
|
} else { // 物料库上已经存在的物料,修改
|
|
|
Product product = prod.convert();
|
|
|
- // 如果已存在物料类目不为空,erp上传的类目就不用覆盖
|
|
|
+ // 如果已存在物料类目不为空且为标准物料,erp上传的类目就不覆盖kind属性
|
|
|
Product existProduct = prodResult.get(0);
|
|
|
- if (!StringUtils.isEmpty(existProduct.getKind())) {
|
|
|
- product.setTitle(existProduct.getKind());
|
|
|
+ if (!StringUtils.isEmpty(existProduct.getKind()) && Constant.YES == existProduct.getStandard()) {
|
|
|
product.setKind(existProduct.getKind());
|
|
|
}
|
|
|
- // 如果已存在物料规格不为空,erp上传的规格就不用覆盖
|
|
|
- if (!StringUtils.isEmpty(existProduct.getSpec())) {
|
|
|
- product.setSpec(existProduct.getSpec());
|
|
|
- }
|
|
|
product.setId(prodResult.get(0).getId());
|
|
|
product.setCode(prodResult.get(0).getCode());
|
|
|
return product;
|
|
|
@@ -312,7 +306,7 @@ public class ProductServiceImpl implements ProductService {
|
|
|
public List<Product> updateB2bProdInfo(List<Product> productInfo) {
|
|
|
List<Product> saveList = new ArrayList<>();
|
|
|
for (Product product : productInfo) {
|
|
|
- List<Product> products = productDao.findByEnUUAndCode(product.getEnUU(),product.getCode());
|
|
|
+ List<Product> products = productDao.findByEnUUAndCode(product.getEnUU(), product.getCode());
|
|
|
if (!CollectionUtils.isEmpty(products) && null == product.getId()) {
|
|
|
Product existedProd = products.get(0);
|
|
|
existedProd.setTitle(product.getTitle());
|
|
|
@@ -320,9 +314,9 @@ public class ProductServiceImpl implements ProductService {
|
|
|
if (!StringUtils.isEmpty(product.getSpec())) {
|
|
|
existedProd.setSpec(product.getSpec());
|
|
|
}
|
|
|
- if (!StringUtils.isEmpty(product.getTitle())) {
|
|
|
+ // 如果物料已存在,新上传物料存在类目且原物料为非标,则更新kind属性
|
|
|
+ if (!StringUtils.isEmpty(product.getTitle()) && Constant.NO == existedProd.getStandard()) {
|
|
|
existedProd.setKind(product.getTitle());
|
|
|
- existedProd.setTitle(product.getTitle());
|
|
|
}
|
|
|
existedProd.setCmpCode(product.getCmpCode());
|
|
|
existedProd.setUnit(product.getUnit());
|
|
|
@@ -625,15 +619,12 @@ public class ProductServiceImpl implements ProductService {
|
|
|
newList.add(product);
|
|
|
} else {
|
|
|
Product existProduct = productDao.findOne(product.getId());
|
|
|
- // 如果物料已存在,且新上传物料存在类目、规格信息时,更新已存在物料字段
|
|
|
- if (product != null) {
|
|
|
- if (StringUtils.isEmpty(product.getTitle()) && !StringUtils.isEmpty(existProduct.getKind())) {
|
|
|
- product.setTitle(existProduct.getKind());
|
|
|
- product.setTitle(existProduct.getKind());
|
|
|
- }
|
|
|
-
|
|
|
- if (StringUtils.isEmpty(product.getSpec()) && !StringUtils.isEmpty(existProduct.getSpec())) {
|
|
|
- product.setSpec(existProduct.getSpec());
|
|
|
+ // 如果物料已存在并为标准物料时,kind属性不更新
|
|
|
+ if (existProduct != null) {
|
|
|
+ if (StringUtils.isEmpty(product.getTitle())) {
|
|
|
+ if (Constant.YES == existProduct.getStandard()) {
|
|
|
+ product.setKind(existProduct.getKind());
|
|
|
+ }
|
|
|
}
|
|
|
updateList.add(product);
|
|
|
ids.add(product.getId());
|
|
|
@@ -860,7 +851,6 @@ public class ProductServiceImpl implements ProductService {
|
|
|
product.setKind(component.getKind().getNameCn());
|
|
|
product.setKindEn(component.getKind().getNameEn());
|
|
|
product.setKindId(component.getKindid());
|
|
|
- product.setTitle(component.getKind().getNameCn());
|
|
|
product.setStandard(ProductConstant.STANDARD);
|
|
|
}
|
|
|
|