فهرست منبع

Merge remote-tracking branch 'origin/dev' into dev

hejq 7 سال پیش
والد
کامیت
d490c59a8d

+ 6 - 5
src/main/java/com/uas/platform/b2b/controller/BaseInfoController.java

@@ -45,6 +45,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -370,13 +371,13 @@ public class BaseInfoController {
 	 * @return
 	 */
 	@RequestMapping(value = "/edit/release/excel", method = RequestMethod.POST)
-	public ModelMap releaseByExcel(FileUpload uploadItem) {
+	public ModelMap releaseByExcel(FileUpload uploadItem) throws IOException,IllegalOperatorException {
 		ModelMap map = new ModelMap();
 		String fileName = uploadItem.getFile().getOriginalFilename();
 		String suffix = fileName.substring(fileName.lastIndexOf(".") + 1);
 		InputStream is = null;
 		Workbook workbook = null;
-		try {
+//		try {
 			is = uploadItem.getFile().getInputStream();
 			if ("xls".equals(suffix)) {
 				workbook = new HSSFWorkbook(is);
@@ -386,9 +387,9 @@ public class BaseInfoController {
 				throw new IllegalOperatorException("文件格不正确,请上传.xls或.xlsx的文件");
 			}
 			map = baseInfoService.releaseByWorkbook(workbook);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
+//		} catch (Exception e) {
+//			e.printStackTrace();
+//		}
 		logger.log("商品批次", "[" + SystemSession.getUser().getUserName() + "]通过excel导入了物料,数量为" + map.size());
 		return map;
 	}

+ 6 - 5
src/main/java/com/uas/platform/b2b/controller/ProductUsersController.java

@@ -28,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.List;
@@ -98,13 +99,13 @@ public class ProductUsersController {
      * @return
      */
     @RequestMapping(value = "/edit/release/excel", method = RequestMethod.POST)
-    public ModelMap releaseByExcel(FileUpload uploadItem) {
+    public ModelMap releaseByExcel(FileUpload uploadItem) throws IllegalOperatorException, IOException {
         ModelMap map = new ModelMap();
         String fileName = uploadItem.getFile().getOriginalFilename();
         String suffix = fileName.substring(fileName.lastIndexOf(".") + 1);
         InputStream is = null;
         Workbook workbook = null;
-        try {
+//        try {
             is = uploadItem.getFile().getInputStream();
             if ("xls".equals(suffix)) {
                 workbook = new HSSFWorkbook(is);
@@ -114,9 +115,9 @@ public class ProductUsersController {
                 throw new IllegalOperatorException("文件格不正确,请上传.xls或.xlsx的文件");
             }
             map = productUsersService.releaseByWorkbook(workbook);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+//        } catch (Exception e) {
+//            e.printStackTrace();
+//        }
         logger.log("商品批次", "[" + SystemSession.getUser().getUserName() + "]通过excel导入了个人物料,数量为" + map.size());
         return map;
     }

+ 14 - 13
src/main/java/com/uas/platform/b2b/controller/PurcProductController.java

@@ -33,6 +33,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.servlet.ModelAndView;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -158,25 +159,25 @@ public class PurcProductController {
 	 * @return
 	 */
 	@RequestMapping(value = "/edit/release/excel", method = RequestMethod.POST)
-	public ModelMap releaseByExcel(FileUpload uploadItem) {
+	public ModelMap releaseByExcel(FileUpload uploadItem) throws IOException,IllegalOperatorException {
 		ModelMap map = new ModelMap();
 		String fileName = uploadItem.getFile().getOriginalFilename();
 		String suffix = fileName.substring(fileName.lastIndexOf(".") + 1);
 		InputStream is = null;
 		Workbook workbook = null;
-		try {
-			is = uploadItem.getFile().getInputStream();
-			if ("xls".equals(suffix)) {
-				workbook = new HSSFWorkbook(is);
-			} else if ("xlsx".equals(suffix)) {
-				workbook = new XSSFWorkbook(is);
-			} else {
-				throw new IllegalOperatorException("文件格不正确,请上传.xls或.xlsx的文件");
-			}
-			map = purcProductService.releaseByWorkbook(workbook);
-		} catch (Exception e) {
-			e.printStackTrace();
+//		try {
+		is = uploadItem.getFile().getInputStream();
+		if ("xls".equals(suffix)) {
+			workbook = new HSSFWorkbook(is);
+		} else if ("xlsx".equals(suffix)) {
+			workbook = new XSSFWorkbook(is);
+		} else {
+			throw new IllegalOperatorException("文件格不正确,请上传.xls或.xlsx的文件");
 		}
+		map = purcProductService.releaseByWorkbook(workbook);
+//		} catch (Exception e) {
+//			e.printStackTrace();
+//		}
 		logger.log("商品批次", "[" + SystemSession.getUser().getUserName() + "]通过excel导入了物料,数量为" + map.size());
 		return map;
 	}

+ 1 - 1
src/main/java/com/uas/platform/b2b/ps/ProductUtils.java

@@ -31,7 +31,7 @@ public class ProductUtils {
     /**
      * 物料单次请求数据量大小
      */
-    private static final int ONE_TIME_DATA_SIZE = 5000;
+    private static final int ONE_TIME_DATA_SIZE = 1000;
 
     /**
      * 分页批量更新物料

+ 6 - 6
src/main/java/com/uas/platform/b2b/service/BaseInfoService.java

@@ -1,10 +1,5 @@
 package com.uas.platform.b2b.service;
 
-import java.util.List;
-
-import org.apache.poi.ss.usermodel.Workbook;
-import org.springframework.ui.ModelMap;
-
 import com.uas.platform.b2b.model.FileUpload;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.Vendor;
@@ -12,8 +7,13 @@ import com.uas.platform.b2b.temporary.model.BasePartnersInfo;
 import com.uas.platform.b2b.temporary.model.NewPurcOrder;
 import com.uas.platform.b2b.temporary.model.ProdInfo;
 import com.uas.platform.b2b.temporary.model.UserSpaceDetail;
+import com.uas.platform.core.exception.IllegalOperatorException;
 import com.uas.platform.core.model.PageParams;
 import com.uas.search.b2b.model.SPage;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.springframework.ui.ModelMap;
+
+import java.util.List;
 
 public interface BaseInfoService {
 
@@ -23,7 +23,7 @@ public interface BaseInfoService {
 	 * @param workbook
 	 * @return
 	 */
-	ModelMap releaseByWorkbook(Workbook workbook) throws Exception;
+	ModelMap releaseByWorkbook(Workbook workbook) throws IllegalOperatorException;
 
 	/**
 	 * 更新物料信息

+ 2 - 1
src/main/java/com/uas/platform/b2b/service/ProductUsersService.java

@@ -2,6 +2,7 @@ package com.uas.platform.b2b.service;
 
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.ProductUsers;
+import com.uas.platform.core.exception.IllegalOperatorException;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.search.b2b.model.SPage;
 import org.apache.poi.ss.usermodel.Workbook;
@@ -45,7 +46,7 @@ public interface ProductUsersService {
      * @param workbook
      * @return
      */
-    ModelMap releaseByWorkbook(Workbook workbook) throws Exception;
+    ModelMap releaseByWorkbook(Workbook workbook) throws IllegalOperatorException;
 
     /**
      * 批量转入我的产品库

+ 2 - 1
src/main/java/com/uas/platform/b2b/service/PurcProductService.java

@@ -1,5 +1,6 @@
 package com.uas.platform.b2b.service;
 
+import com.uas.platform.core.exception.IllegalOperatorException;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.ui.ModelMap;
 
@@ -11,7 +12,7 @@ public interface PurcProductService {
 	 * @param workbook
 	 * @return
 	 */
-	public ModelMap releaseByWorkbook(Workbook workbook) throws Exception;
+	public ModelMap releaseByWorkbook(Workbook workbook) throws IllegalOperatorException;
 
 	/**
 	 * 一键开启或关闭采购物料

+ 7 - 7
src/main/java/com/uas/platform/b2b/service/impl/BaseInfoServiceImpl.java

@@ -129,16 +129,16 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 	private ProductStatusDao productStatusDao;
 
 	/**
-	 * 一次上传允许的最大数量 (前三行为标题  从0开始)
+	 * 一次上传允许的最大数量
 	 */
-	private final static Integer MAX_ROWNUM = 5002;
+	private final static Integer MAX_ROWNUM = 5000;
 
 	
 	/**
 	 * 批量导入物料资料
 	 */
 	@Override
-	public ModelMap releaseByWorkbook(Workbook workbook) throws Exception {
+	public ModelMap releaseByWorkbook(Workbook workbook) {
 		ModelMap modelMap = new ModelMap();
 		List<String> alters = new ArrayList<String>();
 		List<String> infos = new ArrayList<String>();
@@ -147,9 +147,6 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 		Sheet sheet = workbook.getSheetAt(0);
 		String codePrefix = "PR" + DateUtils.format(new Date(), "yyMMddHHmmss") + StringUtil.getRandomNumber(3);
 		int rowNum = sheet.getLastRowNum();
-		if (rowNum > MAX_ROWNUM) {
-			throw new IllegalOperatorException("单次上传不超过5000条");
-		}
 		Row headerRow = sheet.getRow(0);
 		int total = 0;
 		if (headerRow != null) {
@@ -303,9 +300,12 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 					modelMap.put("products", productsInfo);
 				}
 			}
+            if (total > MAX_ROWNUM) {
+                throw new IllegalOperatorException("批量导入超过限制行数5000行,不能导入!");
+            }
 			if (!CollectionUtils.isEmpty(products)) {
 				try {
-					ProductUtils.update(products);
+					ProductUtils.paginationUpdate(products);
 //					saveUserOrders(products);
 					modelMap.put("success", products.size());
 				} catch (Exception e) {

+ 6 - 7
src/main/java/com/uas/platform/b2b/service/impl/ProductUsersServiceImpl.java

@@ -68,9 +68,9 @@ public class ProductUsersServiceImpl implements ProductUsersService {
     private ProductTempDao productTempDao;
 
     /**
-     * 一次上传允许的最大数量 (前三行为标题 从0开始)
+     * 一次上传允许的最大数量
      */
-    private final static Integer MAX_ROWNUM = 20002;
+    private final static Integer MAX_ROWNUM = 5000;
 
     @Override
     public SPage<ProductUsers> findProductInfoByPageInfo(PageInfo pageInfo) {
@@ -171,7 +171,7 @@ public class ProductUsersServiceImpl implements ProductUsersService {
     }
 
     @Override
-    public ModelMap releaseByWorkbook(Workbook workbook) throws Exception {
+    public ModelMap releaseByWorkbook(Workbook workbook) {
         long start = System.currentTimeMillis();
         ModelMap modelMap = new ModelMap();
         List<ProductTemp> temps = new ArrayList<>();
@@ -181,9 +181,6 @@ public class ProductUsersServiceImpl implements ProductUsersService {
         String codePrefix = "PR" + DateUtils.format(new Date(), "yyMMddHHmmss") + StringUtil.getRandomNumber(3);
         Sheet sheet = workbook.getSheetAt(0);
         int rowNum = sheet.getLastRowNum();
-        if (rowNum > MAX_ROWNUM) {
-            throw new IllegalOperatorException("单次上传不超过20000条");
-        }
         Row headerRow = sheet.getRow(0);
         int total = 0;
         short isSale = Constant.YES;
@@ -301,7 +298,9 @@ public class ProductUsersServiceImpl implements ProductUsersService {
                     temps.add(temp);
                 }
             }
-
+            if (total > MAX_ROWNUM) {
+                throw new IllegalOperatorException("批量导入超过限制行数5000行,不能导入!");
+            }
             modelMap.put("total", total);
             // 本地校验
             checkTempProducts(temps, modelMap);

+ 7 - 7
src/main/java/com/uas/platform/b2b/service/impl/PurcProductServiceImpl.java

@@ -40,15 +40,15 @@ public class PurcProductServiceImpl implements PurcProductService {
 	private ProductStatusDao productStatusDao;
 
 	/**
-	 * 一次上传允许的最大数量 (前三行为标题  从0开始)
+	 * 一次上传允许的最大数量
 	 */
-	private final static Integer MAX_ROWNUM = 5002;
+	private final static Integer MAX_ROWNUM = 5000;
 
 	/**
 	 * 批量导入物料资料
 	 */
 	@Override
-	public ModelMap releaseByWorkbook(Workbook workbook) throws Exception {
+	public ModelMap releaseByWorkbook(Workbook workbook) {
 		ModelMap modelMap = new ModelMap();
 		List<String> alters = new ArrayList<String>();
 		List<String> infos = new ArrayList<String>();
@@ -58,9 +58,6 @@ public class PurcProductServiceImpl implements PurcProductService {
 		Sheet sheet = workbook.getSheetAt(0);
 		String codePrefix = "PR" + DateUtils.format(new Date(), "yyMMddHHmmss") + StringUtil.getRandomNumber(3);
 		int rowNum = sheet.getLastRowNum();
-		if (rowNum > MAX_ROWNUM) {
-			throw new IllegalOperatorException("单次上传不超过5000条");
-		}
 		Row headerRow = sheet.getRow(0);
 		int total = 0;
 		if (headerRow != null) {
@@ -324,10 +321,13 @@ public class PurcProductServiceImpl implements PurcProductService {
 					modelMap.put("products", productsInfo);
 				}
 			}
+			if (total > MAX_ROWNUM) {
+				throw new IllegalOperatorException("批量导入超过限制行数5000行,不能导入!");
+			}
 			if (!CollectionUtils.isEmpty(products) || !CollectionUtils.isEmpty(oldProducts)) {
 				try {
 				    products.addAll(oldProducts);
-					ProductUtils.update(products);
+					ProductUtils.paginationUpdate(products);
 					modelMap.put("success", products.size());
 				} catch (Exception e) {
 					modelMap.put("error", "上传失败,可能存在编号相同的物料");

+ 1 - 1
src/main/webapp/resources/js/index/app.js

@@ -16395,7 +16395,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 pageParams.keyword = $scope.keyword;
                 $scope.tip = $scope.keyword;
                 pageParams.custUU = $scope.order.receiveCode;
-                Product.get.call(null, BaseService.parseParams(pageParams), function (page) {
+                Product.vendPord.call(null, BaseService.parseParams(pageParams), function (page) {
                     $scope.loading = false;
                     if (page) {
                         params.total(page.totalElement);

+ 1 - 1
src/main/webapp/resources/tpl/index/approvalFlow/modal/uplodaByBatch.html

@@ -13,7 +13,7 @@
 </div>
 <div class="modal-header Deputy" style="min-height: 50px;">
 	<div class="content f16 text-bold">批量导入
-		<span class="f12" style="color:#55b6ff;"><i class="fa fa-info-circle"></i>单次上传不超过20000条</span>
+		<span class="f12" style="color:#55b6ff;"><i class="fa fa-info-circle"></i>单次上传不超过5000条</span>
 		<a style="float:right; padding-right: 30px;" ng-click="cancel()"><i class="fa fa-close"></i></a>
 	</div>
 </div>