From 07a2f9c762efb3be3a29e2e8cc7004d4164cc9d8 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期一, 22 十二月 2025 20:15:58 +0800
Subject: [PATCH] 修改了对应代码

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java |  258 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 195 insertions(+), 63 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java
index 59a903c..ecf6382 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java
@@ -445,7 +445,7 @@
 
 
 
-            ExcelExp e6 = new ExcelExp("绉讳氦娓呭崟",lrs, ArchiveRecordSmall.class);
+            ExcelExp e6 = new ExcelExp("绉讳氦娓呭崟","GH" + formattedDate + sequence,  lrs, ArchiveRecordSmall.class);
           //  ExcelExp e4 = new ExcelExp("妗堝嵎灏侀潰",  arsi, recordId1, imgr1,sedcode, ArchiveInfoVo.class);
             List<ExcelExp> mysheet6 = new ArrayList<ExcelExp>();
             mysheet6.add(e6);
@@ -464,20 +464,26 @@
 
 
 
+            System.out.println(ids.length);
+            System.out.println("------------------");
+
             for(int i = 0; i < ids.length; i++) {
+                System.out.println(ids[i]);
 
                 // 鑾峰彇鏂囦欢鐨勪繚瀛樹綅缃�,璇诲彇鏁版嵁搴�,
                 DocumentMaterials documentMaterials = new DocumentMaterials();
                 documentMaterials.setRecordId(ids[i]);
                 List<DocumentMaterialsVoLarge> docs = documentMaterialsService.selectDocumentMaterialsAllByRecordId(ids[i]);
-                System.out.println(docs.size()+"----009");
+                System.out.println(docs.size()+"----7777");
 
 
                 //.selectDocumentMaterialsList(documentMaterials);
                 List<DocumentMaterialsVo> dsvs = documentMaterialsService.findArchMInfo(ids[i].toString());
                 ArchiveInfoVo aIV = iArchiveRecordsService.selectByRecordId(ids[i]);
-
+                System.out.println(aIV.getInquiryNumber());
+                System.out.println(aIV.getRecordId());
                 String adir = aIV.getInquiryNumber() + " " + aIV.getRecordId();
+                System.out.println(adir);
                 System.out.println(fna+adir);
                 zos.putNextEntry(new ZipEntry(fna + adir + "/"));
 
@@ -494,39 +500,26 @@
                 }
                 //娣诲姞07  鐨刾df
                 //pdf鐩綍灏侀潰
-                String pdfPathF = "07-妗堝嵎灏侀潰.pdf";
-                pdfGenerateService.generatePdf(pdfPathF, ids[i]);
-                // 2. 鍘嬬缉PDF鍒癦IP鏂囦欢
-                // 娣诲姞PDF鏂囦欢鍒癦IP
-                ZipEntry zipEntry2 = new ZipEntry(fna + adir +"/"+pdfPathF);
-                zos.putNextEntry(zipEntry2);
+//                String pdfPathF = "07-妗堝嵎灏侀潰.pdf";
+//                pdfGenerateService.generatePdf(pdfPathF, ids[i]);
+//                // 2. 鍘嬬缉PDF鍒癦IP鏂囦欢
+//                // 娣诲姞PDF鏂囦欢鍒癦IP
+//                ZipEntry zipEntry2 = new ZipEntry(fna + adir +"/"+pdfPathF);
+//                zos.putNextEntry(zipEntry2);
+//
+//                // 璇诲彇PDF鏂囦欢鍐呭骞跺啓鍏IP
+//                try (FileInputStream fis = new FileInputStream(pdfPathF)) {
+//                    byte[] buffer = new byte[1024];
+//                    int len;
+//                    while ((len = fis.read(buffer)) > 0) {
+//                        zos.write(buffer, 0, len);
+//                    }
+//                }
 
-                // 璇诲彇PDF鏂囦欢鍐呭骞跺啓鍏IP
-                try (FileInputStream fis = new FileInputStream(pdfPathF)) {
-                    byte[] buffer = new byte[1024];
-                    int len;
-                    while ((len = fis.read(buffer)) > 0) {
-                        zos.write(buffer, 0, len);
-                    }
-                }
 
