From fcc5194c1b671e76cb9054c9a14360139fe3be72 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期二, 16 九月 2025 22:23:50 +0800
Subject: [PATCH] 新增了代码

---
 archiveManager/src/main/java/com/ruoyi/service/impl/pdfGenerateService.java |   39 +++++++++++++++++++++++++++++++++++----
 1 files changed, 35 insertions(+), 4 deletions(-)

diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/pdfGenerateService.java b/archiveManager/src/main/java/com/ruoyi/service/impl/pdfGenerateService.java
index c1081b0..8c8e306 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/impl/pdfGenerateService.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/pdfGenerateService.java
@@ -12,9 +12,11 @@
 import com.itextpdf.text.pdf.PdfPTable;
 import com.itextpdf.text.pdf.PdfWriter;
 import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.domain.ArchiveRecords;
 import com.ruoyi.domain.vo.DocumentMaterialFileStyle;
 import com.ruoyi.domain.vo.DocumentMaterialsVo;
 import com.ruoyi.domain.vo.DocumentMaterialsVoSmall;
+import com.ruoyi.service.IArchiveRecordsService;
 import com.ruoyi.service.IDocumentMaterialsService;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.usermodel.*;
@@ -28,6 +30,9 @@
 import java.io.*;
 import java.text.SimpleDateFormat;
 import java.time.LocalDate;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+import java.util.Date;
 import java.util.List;
 
 @Service
@@ -36,6 +41,9 @@
     private BarcodeService barcodeService;
     @Autowired
     private IDocumentMaterialsService documentMaterialsService;
+
+    @Autowired
+    private IArchiveRecordsService iArchiveRecordsService;
     //鐢熶骇浜岀淮鐮�
     public byte[] createQrCodeN(String content, int width, int height) throws IOException {
         QrConfig config = new QrConfig(width, height);
@@ -413,6 +421,11 @@
 
 // 鍒涘缓PDF鏂囨。
        List<DocumentMaterialFileStyle> dmfs = documentMaterialsService.findFileStyleInfo(Math.toIntExact(id));
+       if(dmfs.isEmpty())
+           return;
+
+
+       System.out.println(dmfs);
        PdfWriter.getInstance(document, new FileOutputStream("09-澶囪�冭〃"+".pdf"));
        document.open();
        // 璁剧疆涓枃瀛椾綋
@@ -429,9 +442,11 @@
        Paragraph recordInfo = new Paragraph("鍗峰彿锛�" + volumeNumber, chineseFont);
        recordInfo.setAlignment(Element.ALIGN_RIGHT);
        document.add(recordInfo);
-       int allCnt = dmfs.get(0).getCnt() + dmfs.get(1).getCnt() + dmfs.get(2).getCnt();
+       int pcc = dmfs.size()<=1?0: dmfs.get(1).getCnt();
+       int oth = dmfs.size()<=2?0: dmfs.get(2).getCnt();
+       int allCnt = dmfs.get(0).getCnt() + pcc + oth;
        document.add(new Paragraph("          鏈� 妗� 鍗� 鍏� 鏈� 鏂� 浠� 鏉� 鏂� " + allCnt + " 椤�"+"锛屽叾涓細鏂囧瓧鏉愭枡 " +
-               dmfs.get(1).getCnt() + " 椤�"+"锛屽浘鏍锋潗鏂� " + dmfs.get(2).getCnt() + " 椤�"+"锛岀収鐗� " + dmfs.get(0).getCnt() + " 寮�", chineseFont));
+               pcc + " 椤�"+"锛屽浘鏍锋潗鏂� " + oth + " 椤�"+"锛岀収鐗� " + dmfs.get(0).getCnt() + " 寮�", chineseFont));
 
 
        document.add(new Paragraph("璇存槑: ", chineseFont));
@@ -475,7 +490,7 @@
 
    }
 
-    public void generatePdf(String pdfPath) throws IOException, DocumentException {
+    public void generatePdf(String pdfPath, Long id) throws IOException, DocumentException {
 
         Document document = new Document();
         PdfWriter.getInstance(document, new FileOutputStream(pdfPath));
@@ -483,7 +498,23 @@
 
         String [] tits = {"妗�        鍙�:","妗f棣�(瀹�)鍙�:","缂�  寰�  鍙�: ","鍙�  鏂�  鍙�:",
                 "妗�  鍗�  棰�  鍚�:","缂�  鍒�  鏃�  鏈�:","缂�  鍒�  鍗�  浣�:","淇�  绠�  鏈�  闄�:","瀵�     绾�:"};
-        String [] cons = {"D3.4.1-05-2024-0002","","","绌楄鍒掕祫婧愬缓璇併��2024銆�2033鍙�","骞垮窞甯傝嚜鏉ユ按鏈夐檺鍏徃鐧戒簯鍖烘睙楂橀晣姹熼珮闀囨斂搴滆タ渚с�佹睙搴滆矾鍖椾晶鐧戒簯鍖烘睙楂橀晣姹熼珮闀囨斂搴滆タ渚с�佹睙搴滆矾鍖椾晶鏂拌渚涙按绠″伐绋�","2024-04-23","骞垮窞甯傝鍒掑拰鑷劧璧勬簮灞�鐧戒簯鍖哄垎灞�","姘镐箙",""};
+        ArchiveRecords ard = iArchiveRecordsService.selectArchiveRecordsById(id);
+
+
+        String formattedDate = "";
+        if(ard.getPreparationDate()!=null) {
+            LocalDate date = ard.getPreparationDate().toInstant()
+                    .atZone(ZoneId.systemDefault())
+                    .toLocalDate();
+            ;
+            System.out.println("褰撳墠鏃ユ湡: " + date);
+
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
+      formattedDate = date.format(formatter);
+        }
+
+        String [] cons = {ard.getRecordId(),ard.getArchiveRoomNumber(),ard.getMicrofilmNumber(),ard.getInquiryNumber(),ard.getCaseTitle(),formattedDate,ard.getPreparationUnit(),
+                ard.getRetentionPeriod(),ard.getSecurityClassification()};
 
         //鎶婂浘鐗囧姞鍏ュ埌pdf褰撲腑
         Image img = Image.getInstance(createQrCodeN(cons[0], 80, 80));

--
Gitblit v1.9.1