From ec7196276592289acbf6f20415b1aaea73977852 Mon Sep 17 00:00:00 2001
From: lxw <810412026@qq.com>
Date: 星期三, 03 八月 2022 11:20:45 +0800
Subject: [PATCH] 产品下载后需要删除文件夹和压缩包

---
 src/main/java/com/whyc/service/ProductBomService.java |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProductBomService.java b/src/main/java/com/whyc/service/ProductBomService.java
index efeb4d1..7195160 100644
--- a/src/main/java/com/whyc/service/ProductBomService.java
+++ b/src/main/java/com/whyc/service/ProductBomService.java
@@ -56,10 +56,11 @@
         String pictureName="";
         //灏嗛�変腑鐨勬枃浠跺瓨鍏ユ寚瀹氱洰褰曚笅鎵撳寘涓嬭浇
         if(pictureUrls!=null&&pictureUrls.size()>0){
-            for (String picUrl:pictureUrls) {
+            for (int i=0;i<pictureUrls.size();i++) {
+                String picUrl=pictureUrls.get(i);
                 pictureName+=picUrl.substring(picUrl.lastIndexOf("\\")+1)+",";
                 File sourceFile=new File(fileDirName+ File.separator+picUrl);
-                copyFile(sourceFile,rootFace);
+                copyFile(sourceFile,rootFace,i);
             }
         }
         String timeStr= ActionUtil.sdfwithFTP.format(new Date());
@@ -82,7 +83,6 @@
             in.close();
             out.close();
             file.delete();//鍒犻櫎鍘嬬缉鏂囦欢
-            ZipUtils.delDir(rootFace);//鍒犻櫎鏂囦欢澶�
         } catch (FileNotFoundException | UnsupportedEncodingException e) {
             e.printStackTrace();
         } catch (IOException e) {
@@ -151,11 +151,15 @@
     }
 
     //灏嗛�変腑鐨勬枃浠跺瓨鍏ユ寚瀹氱洰褰曚笅
-    public void copyFile(File source,String dest ){
+    public void copyFile(File source,String dest,int i ){
         //鍒涘缓鐩殑鍦版枃浠跺す
         File destfile = new File(dest);
         if(!destfile.exists()) {
             destfile.mkdir();
+        }else{
+            if(i==0){
+                ZipUtils.delDir(dest);
+            }
         }
         //source鏄枃浠讹紝鍒欑敤瀛楄妭杈撳叆杈撳嚭娴佸鍒舵枃浠�
         try {
@@ -209,12 +213,12 @@
         wrapper.eq("parent_model",parentModel);
         List<ProductBom> list=mapper.selectList(wrapper);
         //鐢熸垚excel骞跺皢dwg鏂囦欢鏀惧湪鍚屼竴鎶ヤ笅鍘嬬缉
-        creatBomExcel(req,resp,list,wb);
+        creatBomExcel(req,resp,list,wb,parentModel);
     }
     //鏍规嵁浜у搧淇℃伅鍒涘缓excel琛ㄦ牸骞跺瓨鏀惧湪鎸囧畾鐩綍
-    public void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,List<ProductBom> list, HSSFWorkbook wb){
+    public void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,List<ProductBom> list, HSSFWorkbook wb, String parentModel){
         String fileDirName = FileDirPath.getFileDirName();
-        String rootFace=fileDirName+ File.separator+"downLoad";
+        String rootFace=fileDirName+ File.separator+parentModel;
         String pictureName="";
         String excelName="";
         //鍒涘缓鍗曚釜sheet
@@ -249,7 +253,7 @@
                 if((dwgUrl!=null)&&(!dwgUrl.isEmpty())){
                     pictureName+=dwgUrl.substring(dwgUrl.lastIndexOf("\\")+1)+",";
                     File sourceFile=new File(fileDirName+ File.separator+dwgUrl);
-                    copyFile(sourceFile,rootFace);
+                    copyFile(sourceFile,rootFace,i);
                 }
                 Row row=sheet.createRow(rownum+i+1);
                 row.setHeight((short)(1500));
@@ -309,7 +313,7 @@
                 }
             }
         }
-        try {
+       try {
             File file=new File(rootFace+".zip");
             FileOutputStream forootFace = new FileOutputStream(file);
             ZipUtils.toZip(rootFace, forootFace,true);
@@ -328,7 +332,6 @@
             in.close();
             out.close();
             file.delete();
-            ZipUtils.delDir(rootFace);
         } catch (FileNotFoundException | UnsupportedEncodingException e) {
             e.printStackTrace();
         } catch (IOException e) {

--
Gitblit v1.9.1