From 97e726421a7f8001c4c613d6448f2d614f29bac9 Mon Sep 17 00:00:00 2001
From: zxc <1272811460@qq.com>
Date: Fri, 18 Mar 2022 10:53:21 +0800
Subject: [PATCH] qrcode
---
epmet-module/gov-org/gov-org-server/pom.xml | 13 +++++
.../epmet/controller/AgencyController.java | 54 +++++++++++++++++++
2 files changed, 67 insertions(+)
diff --git a/epmet-module/gov-org/gov-org-server/pom.xml b/epmet-module/gov-org/gov-org-server/pom.xml
index 777645a3c1..793d33b424 100644
--- a/epmet-module/gov-org/gov-org-server/pom.xml
+++ b/epmet-module/gov-org/gov-org-server/pom.xml
@@ -13,6 +13,19 @@
jar
+
+
+ com.google.zxing
+ core
+ 3.3.2
+
+
+
+ com.google.zxing
+ javase
+ 3.3.2
+
+
com.epmet
gov-org-client
diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
index 363f7b7297..26db2c084f 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
+++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/AgencyController.java
@@ -17,6 +17,7 @@
package com.epmet.controller;
+import com.alibaba.fastjson.JSONObject;
import com.epmet.commons.rocketmq.messages.OrgOrStaffMQMsg;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.annotation.RequirePermission;
@@ -34,11 +35,20 @@ import com.epmet.feign.EpmetMessageOpenFeignClient;
import com.epmet.send.SendMqMsgUtil;
import com.epmet.service.AgencyService;
import com.epmet.service.CustomerAgencyService;
+import com.google.zxing.BarcodeFormat;
+import com.google.zxing.EncodeHintType;
+import com.google.zxing.MultiFormatWriter;
+import com.google.zxing.WriterException;
+import com.google.zxing.client.j2se.MatrixToImageWriter;
+import com.google.zxing.common.BitMatrix;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import java.io.IOException;
+import java.nio.file.FileSystems;
+import java.nio.file.Path;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -360,4 +370,48 @@ public class AgencyController {
return new Result>().ok(agencyService.getSonAgencyId(orgId,type));
}
+ @PostMapping("qr")
+ public void qr(){
+ try {
+ write();
+ } catch (IOException e) {
+ e.printStackTrace();
+ } catch (WriterException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public static void write() throws IOException, WriterException {
+ String filePath = "/Volumes/self";
+ String fileName = "qr.png";
+//二维码内容场景一:json数据
+ JSONObject json = new JSONObject();
+ json.put("baidu","http://www.baidu.com");//二维码一般就是存储链接
+// json.put("author", "lzz");//还可存储值(员工工号,员工姓名,年会二维码门票)
+ String content = json.toJSONString();//json 内容
+//二维码内容场景二:直接某个超链接
+// content="http://www.baidu.com";//直接某个超链接
+ int width = 200; // 图像宽度
+ int height = 200; // 图像高度
+ String format = "png";// 图像类型
+ Map hints = new HashMap();
+
+ hints.put(EncodeHintType.CHARACTER_SET, "UTF-8");
+ BitMatrix bitMatrix = new MultiFormatWriter().encode(content,
+ BarcodeFormat.QR_CODE, width, height, hints);// 生成矩阵
+ Path path = FileSystems.getDefault().getPath(filePath, fileName);
+ MatrixToImageWriter.writeToPath(bitMatrix, format, path);// 输出图像
+ System.out.println("输出成功.");
+ }
+
+ public static void main(String[] args) {
+ try {
+ write();
+ } catch (IOException e) {
+ e.printStackTrace();
+ } catch (WriterException e) {
+ e.printStackTrace();
+ }
+ }
+
}
\ No newline at end of file