From 9b6a841844210ceb76084c9ebcb51e4650cef934 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 26 四月 2024 08:52:02 +0800
Subject: [PATCH] 1、完善代码; 2、加入EasyExcel依赖。

---
 pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/ResultVo.java       |    2 
 pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/MarkQrCodeCtrl.java |   21 ++++++----
 pms-parent/pms-common/pom.xml                                                   |   31 +++++++++++++++
 pms-parent/pom.xml                                                              |   33 ++++++++++++++++
 4 files changed, 77 insertions(+), 10 deletions(-)

diff --git a/pms-parent/pms-common/pom.xml b/pms-parent/pms-common/pom.xml
index e5e99a3..2797a49 100644
--- a/pms-parent/pms-common/pom.xml
+++ b/pms-parent/pms-common/pom.xml
@@ -105,7 +105,6 @@
             <artifactId>mybatis-spring</artifactId>
             <version>${mybatis-spring.version}</version>
         </dependency>
-
         <!-- 闃块噷fastjson -->
         <dependency>
             <groupId>cglib</groupId>
@@ -121,6 +120,12 @@
             <groupId>com.alibaba.fastjson2</groupId>
             <artifactId>fastjson2-extension-spring6</artifactId>
             <version>${fastjson2.version}</version>
+        </dependency>
+        <!-- 闃块噷EasyExcel -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>easyexcel</artifactId>
+            <version>${easyexcel.version}</version>
         </dependency>
         <!-- vo po杞崲 -->
         <dependency>
@@ -144,6 +149,30 @@
                     <groupId>io.netty</groupId>
                     <artifactId>netty-all</artifactId>
                 </exclusion>
+                <exclusion>
+                    <groupId>org.yaml</groupId>
+                    <artifactId>snakeyaml</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.springframework</groupId>
+                    <artifactId>spring-context</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>com.alibaba.spring</groupId>
+                    <artifactId>spring-context-support</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>com.alibaba.fastjson2</groupId>
+                    <artifactId>fastjson2</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>com.alibaba</groupId>
+                    <artifactId>hessian-lite</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.javassist</groupId>
+                    <artifactId>javassist</artifactId>
+                </exclusion>
             </exclusions>
         </dependency>
 
diff --git a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/MarkCodeCtrl.java b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/MarkQrCodeCtrl.java
similarity index 70%
rename from pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/MarkCodeCtrl.java
rename to pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/MarkQrCodeCtrl.java
index 96c9e08..7022f51 100644
--- a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/MarkCodeCtrl.java
+++ b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/MarkQrCodeCtrl.java
@@ -1,4 +1,4 @@
-package com.dy.pmsBase.code;
+package com.dy.pmsBase.qrCode;
 
 
 import cn.hutool.core.codec.Base64;
@@ -7,6 +7,8 @@
 import com.dy.common.webUtil.BaseResponseUtils;
 import com.dy.pmsGlobal.util.QrCodeConstant;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.core.io.Resource;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -22,9 +24,9 @@
  */
 @Slf4j
 @RestController
-@RequestMapping(path = "markCode")
+@RequestMapping(path = "markQrCode")
 @SuppressWarnings("unchecked")//java鐗堟湰瓒婇珮锛屽娉涘瀷绾︽潫瓒婁弗锛屾墍浠ラ厤缃甋uppressWarnings("unchecked")
