Browse Source

批量上架增加时间打印功能

yujia 7 years ago
parent
commit
c331c10f6a

+ 36 - 53
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ReleaseProductByBatchServiceImpl.java

@@ -1,7 +1,5 @@
 package com.uas.platform.b2c.prod.commodity.service.impl;
 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.alibaba.fastjson.JSON;
 import com.uas.platform.b2c.common.account.model.Enterprise;
 import com.uas.platform.b2c.common.account.model.Enterprise;
 import com.uas.platform.b2c.common.account.service.EnterpriseService;
 import com.uas.platform.b2c.common.account.service.EnterpriseService;
@@ -14,28 +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.NumberUtil;
 import com.uas.platform.b2c.core.utils.RegexConstant;
 import com.uas.platform.b2c.core.utils.RegexConstant;
 import com.uas.platform.b2c.core.utils.StringUtilB2C;
 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.dao.V_ProductPrivateDao;
-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.model.V_ProductPrivate;
+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.GoodsService;
 import com.uas.platform.b2c.prod.commodity.service.ReleaseProductByBatchService;
 import com.uas.platform.b2c.prod.commodity.service.ReleaseProductByBatchService;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
 import com.uas.platform.b2c.prod.commodity.util.GoodsUtil;
@@ -56,37 +35,11 @@ import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.persistence.criteria.CriterionExpression;
 import com.uas.platform.core.persistence.criteria.CriterionExpression;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.platform.core.persistence.criteria.SimpleExpression;
 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.CollectionUtils;
 import org.apache.commons.collections.map.HashedMap;
 import org.apache.commons.collections.map.HashedMap;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFDateUtil;
 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.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.dao.DataAccessException;
 import org.springframework.dao.DataAccessException;
@@ -99,6 +52,22 @@ import org.springframework.ui.ModelMap;
 import org.springframework.util.StringUtils;
 import org.springframework.util.StringUtils;
 import org.springframework.web.client.RestTemplate;
 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
 @Service
 public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchService {
 public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchService {
 
 
@@ -213,6 +182,7 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 		Row headerRow = sheet.getRow(0);
 		Row headerRow = sheet.getRow(0);
 		int total = 0;
 		int total = 0;
 		int blankNum = 0;
 		int blankNum = 0;
+		long l = System.currentTimeMillis();
 		if (headerRow != null) {
 		if (headerRow != null) {
 			// 验证模板是否为商城模板
 			// 验证模板是否为商城模板
 			validateTemplate(headerRow, colNum, currency, isAPerson, isPcb);
 			validateTemplate(headerRow, colNum, currency, isAPerson, isPcb);
@@ -252,13 +222,18 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 				}
 				}
 			}
 			}
 		}
 		}
-
+		long l1 = System.currentTimeMillis();
+		System.err.println("l1--------------l" + (l1 - l));
 		Long userUU = SystemSession.getUser().getUserUU();
 		Long userUU = SystemSession.getUser().getUserUU();
 		Long enUU = SystemSession.getUser().getEnterprise().getUu();
 		Long enUU = SystemSession.getUser().getEnterprise().getUu();
 		List<ReleaseProductByBatch> addList = new ArrayList<>(releaseProductByBatchs.size());
 		List<ReleaseProductByBatch> addList = new ArrayList<>(releaseProductByBatchs.size());
 		addList.addAll(releaseProductByBatchs);
 		addList.addAll(releaseProductByBatchs);
         commonDao.save(addList, ReleaseProductByBatch.class);
         commonDao.save(addList, ReleaseProductByBatch.class);
+		long l2 = System.currentTimeMillis();
+		System.err.println("l2--------------l1" + (l2 - l1));
         releaseProductByBatchDao.callReleaseExistValidProcedure(batch, isAPerson, enUU);
         releaseProductByBatchDao.callReleaseExistValidProcedure(batch, isAPerson, enUU);
+		long l3 = System.currentTimeMillis();
+		System.err.println("l3--------------l2" + (l3 - l2));
 		if (isAPerson) {
 		if (isAPerson) {
 			for (ReleaseProductByBatch releaseProductByBatch : addList) {
 			for (ReleaseProductByBatch releaseProductByBatch : addList) {
                 Long productid = releaseProductByBatch.getProductid();
                 Long productid = releaseProductByBatch.getProductid();
@@ -273,16 +248,24 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
                 }
                 }
 			}
 			}
 		}
 		}
-
+		Long l4 = 0l;
 		if (isPcb) {
 		if (isPcb) {
 			releaseProductByBatchDao.callValidProcedurePcb(enUU, batch);
 			releaseProductByBatchDao.callValidProcedurePcb(enUU, batch);
 		} else {
 		} else {
 			releaseProductByBatchDao.callValidProcedure(enUU, batch);
 			releaseProductByBatchDao.callValidProcedure(enUU, batch);
+			l4 = System.currentTimeMillis();
+			System.err.println("l4--------------l3" + (l4 - l3));
 		}
 		}
 
 
 		Integer filter = releaseProductByBatchDao.getCountOfImportFail(userUU, batch, failCode);
 		Integer filter = releaseProductByBatchDao.getCountOfImportFail(userUU, batch, failCode);
+		long l5 = System.currentTimeMillis();
+		System.err.println("l5--------------l4" + (l5 - l4));
 		Integer failure = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.failure.value());
 		Integer failure = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.failure.value());
+		long l6 = System.currentTimeMillis();
+		System.err.println("l6--------------l5" + (l6 - l5));
 		Integer success = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.success.value());
 		Integer success = releaseProductByBatchDao.getCountPublisherUuAndBatchAndReleaseCode(userUU, batch, ReleaseStatus.success.value());
+		long l7 = System.currentTimeMillis();
+		System.err.println("l7---------------------------l6" +  (l7 - l6));
 		modelMap.put("total", total);
 		modelMap.put("total", total);
 		modelMap.put("success", success);
 		modelMap.put("success", success);
 		modelMap.put("failure", failure);
 		modelMap.put("failure", failure);