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