From a6719714bfd4dc7c17ec3b8ab022f6e5c990b0fd Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期四, 21 七月 2022 11:33:59 +0800
Subject: [PATCH] 更新zip解析

---
 src/main/java/com/whyc/service/ProductBomApprovingService.java |   51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProductBomApprovingService.java b/src/main/java/com/whyc/service/ProductBomApprovingService.java
index 85622b2..f5c9197 100644
--- a/src/main/java/com/whyc/service/ProductBomApprovingService.java
+++ b/src/main/java/com/whyc/service/ProductBomApprovingService.java
@@ -1,15 +1,18 @@
 package com.whyc.service;
 
+import com.whyc.dto.Response;
 import com.whyc.mapper.ProductBomApprovingMapper;
 import com.whyc.pojo.DocUser;
 import com.whyc.pojo.ProductBomApproving;
 import com.whyc.pojo.WorksheetMain;
 import com.whyc.util.ActionUtil;
 import com.whyc.util.CommonUtil;
+import com.whyc.util.Zip4jUtil;
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 import org.apache.poi.ss.usermodel.*;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import javax.xml.crypto.Data;
@@ -104,4 +107,52 @@
     public void insert(List<ProductBomApproving> bomList) {
         mapper.insertBatchSomeColumn(bomList);
     }
+
+    public Response zipParse(MultipartFile file) throws IOException {
+        Response response = new Response();
+        //妫�鏌ユ槸鍚︿负zip
+        boolean isZip = Zip4jUtil.checkZipFileParam(file);
+        if(!isZip){
+            return response.set(1,false,"涓婁紶鐨勬枃浠舵牸寮忎笉鏄痾ip");
+        }
+        //zip瀛樺偍璺緞:doc_file/product_approving/${username}/{dateFormat}/${timeStamp}
+        String rootFile = CommonUtil.getRootFile();
+        DocUser user = ActionUtil.getUser();
+        String dateFormat = new SimpleDateFormat("YYYY-MM").format(new Date());
+        long timeStamp = System.currentTimeMillis();
+        String zipPath = rootFile + File.separator + "product_approving" + File.separator + user.getName() + File.separator + dateFormat+ File.separator + timeStamp;
+        File zipFile = new File(zipPath);
+        if(!zipFile.exists()){
+            zipFile.mkdirs();
+        }
+        file.transferTo(zipFile);
+        //瑙e帇鏂囦欢澶�
+        Zip4jUtil.unPackZip(zipFile,null,zipPath);
+        //閬嶅巻瑙e帇鍚庣殑鏂囦欢澶硅矾寰�,瑙f瀽excel
+        System.out.println(zipPath);
+        File[] bomFileDirArr = zipFile.listFiles();
+        for (File bomFileDir : bomFileDirArr){
+            String bomFileDirName = bomFileDir.getName();
+            System.out.println(bomFileDirName);
+            File[] bomFileArr = bomFileDir.listFiles();
+            for (File bomFile : bomFileArr){
+                String bomFileName = bomFile.getName();
+                //瑙f瀽excel
+                while (bomFileName.contains(".xls")){
+                    System.out.println("寰呰В鏋愮殑excel鏂囦欢涓�:"+bomFileName);
+                }
+            }
+        }
+        return null;
+    }
+
+    public static void main(String[] args) throws IOException, InvalidFormatException {
+        File file = new File("C:\\Users\\29550\\Desktop\\褰撳墠椤圭洰\\202207鍥剧焊绠$悊\\0940000072(BOM).xls");
+        boolean exists = file.exists();
+        System.out.println(exists);
+        Workbook workbook = WorkbookFactory.create(file);
+        Sheet sheet = workbook.getSheetAt(0);
+        int lastRowNum = sheet.getLastRowNum();
+        System.out.println(lastRowNum);
+    }
 }

--
Gitblit v1.9.1