-                //08-鍗峰唴鍗峰唴鐩綍鐨刾df
-                String pdf08Path= "08-鍗峰唴鐩綍.pdf";
-                List<DocumentMaterialsVo> list3 = dsvs;
-                if(list3.size()>0) {
-                    pdfGenerateService.generateFileDirectoryPdf(pdf08Path, list3);
-                    ZipEntry zipEntry3 = new ZipEntry(fna + adir +"/"+pdf08Path);
-                    zos.putNextEntry(zipEntry3);
 
-                    // 璇诲彇PDF鏂囦欢鍐呭骞跺啓鍏IP
-                    try (FileInputStream fis = new FileInputStream(pdf08Path)) {
-                        byte[] buffer = new byte[1024];
-                        int len;
-                        while ((len = fis.read(buffer)) > 0) {
-                            zos.write(buffer, 0, len);
-                        }
-                    }
-                }
+
+
                 //09-澶囪�冭〃.pdf
 
 
@@ -652,6 +645,64 @@
                 //  System.out.println(bos2);
                 zos.putNextEntry(entryiv);
 
+
+                bos2.writeTo(zos);
+
+
+                //pdf鐩綍灏侀潰
+                String pdfPathF = "07-妗堝嵎灏侀潰.pdf";
+                // pdfGenerateService.generatePdf(pdfPathF, id);
+
+                try {
+                    if (!getLicenseExcel()) {
+                        System.out.println("鎺堟潈澶辫触");
+                        // return ;
+                    }
+                    // 璇诲彇Excel鏂囦欢
+                    com.aspose.cells.Workbook wb = poiToAspose(util3.getWb());
+
+                    // 鑾峰彇闇�瑕佸鍑虹殑sheet锛堢储寮曚粠0寮�濮嬶級
+                    int targetSheetIndex = 1;
+                    com.aspose.cells.Worksheet targetSheet = wb.getWorksheets().get(targetSheetIndex);
+                    targetSheet.autoFitRows(true);
+                    System.out.println("褰撳墠sheet鍚嶇О锛�" + targetSheet.getName());
+                    System.out.println("褰撳墠sheet绱㈠紩锛�" + targetSheet.getIndex());
+
+                    // 闅愯棌鎵�鏈夊叾浠栧伐浣滆〃
+                    for (int j = 0; j < wb.getWorksheets().getCount(); j++) {
+                        if (j != targetSheetIndex) {
+                            wb.getWorksheets().get(j).setVisible(false);
+                        }
+                    }
+
+                    // 璁剧疆娲诲姩宸ヤ綔琛ㄤ负鐩爣宸ヤ綔琛�
+                    wb.getWorksheets().setActiveSheetIndex(targetSheetIndex);
+                    // 鍒涘缓PDF淇濆瓨閫夐」
+                    com.aspose.cells.PdfSaveOptions pdfSaveOptions = new com.aspose.cells.PdfSaveOptions();
+                    pdfSaveOptions.setCompliance(com.aspose.cells.PdfCompliance.PDF_A_1_B);
+                    // 鍒涘缓涓存椂瀛楄妭杈撳嚭娴�
+                    ByteArrayOutputStream baos = new ByteArrayOutputStream();
+
+                    // 灏嗘柊鐨刉orkbook淇濆瓨涓篜DF鍒颁复鏃舵祦
+                    //   newWorkbook.save(baos, com.aspose.cells.SaveFormat.PDF);
+                    wb.save(baos, pdfSaveOptions);
+
+                    // 灏哖DF娣诲姞鍒癦IP鏂囦欢
+                    ZipEntry entry07 = new ZipEntry(fna + adir +"/"+pdfPathF);
+                    zos.putNextEntry(entry07);
+                    zos.write(baos.toByteArray());
+                    //  zos.closeEntry();
+                    // 鐩存帴灏嗗師濮嬪伐浣滅翱淇濆瓨涓篜DF锛堝彧鍖呭惈鍙鐨勫伐浣滆〃锛�
+
+                    long now = System.currentTimeMillis();
+                    //   System.out.println("pdf杞崲鎴愬姛锛屽叡鑰楁椂锛�" + ((now - old) / 1000.0) + "绉�");
+                } catch (Exception e) {
+                    e.printStackTrace();
+                    // 鎵撳嵃璇︾粏閿欒淇℃伅
+                    System.err.println("杞崲澶辫触锛�" + e.getMessage());
+                    e.printStackTrace(System.err);
+                }
+
 //            ExcelUtil<ArchiveInfoVo> utilsv = new ExcelUtil<ArchiveInfoVo>(ArchiveInfoVo.class);
 //
 //
@@ -659,7 +710,7 @@
 //            List<ArchiveInfoVo> aivs = new ArrayList<>();
 //            aivs.add(aIV);
 //            utilsv.byteOutputStreamExcel(boss, aivs,"Date List", "");
