From af47b774448bfa3ece4741664ce4d24128c8f629 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期一, 01 九月 2025 14:29:50 +0800
Subject: [PATCH] 新增了代码

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java
index 81cfc31..a38294e 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java
@@ -3,10 +3,14 @@
 
 
 import java.awt.image.BufferedImage;
+import java.io.ByteArrayInputStream;
 import java.util.List;
 import javax.imageio.ImageIO;
 import javax.servlet.http.HttpServletResponse;
 
+import com.drew.imaging.ImageMetadataReader;
+import com.drew.metadata.Metadata;
+import com.drew.metadata.exif.ExifIFD0Directory;
 import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.core.text.Convert;
 import com.ruoyi.common.utils.ServletUtils;
@@ -15,6 +19,9 @@
 import com.ruoyi.domain.DocumentMaterials;
 import com.ruoyi.framework.config.ServerConfig;
 import com.ruoyi.service.IDocumentMaterialsService;
+import com.sun.xml.internal.ws.api.addressing.WSEndpointReference;
+import org.apache.commons.imaging.ImageInfo;
+import org.apache.commons.imaging.Imaging;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -126,6 +133,19 @@
         return toAjax(documentMaterialsService.deleteDocumentMaterialsByMaterialIds(materialIds));
     }
 
+    public String getPageSize(double du)
+    {
+        if(du <= 8699840)
+            return "A4";
+        else if(du <= 17403188)
+            return "A3";
+        else if(du <= 34811347)
+            return "A2";
+        else if(du <= 69622674)
+            return "A1";
+        else
+            return "A0";
+    }
 
     @PostMapping("/upload")
     public AjaxResult uploadFile(MultipartFile file) throws Exception
@@ -156,10 +176,20 @@
             int hei = bufferedImage.getHeight();
             double sz =  Double.parseDouble(String.format("%.2f", file.getSize()*1.0/1024));
             System.out.println(wid+":"+hei+":"+sz);
+            //鎷垮埌鍥惧儚鐨刣pi淇℃伅
+
+            ImageInfo info = Imaging.getImageInfo(file.getBytes());
+
+
+            int wdpi = info.getPhysicalWidthDpi() ;
+            int hdpi = info.getPhysicalHeightDpi();
+            System.out.println("DPI: " + info.getPhysicalWidthDpi());
             //璁$畻fileNumber
             Long fileNumber = documentMaterialsService.getFiNum(nam);
+            //璁$畻sizeType
+            String sizeType = getPageSize(wid*hei);
             //鎻掑叆鏁版嵁搴撳搴旂殑url褰撲腑
-            documentMaterialsService.updateByPageNumber(nam, fileNumber,wid, hei, sz, fileName, pname);
+            documentMaterialsService.updateByPageNumber(nam, sizeType, fileNumber,wid, hei,wdpi, hdpi,  sz, fileName, pname);
 //            System.out.println(url);
 //            System.out.println(fileName);
             ajax.put("fileName", fileName);

--
Gitblit v1.9.1