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