-                bos2.writeTo(zos);
+
 
 
 
@@ -691,12 +742,90 @@
                     zos.putNextEntry(entr);
                     ByteOutputStream bos8 = new ByteOutputStream();
 
-                    util2.exportExcelManySheet(bos6, mysheet);
+                    util2.exportExcelManySheet(bos8, mysheet);
 
                     //   util1.byteOutputStreamExcel(bos1, dsvs,"Date List", "");
                     bos8.writeTo(zos);
+
+
+
+
+                    //08-鍗峰唴鍗峰唴鐩綍鐨刾df
+                    String pdf08Path= "08-鍗峰唴鐩綍.pdf";
+                    try {
+                        if (!getLicenseExcel()) {
+                            System.out.println("鎺堟潈澶辫触");
+                            // return ;
+                        }
+                        // 璇诲彇Excel鏂囦欢
+                        com.aspose.cells.Workbook wb1 = poiToAspose(util2.getWb());
+
+                        // 鑾峰彇闇�瑕佸鍑虹殑sheet锛堢储寮曚粠0寮�濮嬶級
+                        int targetSheetIndex = 1;
+                        com.aspose.cells.Worksheet targetSheet = wb1.getWorksheets().get(targetSheetIndex);
+                        targetSheet.autoFitRows(true);
+                        System.out.println("褰撳墠sheet鍚嶇О锛�" + targetSheet.getName());
+                        System.out.println("褰撳墠sheet绱㈠紩锛�" + targetSheet.getIndex());
+
+                        // 闅愯棌鎵�鏈夊叾浠栧伐浣滆〃
+                        for (int j = 0; j < wb1.getWorksheets().getCount(); j++) {
+                            if (j != targetSheetIndex) {
+                                wb1.getWorksheets().get(j).setVisible(false);
+                            }
+                        }
+
+                        // 璁剧疆娲诲姩宸ヤ綔琛ㄤ负鐩爣宸ヤ綔琛�
+                        wb1.getWorksheets().setActiveSheetIndex(targetSheetIndex);
+                        // 鍒涘缓PDF淇濆瓨閫夐」
+                        com.aspose.cells.PdfSaveOptions pdfSaveOptions = new com.aspose.cells.PdfSaveOptions();
+                        pdfSaveOptions.setCompliance(com.aspose.cells.PdfCompliance.PDF_A_1_B);
+                        // 鍒涘缓涓存椂瀛楄妭杈撳嚭娴�
+                        ByteArrayOutputStream baosm = new ByteArrayOutputStream();
+
+                        // 灏嗘柊鐨刉orkbook淇濆瓨涓篜DF鍒颁复鏃舵祦
+                        //   newWorkbook.save(baos, com.aspose.cells.SaveFormat.PDF);
+                        wb1.save(baosm, pdfSaveOptions);
+
+                        // 灏哖DF娣诲姞鍒癦IP鏂囦欢
+                        ZipEntry entry2 = new ZipEntry(fna + adir +"/"+pdf08Path);
+                        zos.putNextEntry(entry2);
+                        zos.write(baosm.toByteArray());
+                        //  zos.closeEntry();
+                        // 鐩存帴灏嗗師濮嬪伐浣滅翱淇濆瓨涓篜DF锛堝彧鍖呭惈鍙鐨勫伐浣滆〃锛�
+
+                        long now = System.currentTimeMillis();
+                        //   System.out.println("pdf杞崲鎴愬姛锛屽叡鑰楁椂锛�" + ((now - old) / 1000.0) + "绉�");
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                        // 鎵撳嵃璇︾粏閿欒淇℃伅
+                        System.err.println("杞崲澶辫触锛�" + e.getMessage());
+                        e.printStackTrace(System.err);
+                    }
+
+
                 }
                 //鎶奺xcel杞负pdf
+
+//
+//                //08-鍗峰唴鍗峰唴鐩綍鐨刾df
+//                String pdf08Path= "08-鍗峰唴鐩綍.pdf";
+//                List<DocumentMaterialsVo> list3 = dsvs;
+//                if(list3.size()>0) {
+//                    pdfGenerateService.generateFileDirectoryPdf(pdf08Path, list3);
+//                    ZipEntry zipEntry3 = new ZipEntry(fna + adir +"/"+pdf08Path);
+//                    zos.putNextEntry(zipEntry3);
+//
+//                    // 璇诲彇PDF鏂囦欢鍐呭骞跺啓鍏IP
+//                    try (FileInputStream fis = new FileInputStream(pdf08Path)) {
+//                        byte[] buffer = new byte[1024];
+//                        int len;
+//                        while ((len = fis.read(buffer)) > 0) {
+//                            zos.write(buffer, 0, len);
+//                        }
+//                    }
+//                }
+//
+//
 
 
 
