|
|
@@ -1,7 +1,5 @@
|
|
|
package com.uas.platform.b2c.prod.commodity.service.impl;
|
|
|
|
|
|
-import static com.uas.platform.b2c.core.utils.NumberUtil.fractionNumCeil;
|
|
|
-
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.uas.platform.b2c.common.account.model.Enterprise;
|
|
|
import com.uas.platform.b2c.common.account.service.EnterpriseService;
|
|
|
@@ -14,26 +12,9 @@ import com.uas.platform.b2c.core.support.SystemSession;
|
|
|
import com.uas.platform.b2c.core.utils.NumberUtil;
|
|
|
import com.uas.platform.b2c.core.utils.RegexConstant;
|
|
|
import com.uas.platform.b2c.core.utils.StringUtilB2C;
|
|
|
-import com.uas.platform.b2c.prod.commodity.constant.DoubleConstant;
|
|
|
-import com.uas.platform.b2c.prod.commodity.constant.ErrorInfoConstant;
|
|
|
-import com.uas.platform.b2c.prod.commodity.constant.ModifyConstant;
|
|
|
-import com.uas.platform.b2c.prod.commodity.constant.ShortConstant;
|
|
|
-import com.uas.platform.b2c.prod.commodity.constant.UploadConstant;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.GoodsDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.PCBDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.PcbPropertyvalueDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.ProductDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.ProductPersonDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.ProductPrivateDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.dao.ReleaseProductByBatchDao;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.Goods;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.GoodsQtyPrice;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.PCB;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.PCBPropertyValue;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.Product;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.ProductPerson;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.ProductPrivate;
|
|
|
-import com.uas.platform.b2c.prod.commodity.model.ReleaseProductByBatch;
|
|
|
+import com.uas.platform.b2c.prod.commodity.constant.*;
|
|
|
+import com.uas.platform.b2c.prod.commodity.dao.*;
|
|
|
+import com.uas.platform.b2c.prod.commodity.model.*;
|
|
|
import com.uas.platform.b2c.prod.commodity.service.GoodsService;
|
|
|
import com.uas.platform.b2c.prod.commodity.service.ReleaseProductByBatchService;
|
|
|
import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
|
|
|
@@ -52,37 +33,11 @@ import com.uas.platform.core.model.PageInfo;
|
|
|
import com.uas.platform.core.persistence.criteria.CriterionExpression;
|
|
|
import com.uas.platform.core.persistence.criteria.PredicateUtils;
|
|
|
import com.uas.platform.core.persistence.criteria.SimpleExpression;
|
|
|
-import java.math.BigDecimal;
|
|
|
-import java.sql.ResultSet;
|
|
|
-import java.sql.SQLException;
|
|
|
-import java.sql.Statement;
|
|
|
-import java.text.DateFormat;
|
|
|
-import java.text.SimpleDateFormat;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.Collections;
|
|
|
-import java.util.Comparator;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.HashSet;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Set;
|
|
|
-import java.util.regex.Matcher;
|
|
|
-import java.util.regex.Pattern;
|
|
|
-import javax.persistence.criteria.CriteriaBuilder;
|
|
|
-import javax.persistence.criteria.CriteriaQuery;
|
|
|
-import javax.persistence.criteria.Predicate;
|
|
|
-import javax.persistence.criteria.Root;
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.apache.commons.collections.map.HashedMap;
|
|
|
import org.apache.poi.hssf.usermodel.HSSFCell;
|
|
|
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
|
|
|
-import org.apache.poi.ss.usermodel.Cell;
|
|
|
-import org.apache.poi.ss.usermodel.DateUtil;
|
|
|
-import org.apache.poi.ss.usermodel.Row;
|
|
|
-import org.apache.poi.ss.usermodel.Sheet;
|
|
|
-import org.apache.poi.ss.usermodel.Workbook;
|
|
|
+import org.apache.poi.ss.usermodel.*;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.dao.DataAccessException;
|
|
|
@@ -95,6 +50,22 @@ import org.springframework.ui.ModelMap;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
+import javax.persistence.criteria.CriteriaBuilder;
|
|
|
+import javax.persistence.criteria.CriteriaQuery;
|
|
|
+import javax.persistence.criteria.Predicate;
|
|
|
+import javax.persistence.criteria.Root;
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.sql.ResultSet;
|
|
|
+import java.sql.SQLException;
|
|
|
+import java.sql.Statement;
|
|
|
+import java.text.DateFormat;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.*;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
+
|
|
|
+import static com.uas.platform.b2c.core.utils.NumberUtil.fractionNumCeil;
|
|
|
+
|
|
|
@Service
|
|
|
public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchService {
|
|
|
|
|
|
@@ -149,6 +120,9 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
|
|
|
@Autowired
|
|
|
private PcbPropertyvalueDao pcbPropertyvalueDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private V_ProductPrivateDao v_productPrivateDao;
|
|
|
+
|
|
|
private static final String SIZE = "尺寸";
|
|
|
private static final String COLOR = "颜色";
|
|
|
private static final String THICKCOPPER = "铜厚";
|
|
|
@@ -1616,7 +1590,7 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
|
|
|
List<Long> productIds = null;
|
|
|
List<ProductPrivate> productPrivateList = null;
|
|
|
if (!CollectionUtils.isEmpty(releaseProductByBatchList)) {
|
|
|
- Map<String, Object> map = convertProduct(releaseProductByBatchList,false, isPcb);
|
|
|
+ Map<String, Object> map = convertProduct(releaseProductByBatchList, false, isPcb);
|
|
|
List<com.uas.ps.entity.Product> products = (List<com.uas.ps.entity.Product>) map.get("products");
|
|
|
// TODO 什么接口
|
|
|
String result = restTemplate.postForEntity(productServiceIp + "/product/update", products, String.class).getBody();
|
|
|
@@ -1634,6 +1608,11 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
|
|
|
}
|
|
|
productPrivateList = productPrivateDao.save(productPrivates);
|
|
|
|
|
|
+ //根据更新的规格信息,更新在售产品的信息
|
|
|
+ List<V_ProductPrivate> v_productPrivates = v_productPrivateDao.findProductInIdAndSpecIsNotNull(productIds);
|
|
|
+ List<Goods> goodses = goodsDao.findByProductIds(productIds);
|
|
|
+ goodsService.updateSpecByProducts(v_productPrivates, goodses);
|
|
|
+
|
|
|
if (isPcb) {
|
|
|
List<PCB> pcbList = new ArrayList<>();
|
|
|
List<PCBPropertyValue> propertyValueList = new ArrayList<>();
|
|
|
@@ -1770,11 +1749,9 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
|
|
|
product.setStandard(releaseProductByBatch.getComponentUuId() == null ? (short)0 : (short)1);
|
|
|
product.setCmpUuid(releaseProductByBatch.getComponentUuId());
|
|
|
product.setCreateTime(new Date(System.currentTimeMillis()));
|
|
|
+ product.setSpec(releaseProductByBatch.getSpec());
|
|
|
// 产品导入默认可销售
|
|
|
product.setIsSale((short) 1);
|
|
|
- if (isAPerson) {
|
|
|
- product.setSpec(releaseProductByBatch.getPackaging());
|
|
|
- }
|
|
|
String batchCode = "PNUM" + createNumberService.getTimeNumber("trade$product_import_num", 8);
|
|
|
product.setCode(batchCode);
|
|
|
|