From 5122701af4ecb76d6cc05655ba64ab07622eb51e Mon Sep 17 00:00:00 2001
From: lxw <810412026@qq.com>
Date: 星期二, 30 八月 2022 16:32:26 +0800
Subject: [PATCH] 历史版本查看需要加软件

---
 src/main/java/com/whyc/service/ProductBomService.java |   47 ++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 40 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProductBomService.java b/src/main/java/com/whyc/service/ProductBomService.java
index c0d2425..de69975 100644
--- a/src/main/java/com/whyc/service/ProductBomService.java
+++ b/src/main/java/com/whyc/service/ProductBomService.java
@@ -165,7 +165,28 @@
             e.printStackTrace();
         }
     }
+    //鏂囦欢澶圭殑鎷疯礉
+    public  void copyDir(String sourcePathDir, String newPathDir) {
+        File start = new File(sourcePathDir);
+        File end = new File(newPathDir);
+        if(!start.exists()) {
+            start.mkdir();
+        }
+        String[] filePath = start.list();//鑾峰彇璇ユ枃浠跺す涓嬬殑鎵�鏈夋枃浠朵互鍙婄洰褰曠殑鍚嶅瓧
+        if(!end.exists()) {
+            end.mkdir();
+        }
+        if(filePath.length>=0){
+            for(String temp : filePath) {
+                //娣诲姞婊¤冻鎯呭喌鐨勬潯浠�
+                if(new File(sourcePathDir + File.separator + temp ).isFile()) {
+                    //涓烘枃浠跺垯杩涜鎷疯礉
+                    copyFile(new File(sourcePathDir + File.separator + temp ), newPathDir );
+                }
+            }
+        }
 
+    }
     public void updateUrl(List<ProductBomApproving> fileBomApprovingList) {
         mapper.updateUrl(fileBomApprovingList);
     }
@@ -191,11 +212,6 @@
     //浜у搧涓嬭浇(浜у搧id鍜岀増鏈�)
     public  void downloadProduct(HttpServletRequest req, HttpServletResponse resp, int productId , int version) {
         HSSFWorkbook wb = new HSSFWorkbook();
-        //瀛椾綋鏍煎紡-鍔犵矖
-        HSSFCellStyle cellStyle = wb.createCellStyle();
-        HSSFFont font = wb.createFont();
-        font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
-        cellStyle.setFont(font);
         //璇诲彇浜у搧淇℃伅
         QueryWrapper wrapper=new QueryWrapper();
         wrapper.eq("id",productId);
@@ -216,8 +232,15 @@
                 }
             }
         });
+        //灏嗘病鏈夌鐞咮OM鐨刣wg鏂囦欢鎷疯礉涓嬭浇
+        String withOutDwg="doc_file/product"+File.separator+product.getParentModel();
+        if(product.getCustomCode()!=null&&!product.getCustomCode().isEmpty()){
+            withOutDwg+=File.separator+product.getCustomCode()+File.separator+version;
+        }else{
+            withOutDwg+=File.separator+"standard"+File.separator+version;
+        }
         //鐢熸垚excel骞跺皢dwg鏂囦欢鏀惧湪鍚屼竴鎶ヤ笅鍘嬬缉
-        creatBomExcel(req,resp,product,endList,wb,"bom");
+        creatBomExcel(req,resp,product,endList,wb,"bom",withOutDwg);
         //璁板綍鏃ュ織
         DocUser docUser= ActionUtil.getUser();
         String operationDetail="鍏蜂綋浜у搧淇℃伅涓�:"+product.toString();
@@ -228,10 +251,16 @@
 
 
     //鏍规嵁浜у搧淇℃伅鍒涘缓excel琛ㄦ牸骞跺瓨鏀惧湪鎸囧畾鐩綍
-    private void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,Product product,List list, HSSFWorkbook wb,String type){
+    private void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,Product product,List list, HSSFWorkbook wb,String type,String withOutDwg){
         String fileDirName = FileDirPath.getFileDirName();
         String rootFace="";
         String excelName="";
+        //瀛椾綋鏍煎紡-鍔犵矖
+        HSSFCellStyle cellStyle = wb.createCellStyle();
+        HSSFFont font = wb.createFont();
+        font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+        font.setColor(HSSFFont.COLOR_RED);
+        cellStyle.setFont(font);
         //鍒涘缓鍗曚釜sheet
         HSSFSheet sheet = wb.createSheet("浜у搧淇℃伅");
         sheet.setColumnWidth(1,5000);
@@ -274,6 +303,9 @@
         if(!destfile.exists()) {
             destfile.mkdir();
         }
+        //灏嗘病鏈夌鐞咮OM鐨刣wg鏂囦欢鎷疯礉涓嬭浇
+        withOutDwg=fileDirName+File.separator+withOutDwg;
+        copyDir(withOutDwg,rootFace);
         //灏嗛�変腑鐨勬枃浠跺瓨鍏ユ寚瀹氱洰褰曚笅鎵撳寘涓嬭浇
         if(list!=null&&list.size()>0){
             for (int i=0;i<list.size();i++) {
@@ -284,6 +316,7 @@
                     copyFile(sourceFile,rootFace);
                 }
                 Row row=sheet.createRow(rownum+i+1);
+                row.setRowStyle(cellStyle);
                 sheet.getRow(rownum+i+1).createCell(1).setCellValue(i+1);
                 sheet.getRow(rownum+i+1).createCell(2).setCellValue(product.getParentCode());
                 sheet.getRow(rownum+i+1).createCell(3).setCellValue(product.getParentName());

--
Gitblit v1.9.1