From 403acdaee34690cf0798ea83e8db33079d8a3720 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Thu, 11 Mar 2021 14:49:58 +0800
Subject: [PATCH] 新增申请成为分销员接口
---
zq-erp/src/main/resources/config/system.properties | 3
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java | 79 ++++++++++++++++---------
zq-erp/pom.xml | 4
zq-erp/src/main/java/com/matrix/component/tools/WxacodeUtil.java | 23 -------
zq-erp/src/main/java/com/matrix/component/tools/ImageUtil.java | 33 ++++++++++
5 files changed, 87 insertions(+), 55 deletions(-)
diff --git a/zq-erp/pom.xml b/zq-erp/pom.xml
index 46c274e..bcaf6b1 100644
--- a/zq-erp/pom.xml
+++ b/zq-erp/pom.xml
@@ -394,11 +394,11 @@
<exclude>config/test/*</exclude>
<exclude>config/xcx/*</exclude>
- <!--
+ <!---->
<exclude>config/config.json</exclude>
<exclude>config/application.properties</exclude>
<exclude>config/system.properties</exclude>
- -->
+
diff --git a/zq-erp/src/main/java/com/matrix/component/tools/ImageUtil.java b/zq-erp/src/main/java/com/matrix/component/tools/ImageUtil.java
index c7fdbdb..6518e03 100644
--- a/zq-erp/src/main/java/com/matrix/component/tools/ImageUtil.java
+++ b/zq-erp/src/main/java/com/matrix/component/tools/ImageUtil.java
@@ -2,8 +2,9 @@
import java.awt.*;
import java.awt.image.BufferedImage;
-import java.io.FileNotFoundException;
-import java.io.IOException;
+import java.io.*;
+import java.net.MalformedURLException;
+import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
@@ -91,4 +92,32 @@
System.out.println("系统字体数:" + fontCount);
}
+
+ public static void downloadPicture(String imgUrl,String savePath) {
+ URL url = null;
+ int imageNumber = 0;
+ try {
+ url = new URL(imgUrl);
+ DataInputStream dataInputStream = new DataInputStream(url.openStream());
+ FileOutputStream fileOutputStream = new FileOutputStream(new File(savePath));
+ ByteArrayOutputStream output = new ByteArrayOutputStream();
+ byte[] buffer = new byte[1024];
+ int length;
+ while ((length = dataInputStream.read(buffer)) > 0) {
+ output.write(buffer, 0, length);
+ }
+ byte[] context=output.toByteArray();
+ fileOutputStream.write(output.toByteArray());
+ dataInputStream.close();
+ fileOutputStream.close();
+ } catch (MalformedURLException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+
+
+
}
diff --git a/zq-erp/src/main/java/com/matrix/component/tools/WxacodeUtil.java b/zq-erp/src/main/java/com/matrix/component/tools/WxacodeUtil.java
index 7b0c2a4..ff425cf 100644
--- a/zq-erp/src/main/java/com/matrix/component/tools/WxacodeUtil.java
+++ b/zq-erp/src/main/java/com/matrix/component/tools/WxacodeUtil.java
@@ -61,12 +61,6 @@
HttpResponse response;
response = httpClient.execute(httpPost);
InputStream inputStream = response.getEntity().getContent();
- /*Object inputObj= response.getEntity().getContent();
- if(inputObj instanceof InputStream){
- String strError = streamToString(inputStream,"GBK");
- LogUtil.info("-------------二维码生成------"+strError);
- return "error:" + strError;
- }*/
// 图片保存目录路径
String baseSavePath = PropertiesUtil.getString(AppConstance.FILES_TORAGE_PATH);
@@ -74,11 +68,6 @@
if(!targetFile.exists()){
targetFile.mkdirs();
}
-
- /*String inputstreamtofile = inputstreamtofile(inputStream, targetFile);
- if(null != inputstreamtofile){
- return inputstreamtofile;
- }*/
// 创建图片文件夹
baseSavePath += "wxacode" + File.separatorChar;
@@ -89,23 +78,15 @@
String qrcodePath = baseSavePath + fileName + ".png";
FileOutputStream out = new FileOutputStream(qrcodePath);
LogUtil.debug("qrcodePath:{}",qrcodePath);
- //本地调试创建(不用删)
- /*String filePath = "e:/test.png";
- File file = new File(filePath);
- if (!file.exists()) {
- file.mkdir();
- }
- FileOutputStream outs = new FileOutputStream(file);*/
+
byte[] buffer = new byte[1024];
int bytesRead = 0;
while((bytesRead = inputStream.read(buffer, 0, 1024)) != -1) {
out.write(buffer, 0, bytesRead);
- //outs.write(buffer, 0, bytesRead);
+
}
out.flush();
out.close();
- //outs.flush();
- //outs.close();
return qrcodePath;
} else {
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
index aae1566..fe89c38 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
@@ -4,12 +4,10 @@
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.dao.BizUserDao;
import com.matrix.component.redis.RedisUserLoginUtils;
+import com.matrix.component.tools.ImageUtil;
import com.matrix.component.tools.WxacodeUtil;
import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.tools.LogUtil;
-import com.matrix.core.tools.MD5Util;
-import com.matrix.core.tools.PropertiesUtil;
-import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.*;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.BusParameterSettingsDao;
@@ -63,7 +61,7 @@
public AjaxResult getTgPlan() {
BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_PLAN, HostInterceptor.getCompanyId());
AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("");
- ajaxResult.putInMap("data",busParameterSettings.getParamValue3());
+ ajaxResult.setData(busParameterSettings.getParamValue3());
return ajaxResult;
}
@@ -133,38 +131,61 @@
AjaxResult getInvitationPoster() {
try {
BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- String qrcodeSavePath = WxacodeUtil.getWxacode(loginUser.getOpenId() + "", "pages/index/index", MD5Util.strToMD5(loginUser.getOpenId() + ""));
- //获取海报
- BusParameterSettings posterSetting = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_POSTER, HostInterceptor.getCompanyId());
-
- String posterSavePath = posterSetting.getParamValue1();
- BufferedImage productImgBuf = ImageIO.read(new File(qrcodeSavePath));
- BufferedImage qrcordImgBuf = ImageIO.read(new File(posterSavePath));
-
- BufferedImage backgroundImgBuf = new BufferedImage(750, 900, BufferedImage.TYPE_4BYTE_ABGR);
- //绘制背景+产品
- Graphics2D g = backgroundImgBuf.createGraphics();
- g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 1));
-
-
-
-
- LogUtil.debug("qrcodeSavePath={}", qrcodeSavePath);
- // 图片保存目录路径
String baseSavePath = PropertiesUtil.getString(AppConstance.FILES_TORAGE_PATH);
// 图片访问URL
String baseSaveUrl = PropertiesUtil.getString(AppConstance.NGINX_URL);
- String qrcodeImgUrl = qrcodeSavePath.replace(baseSavePath, baseSaveUrl);
- return AjaxResult.buildSuccessInstance(qrcodeImgUrl);
+ //目标海报物理存储路径
+ String targetImg=MD5Util.strToMD5(loginUser.getOpenId()) +"haibao.png";
+ String targetImgPath=baseSavePath+"wxacode" + File.separatorChar+targetImg ;
+
+ String urlPath = baseSaveUrl + "/" + "wxacode" + "/" + targetImg;
+
+ String qrcodeSavePath = WxacodeUtil.getWxacode(loginUser.getOpenId() + "", "pages/distributorCenter/applyFor/applyFor", MD5Util.strToMD5(loginUser.getOpenId() + ""));
+ BufferedImage qrcordImgBuf = ImageIO.read(new File(qrcodeSavePath));
+
+ //获取海报
+ BusParameterSettings posterSetting = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_POSTER, HostInterceptor.getCompanyId());
+ String posterPath=baseSavePath+"wxacode" + File.separatorChar+MD5Util.strToMD5(loginUser.getOpenId())+"poster.png";
+ ImageUtil.downloadPicture(posterSetting.getParamValue(),posterPath);
+ BufferedImage posterImgBuf = ImageIO.read(new File(posterPath));
+
+ //获取用户头像
+ String userPhotoPath=baseSavePath+"wxacode" + File.separatorChar+MD5Util.strToMD5(loginUser.getOpenId())+"userPhoto.png";
+ ImageUtil.downloadPicture(loginUser.getAvatarUrl(),userPhotoPath);
+ BufferedImage userPhotoImgBuf = ImageIO.read(new File(userPhotoPath));
+
+
+ BufferedImage backgroundImgBuf = new BufferedImage(700, 900, BufferedImage.TYPE_4BYTE_ABGR);
+ //绘制背景+产品
+ Graphics2D g = backgroundImgBuf.createGraphics();
+ //g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 1));
+ g.setColor(Color.WHITE);
+ g.fillRect(0,0,700,900);
+ g.drawImage(posterImgBuf,0,0,700, 700,null);
+
+ g.drawImage(userPhotoImgBuf,20,720,80,80,null);
+
+ g.drawImage(qrcordImgBuf,500,720,150,150,null);
+
+ g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB);
+
+ g.setFont(new Font("黑体", Font.BOLD, 24));
+ g.setColor(Color.BLACK);
+ g.drawString(loginUser.getNickName()+"邀请你一起推广赚佣金",120,750);
+
+ g.dispose();
+ ImageIO.write(backgroundImgBuf, "png", new File(targetImgPath));
+
+
+ return AjaxResult.buildSuccessInstance(urlPath);
} catch (Exception e) {
- LogUtil.error("门店生成二维码错误:{}", e, "");
+ LogUtil.error("推广二维码生成错误:{}", e, "");
+ return AjaxResult.buildFailInstance("二维码生成失败");
}
- return AjaxResult.buildFailInstance("二维码生成失败");
+
}
-
-
diff --git a/zq-erp/src/main/resources/config/system.properties b/zq-erp/src/main/resources/config/system.properties
index 4b4664a..6581031 100644
--- a/zq-erp/src/main/resources/config/system.properties
+++ b/zq-erp/src/main/resources/config/system.properties
@@ -17,7 +17,8 @@
#文件保存地址
#file_storage_path=/mnt/hive/static/uploadeFile/
-file_storage_path=E:\\20210116
+file_storage_path=D:\\test\\
+
#文件上传大小字节为单位 10MB
maxUploadSize=10485760
--
Gitblit v1.9.1