@@ -713,38 +842,40 @@
                     //鍦ㄥ帇缂╁寘涓坊鍔犳枃浠跺す
 
                     //寰楀埌鏂囦欢鍚峟rontCompWithZore(4, dc.get)+
-                    String fname = frontCompWithZore(4, dc.getFileNumber().intValue())+"-"+dc.getTitle()+"-"+frontCompWithZore(4,dc.getPageNumber().intValue())+"."
-                            +dc.getUrl().split("\\.")[1];
-                    if(dc.getStage().equals("01-鐢宠鏉愭枡"))
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/01-鐢宠鏉愭枡/"+fname));
-                    else if(dc.getStage().equals("02-鍔炴杩囩▼鏉愭枡"))
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/02-鍔炴杩囩▼鏉愭枡/"+fname));
-                    else if(dc.getStage().equals("03-缁撹鎬ф枃浠�"))
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/03-缁撹鎬ф枃浠�/"+fname));
-                    else if(dc.getStage().equals("04-鍏朵粬鏉愭枡")) {
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/04-鍏朵粬鏉愭枡/" + fname));
-                    }
-                    else if(dc.getStage().equals("05-妗f鍙樻洿鏉愭枡"))
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/05-妗f鍙樻洿鏉愭枡/"+fname));
-                    else if(dc.getStage().equals("06-涓氬姟鏁版嵁"))
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/06-涓氬姟鏁版嵁/"+fname));
-                    else
-                        zos.putNextEntry(new ZipEntry(fna + adir + "/"+fname));
 
+                    String fname = "";
+                    if(dc.getFileNumber()!=null&&dc.getPageNumber()!=null) {
+                        fname = frontCompWithZore(4, dc.getFileNumber().intValue()) + "-" + dc.getTitle() + "-" + frontCompWithZore(4, dc.getPageNumber().intValue()) + "."
+                                + dc.getUrl().split("\\.")[1];
+                        if (dc.getStage().equals("01-鐢宠鏉愭枡"))
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/01-鐢宠鏉愭枡/" + fname));
+                        else if (dc.getStage().equals("02-鍔炴杩囩▼鏉愭枡"))
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/02-鍔炴杩囩▼鏉愭枡/" + fname));
+                        else if (dc.getStage().equals("03-缁撹鎬ф枃浠�"))
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/03-缁撹鎬ф枃浠�/" + fname));
+                        else if (dc.getStage().equals("04-鍏朵粬鏉愭枡")) {
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/04-鍏朵粬鏉愭枡/" + fname));
+                        } else if (dc.getStage().equals("05-妗f鍙樻洿鏉愭枡"))
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/05-妗f鍙樻洿鏉愭枡/" + fname));
+                        else if (dc.getStage().equals("06-涓氬姟鏁版嵁"))
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/06-涓氬姟鏁版嵁/" + fname));
+                        else
+                            zos.putNextEntry(new ZipEntry(fna + adir + "/" + fname));
 
-
-                    int len;
-                    FileInputStream in = new FileInputStream(tempFile);
-                    while ((len = in.read(buf)) != -1){
-                        zos.write(buf, 0, len);
-                    }
-                    //  zos.putNextEntry(new ZipEntry("04-鍏朵粬鏉愭枡"));
-                    zos.closeEntry();
-                    in.close();
                 }
-            }
 
-            //鍒犻櫎鍘嬬缉鍖�
+                int len;
+                FileInputStream in = new FileInputStream(tempFile);
+                while ((len = in.read(buf)) != -1){
+                    zos.write(buf, 0, len);
+                }
+                  //  zos.putNextEntry(new ZipEntry("04-鍏朵粬鏉愭枡"));
+                zos.closeEntry();
+                in.close();
+            }
+        }
+
+        //鍒犻櫎鍘嬬缉鍖�
 //            if(file.exists()){
 //                file.delete();
 //            }
@@ -1248,6 +1379,7 @@
 
                 System.out.println(filePath);
                 File tempFile = new File(filePath);
+
                 //鍦ㄥ帇缂╁寘涓坊鍔犳枃浠跺す
                 if(res) {
                     zos.putNextEntry(new ZipEntry("01-鐢宠鏉愭枡/"));

--
Gitblit v1.9.1