-public class MarkCodeCtrl {
+public class MarkQrCodeCtrl {
 
     /**
      * 瀹㈡埛绔姹傚緱鍒伴粯璁ゅ瘑鐮�
@@ -34,18 +36,21 @@
     public BaseResponse<List<ResultVo>> show() {
         try{
             List<ResultVo> list = new ArrayList<>() ;
-            URL logoUrl = MarkCodeCtrl.class.getResource("/images/logo.png") ;
+            Resource resource = new ClassPathResource("/images/logo.png");
+            File logoPngFile = resource.getFile() ;
             String[][] marks = QrCodeConstant.Marks() ;
             for(String[] mark : marks){
                 ResultVo vo = new ResultVo() ;
                 vo.code = mark[0] ;
                 vo.name = mark[1] ;
-                BufferedImage bufferedImage = QrCodeGenerator.toBufferedImage(QrCodeGenerator.createBitMatrix(mark[0], QrCodeConstant.MarkQrCodeWidth, QrCodeConstant.MarkQrCodeHeight));
-                if(logoUrl != null){
-                    bufferedImage = QrCodeGenerator.addQrCodeLogo(bufferedImage, new File(logoUrl.getFile()));
+                //vo.code = "1234567890123456789012" ;
+                //BufferedImage bufferedImage = QrCodeGenerator.toBufferedImage(QrCodeGenerator.createBitMatrix(vo.code, 30, 30));
+                BufferedImage bufferedImage = QrCodeGenerator.toBufferedImage(QrCodeGenerator.createBitMatrix(vo.code, QrCodeConstant.MarkQrCodeWidth, QrCodeConstant.MarkQrCodeHeight));
+                if(logoPngFile != null && logoPngFile.exists()){
+                    bufferedImage = QrCodeGenerator.addQrCodeLogo(bufferedImage, logoPngFile);
                 }
                 byte[] codes = QrCodeGenerator.bufferedImageToByteArray(bufferedImage, "JPG");
-                vo.imgBase64 = Base64.encode(codes);
+                vo.imgBase64 = "data:image/jpeg;base64," + Base64.encode(codes);
                 list.add(vo) ;
             }
             return BaseResponseUtils.buildSuccess(list);
diff --git a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/ResultVo.java b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/ResultVo.java
similarity index 85%
rename from pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/ResultVo.java
rename to pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/ResultVo.java
index 7185cd7..5344b21 100644
--- a/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/code/ResultVo.java
+++ b/pms-parent/pms-web-base/src/main/java/com/dy/pmsBase/qrCode/ResultVo.java
@@ -1,4 +1,4 @@
-package com.dy.pmsBase.code;
+package com.dy.pmsBase.qrCode;
 
 import lombok.Data;
 
diff --git a/pms-parent/pom.xml b/pms-parent/pom.xml
index a3c20b7..9ad9667 100644
--- a/pms-parent/pom.xml
+++ b/pms-parent/pom.xml
@@ -38,6 +38,7 @@
         <mybatis-spring.version>3.0.3</mybatis-spring.version>
         <cglib.version>3.3.0</cglib.version>
         <fastjson2.version>2.0.48</fastjson2.version>
+        <easyexcel.version>3.3.4</easyexcel.version>
         <mapstruct.version>1.5.5.Final</mapstruct.version>
         <dubbo.version>3.2.11</dubbo.version>
         <hutool-all.version>5.8.22</hutool-all.version>
@@ -213,6 +214,14 @@
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
+            <!-- 闃块噷EasyExcel -->
+            <dependency>
+                <groupId>com.alibaba</groupId>
+                <artifactId>easyexcel</artifactId>
+                <version>${easyexcel.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
             <!-- vo po杞崲 -->
             <dependency>
                 <groupId>org.mapstruct</groupId>
@@ -241,6 +250,30 @@
                         <groupId>io.netty</groupId>
                         <artifactId>netty-all</artifactId>
                     </exclusion>
+                    <exclusion>
+                        <groupId>org.yaml</groupId>
+                        <artifactId>snakeyaml</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>org.springframework</groupId>
+                        <artifactId>spring-context</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>com.alibaba.spring</groupId>
+                        <artifactId>spring-context-support</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>com.alibaba.fastjson2</groupId>
+                        <artifactId>fastjson2</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>com.alibaba</groupId>
+                        <artifactId>hessian-lite</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>org.javassist</groupId>
+                        <artifactId>javassist</artifactId>
+                    </exclusion>
                 </exclusions>
             </dependency>
 

--
Gitblit v1.8.0