From 00d5cf2fc670965fc13fbb01ff1dfbd339130ced Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期日, 08 一月 2023 19:40:54 +0800
Subject: [PATCH] 1.8.8

---
 src/main/java/com/lf/server/controller/data/upload/CheckController.java |   50 +++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 47 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/data/upload/CheckController.java b/src/main/java/com/lf/server/controller/data/upload/CheckController.java
index ac4dd64..66b9850 100644
--- a/src/main/java/com/lf/server/controller/data/upload/CheckController.java
+++ b/src/main/java/com/lf/server/controller/data/upload/CheckController.java
@@ -5,6 +5,7 @@
 import com.lf.server.entity.all.ResponseMsg;
 import com.lf.server.entity.all.StaticData;
 import com.lf.server.entity.ctrl.FmeReqEntity;
+import com.lf.server.helper.PathHelper;
 import com.lf.server.helper.StringHelper;
 import com.lf.server.service.data.FmeService;
 import io.swagger.annotations.ApiImplicitParam;
@@ -15,6 +16,7 @@
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.io.File;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
@@ -24,6 +26,9 @@
  * @author WWW
  */
 public class CheckController extends BaseController {
+    @Autowired
+    protected PathHelper pathHelper;
+
     @Autowired
     protected FmeService fmeService;
 
@@ -39,9 +44,7 @@
                 return fail("id涓嶈兘涓虹┖");
             }
 
-            Object obj = fmeService.getTaskStatus(id, req);
-
-            return obj;
+            return fmeService.getTaskStatus(id, req);
         } catch (Exception ex) {
             return fail(ex.getMessage(), null);
         }
@@ -72,6 +75,20 @@
             if (StringHelper.isEmpty(entity.names)) {
                 return fail("浠诲姟鍚嶇О涓嶈兘涓虹┖");
             }
+            if (StringHelper.isEmpty(entity.zipPath)) {
+                return fail("璇烽�夋嫨寰呰川妫�鐨剒ip鏂囦欢");
+            }
+
+            entity.zipPath = getFullPath(entity.zipPath);
+            if (!isZipFile(entity.zipPath)) {
+                return fail("寰呰川妫�鐨剒ip鏂囦欢涓嶅瓨鍦�");
+            }
+            if (entity.names.contains(StaticData.CHECK_MAIN)) {
+                entity.wbsPath = getFullPath(entity.wbsPath);
+                if (!isXlsFile(entity.wbsPath)) {
+                    return fail("寰呰川妫�鐨刉BS鏂囦欢涓嶅瓨鍦�");
+                }
+            }
 
             List<String> list = new ArrayList<>();
             for (String name : entity.names.split(StaticData.COMMA)) {
@@ -85,6 +102,33 @@
         }
     }
 
+    private String getFullPath(String filePath) {
+        return null == filePath ? null : pathHelper.getConfig().getTempPath() + File.separator + filePath;
+    }
+
+    private boolean isZipFile(String filePath) {
+        if (null == filePath || !filePath.toLowerCase().endsWith(StaticData.ZIP)) {
+            return false;
+        }
+
+        File zipFile = new File(filePath);
+
+        return zipFile.exists() && !zipFile.isDirectory();
+    }
+
+    private boolean isXlsFile(String filePath) {
+        if (null == filePath) {
+            return false;
+        }
+        if (!(filePath.toLowerCase().endsWith(StaticData.XLS) || filePath.toLowerCase().endsWith(StaticData.XLSX))) {
+            return false;
+        }
+
+        File zipFile = new File(filePath);
+
+        return zipFile.exists() && !zipFile.isDirectory();
+    }
+
     /**
      * 鏂规硶璋冪敤
      */

--
Gitblit v1.9.3