From 3df6e8f9871f994dae931976d94f7cd5af5e3d6f Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期二, 10 一月 2023 14:37:28 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/service/all/BaseUploadService.java |   30 +++++++++++++++++++++++++-----
 1 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/lf/server/service/all/BaseUploadService.java b/src/main/java/com/lf/server/service/all/BaseUploadService.java
index 4f41ecf..e4ce665 100644
--- a/src/main/java/com/lf/server/service/all/BaseUploadService.java
+++ b/src/main/java/com/lf/server/service/all/BaseUploadService.java
@@ -273,8 +273,9 @@
             mf.setPath(f.getPath().substring(subPath.length()));
 
             if (isShp) {
-                mf.setTab(fileName);
                 List<String> shpFiles = getShpFiles(f.getPath());
+                mf.setTab(fileName);
+                mf.setSizes(getFilesSize(shpFiles));
                 mf.setGuid(getFilesMd5(shpFiles));
             } else {
                 mf.setSizes(FileHelper.sizeToMb(f.length()));
@@ -323,12 +324,12 @@
      * 鑾峰彇GDB鏂囦欢闆嗗悎
      */
     private List<String> getGdbFiles(String path) {
+        List<String> list = new ArrayList<>();
+
         File[] files = new File(path).listFiles();
         if (null == files || files.length == 0) {
-            return null;
+            return list;
         }
-
-        List<String> list = new ArrayList<>();
         for (File f : files) {
             list.add(f.getPath());
         }
@@ -357,6 +358,21 @@
     }
 
     /**
+     * 鑾峰彇澶氭枃浠剁殑澶у皬
+     */
+    private double getFilesSize(List<String> files) {
+        long size = 0L;
+        for (String file : files) {
+            File f = new File(file);
+            if (f.exists() && !f.isDirectory()) {
+                size += f.length();
+            }
+        }
+
+        return FileHelper.sizeToMb(size);
+    }
+
+    /**
      * 鑾峰彇GDB鏂囦欢鏄犲皠
      */
     private List<MetaFileEntity> getGdbMappers(File f, MetaFileEntity meta, String subPath) {
@@ -367,8 +383,10 @@
 
         String fileName = FileHelper.getFileName(f.getPath());
         String extName = FileHelper.getExtension(fileName);
+
         List<String> gdbFiles = getGdbFiles(f.getPath());
         String md5 = getFilesMd5(gdbFiles);
+        double sizes = getFilesSize(gdbFiles);
 
         List<MetaFileEntity> list = new ArrayList<>();
         for (String tab : tabs) {
@@ -379,10 +397,12 @@
             mf.setSizes(FileHelper.sizeToMb(f.length()));
             mf.setPath(f.getPath().substring(subPath.length()));
             mf.setTab(tab);
+            mf.setSizes(sizes);
             mf.setGuid(md5);
+            list.add(mf);
         }
 
-        return null;
+        return list;
     }
 
     /**

--
Gitblit v1.9.3