소스 검색

完善excel导入

赵冬冬 4 년 전
부모
커밋
9c2a430f20

+ 25 - 7
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/UploadCompanyInfoAndProductController.java

@@ -21,7 +21,6 @@ import com.hwrj.cloud.admin.util.EasyExcelUtil;
 import com.hwrj.cloud.admin.util.OrderNo;
 import com.hwrj.cloud.admin.util.UploadFileUtil;
 import com.hwrj.cloud.common.api.CommonResult;
-import com.hwrj.cloud.common.exception.GlobalException;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -35,7 +34,10 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.File;
@@ -72,6 +74,7 @@ public class UploadCompanyInfoAndProductController {
             @ApiImplicitParam(name = "compName", value = "公司名称", required = false)
     })
     @PostMapping("/upload")
+    @Transactional
     public CommonResult readFile(@RequestParam(value = "paths") String paths, @RequestParam(value = "type") String type, @RequestParam(value = "compName", required = false) String compName) {
 
         if ("1".equals(type)) {
@@ -168,7 +171,12 @@ public class UploadCompanyInfoAndProductController {
             infoFile.setFileStatus(0);
             String imgName = br + s;
             str = str.toLowerCase();
-            String[] split = str.split("\\.");
+            String[] split = null;
+            try {
+                split = str.split("\\.");
+            } catch (Exception e) {
+                throw new RuntimeException("获取文件后缀出错!=======>" + split);
+            }
             imgName = imgName + "." + split[1];
             String filePath = path + "\\" + str;
             infoFile.setFileUrl(url + imgName);
@@ -270,7 +278,12 @@ public class UploadCompanyInfoAndProductController {
         for (int i = 0; i < file.size(); i++) {
             String oldFileName = file.get(i);
             String s = OrderNo.NextOrderNo();
-            String[] split = oldFileName.split("\\.");
+            String[] split = null;
+            try {
+                split = oldFileName.split("\\.");
+            } catch (Exception e) {
+                throw new RuntimeException("获取文件后缀出错!=======>" + split);
+            }
             String fileName = br + s + "." + split[1];
             uploadFileUtil.uploadLocalFile(path + "\\" + oldFileName, fileName);
             if (i > 0) {
@@ -366,7 +379,12 @@ public class UploadCompanyInfoAndProductController {
             StringBuilder builder = new StringBuilder();
             for (String s : file) {
                 String fs = br + OrderNo.NextOrderNo();
-                String[] split = s.split("\\.");
+                String[] split = null;
+                try {
+                    split = s.split("\\.");
+                } catch (Exception e) {
+                    throw new RuntimeException("获取文件后缀出错!=======>" + split);
+                }
                 fs = fs + "." + split[1];
                 uploadFileUtil.uploadLocalFile(upPath + "\\" + s, fs);
                 if (s.contains("首图")) {
@@ -496,7 +514,7 @@ public class UploadCompanyInfoAndProductController {
                 list = EasyExcelUtil.readExcel(file, new UmsMemberOriginExcel(), 2, 2);
             } catch (IOException e) {
                 //e.printStackTrace();
-                throw new GlobalException(1, "上传文件错误!");
+                throw new RuntimeException("上传文件错误!");
             }
             if (list != null && list.size() > 0) {
                 for (Object obj : list) {
@@ -558,7 +576,7 @@ public class UploadCompanyInfoAndProductController {
                 list = EasyExcelUtil.readExcel(file, new PmsProductExcel(), 3, 2);
             } catch (IOException e) {
                 //e.printStackTrace();
-                throw new GlobalException(1, "上传文件错误!");
+                throw new RuntimeException("上传文件错误!");
             }
             if (list != null && list.size() > 0) {
                 for (Object obj : list) {

+ 7 - 1
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/util/UploadFileUtil.java

@@ -3,6 +3,7 @@ package com.hwrj.cloud.admin.util;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.google.gson.Gson;
+import com.hwrj.cloud.common.exception.GlobalException;
 import com.qiniu.common.QiniuException;
 import com.qiniu.common.Zone;
 import com.qiniu.http.Response;
@@ -37,7 +38,12 @@ public class UploadFileUtil {
 
     public String uploadQiNiuFiles(@RequestParam("file") MultipartFile file, String path){
         String contentType = file.getContentType();
-        String[] split = contentType.split("/");
+        String[] split = null;
+        try{
+            split = contentType.split("/");
+        }catch (Exception e){
+            throw new GlobalException("获取文件后缀出错!=======>"+split);
+        }
         path = path+"."+split[1];
         //构建一个带指定对象的配置类
         Configuration cof = new Configuration(Zone.autoZone());

+ 107 - 0
sql/更新sql.sql

@@ -84,3 +84,110 @@ ALTER TABLE `pms_product` ADD INDEX idx_product_category_id ( `product_category_
 # 产品生产地id索引
 ALTER TABLE `pms_product` ADD INDEX idx_place_of_production_id( `place_of_production_id` );
 
+# 删除重复供应商
+SELECT DISTINCT
+	aa.comp_id
+FROM
+	pms_product aa;
+
+DELETE
+FROM
+	ums_company_info
+WHERE
+	id NOT IN (
+
+	)
+## 清楚多余生产地
+#供应商
+DELETE FROM ums_company_info WHERE id = 298;
+
+#删除产品数据
+DELETE FROM pms_product WHERE comp_id = 298;
+
+#供应商文件
+DELETE FROM ums_company_file WHERE comp_id = 298;
+#供应商商店
+DELETE FROM ums_company_shop WHERE comp_id = 298;
+
+#生产地产出物
+DELETE FROM ums_member_origin_product WHERE fk_origin_id in (select a.id from ums_member_origin a where a.comp_id = 298);
+
+#生产地
+DELETE FROM ums_member_origin WHERE comp_id = 298;
+
+#意向表
+DELETE FROM oms_pre_item WHERE comp_id = 298;
+
+
+# 清楚多余文件
+SELECT DISTINCT
+	a.comp_id
+FROM
+	pms_product a
+WHERE
+	a.delete_status = 0;
+
+#供应商文件
+DELETE
+FROM
+	ums_company_file
+WHERE
+	comp_id NOT IN (
+		SELECT DISTINCT
+			a.comp_id
+		FROM
+			pms_product a
+		WHERE
+			a.delete_status = 0
+	);
+
+#供应商商店
+DELETE
+FROM
+	ums_company_shop
+WHERE
+	comp_id NOT IN (
+		SELECT DISTINCT
+			a.comp_id
+		FROM
+			pms_product a
+		WHERE
+			a.delete_status = 0
+	);
+
+#生产地产出物
+DELETE
+FROM
+	ums_member_origin_product
+WHERE
+	fk_origin_id IN (
+		SELECT
+			a.id
+		FROM
+			ums_member_origin a
+		WHERE
+			a.comp_id NOT IN (
+				SELECT DISTINCT
+					a.comp_id
+				FROM
+					pms_product a
+				WHERE
+					a.delete_status = 0
+			)
+	);
+
+#生产地
+DELETE
+FROM
+	ums_member_origin
+WHERE
+	comp_id NOT IN (
+		SELECT DISTINCT
+			a.comp_id
+		FROM
+			pms_product a
+		WHERE
+			a.delete_status = 0
+	);
+
+