From f4a0f2acc63d7785eab108419a4e16f5f688cb95 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期六, 18 一月 2020 12:06:27 +0800
Subject: [PATCH] 用户注册信息

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java |  174 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 115 insertions(+), 59 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java
index 119389b..da92165 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java
@@ -12,15 +12,20 @@
 import org.springframework.stereotype.Service;
 import org.yeshi.utils.HttpUtil;
 import org.yeshi.utils.QRCodeUtil;
+import org.yeshi.utils.entity.FileUploadResult;
 import org.yeshi.utils.tencentcloud.COSManager;
 
 import com.yeshi.fanli.dao.mybatis.share.ShareMapper;
+import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.service.inter.user.QrCodeService;
 import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
 import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.FilePathEnum;
 import com.yeshi.fanli.util.FileUtil;
 import com.yeshi.fanli.util.ImageUtil;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.UserInviteUtil;
+import com.yeshi.fanli.vo.goods.GoodsDetailVO;
 
 @Service
 public class QrCodeServiceImpl implements QrCodeService {
@@ -42,7 +47,7 @@
 			String targetPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + System.currentTimeMillis() + ".jpg";
 			String erCodeTempPath = FileUtil.getCacheDir() + "/" + uid + "_" + System.currentTimeMillis() + ".jpg";
 
-			String erCode = HttpUtil.getShortLink("http://" + Constant.wxGZConfig.getLoginHost() + "/"
+			String erCode = ("http://" + Constant.wxGZConfig.getLoginHost() + "/"
 					+ Constant.systemCommonConfig.getProjectName() + "/client/threeShareNew?uid=" + uid);
 			// 鐢熸垚
 			try {
@@ -69,7 +74,7 @@
 
 				String imgUrl = COSManager.getInstance()
 						.uploadFile(new File(targetPath),
-								"ercode/" + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg")
+								FilePathEnum.ercode.getPath() + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg")
 						.getUrl();
 
 				if (new File(erCodeTempPath).exists())
@@ -91,7 +96,7 @@
 			String targetPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + System.currentTimeMillis() + ".jpg";
 			String erCodeTempPath = FileUtil.getCacheDir() + "/" + uid + "_" + System.currentTimeMillis() + ".jpg";
 
-			String erCode = HttpUtil.getShortLink("http://" + Constant.wxGZConfig.getLoginHost() + "/"
+			String erCode = ("http://" + Constant.wxGZConfig.getLoginHost() + "/"
 					+ Constant.systemCommonConfig.getProjectName() + "/client/threeShareNew?uid=" + uid);
 			// 鐢熸垚
 			try {
@@ -117,8 +122,8 @@
 				String newUrl = url.substring(index + 1);
 				String urlMd5 = newUrl.substring(0, newUrl.lastIndexOf("."));
 
-				String imgUrl = COSManager.getInstance()
-						.uploadFile(new File(targetPath), "ercode/" + "ercode_" + uid + "_" + urlMd5 + ".jpg").getUrl();
+				String imgUrl = COSManager.getInstance().uploadFile(new File(targetPath), 
+						FilePathEnum.ercode.getPath() + "ercode_" + uid + "_" + urlMd5 + ".jpg").getUrl();
 
 				if (new File(erCodeTempPath).exists())
 					new File(erCodeTempPath).delete();
@@ -131,21 +136,20 @@
 		}
 		return null;
 	}
-	
-	
+
 	@Override
-	public String drawInviteQrCodeNew(String url, Long uid, String portrait, String inviteCode) throws IOException {
-		
-		if (StringUtil.isNullOrEmpty(url)) {
+	public String drawInviteQrCodeNew(InputStream urlInputStream, String urlMd5, Long uid, String portrait, Integer pX, Integer pY, Integer size,
+			String inviteCode) throws IOException {
+		if (urlInputStream == null) {
 			return null;
 		}
-		
+
 		String targetPath = null;
 		String erCodeTempPath = null;
-		InputStream erCodeInputStream  = null; // 浜岀淮鐮�
+		InputStream erCodeInputStream = null; // 浜岀淮鐮�
 		InputStream portraitInputStream = null; // 澶村儚
-		InputStream urlInputStream = HttpUtil.getAsInputStream(url); // 鑳屾櫙
-		
+//		InputStream urlInputStream = HttpUtil.getAsInputStream(url); // 鑳屾櫙
+
 		String uuid = UUID.randomUUID().toString().replace("-", "");
 		if (uid == null) {
 			targetPath = FileUtil.getCacheDir() + "/share_" + uuid + "_" + System.currentTimeMillis() + ".jpg";
@@ -155,67 +159,69 @@
 			erCodeInputStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/official.png");
 			// 瀹樻柟榛樿澶村儚
 			portraitInputStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/official_icon.png");
-		
+
 		} else {
-		
+
 			targetPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + System.currentTimeMillis() + ".jpg";
 			erCodeTempPath = FileUtil.getCacheDir() + "/" + uid + "_" + System.currentTimeMillis() + ".jpg";
-	
-			String erCode = HttpUtil.getShortLink("http://" + Constant.wxGZConfig.getLoginHost() + "/"
-					+ Constant.systemCommonConfig.getProjectName() + "/client/threeShareNew?uid=" + uid);
+
+			String erCode = UserInviteUtil.getShareUrl(uid);
 			// 鐢熸垚
 			try {
 				QRCodeUtil.getInstance(250).encode(erCode, erCodeTempPath);
 			} catch (Exception e) {
 				e.printStackTrace();
 			}
-	
-			urlInputStream = HttpUtil.getAsInputStream(url); // 鑳屾櫙
 			portraitInputStream = HttpUtil.getAsInputStream(portrait); // 澶村儚
 			erCodeInputStream = new FileInputStream(new File(erCodeTempPath)); // 浜岀淮鐮�
 		}
+
 		// 寮�濮嬫牴鎹� url(鑳屾櫙鍥�), qrCode(浜岀淮鐮�), portrait(澶村儚) 鐢熸垚鍥剧墖
-		ImageUtil.inviteFriendImg(urlInputStream, portraitInputStream, erCodeInputStream, targetPath, inviteCode);
+		ImageUtil.inviteFriendImgWhitecustom(urlInputStream, portraitInputStream, erCodeInputStream, targetPath, pX, pY,
+				size, inviteCode);
 
+		// 鍒犻櫎浜岀淮鐮佹枃浠�
+		if (erCodeInputStream != null) {
+			erCodeInputStream.close();
+		}
+		if (erCodeTempPath != null && new File(erCodeTempPath).exists()) {
+			new File(erCodeTempPath).delete();
+		}
+
+		// 涓婁紶鏂囦欢鐩稿浣嶇疆
 		if (new File(targetPath).exists() && new File(targetPath).length() > 0) {
-			
-			int index = url.lastIndexOf("/");
-			String newUrl = url.substring(index + 1);
-			String urlMd5 = newUrl.substring(0, newUrl.lastIndexOf("."));
-
-			String fileUrl= null;
+			String fileUrl = null;
 			if (uid == null) {
-				fileUrl= "ercode/" + "ercode_" + uuid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
+				fileUrl = FilePathEnum.invitePictureDemo.getPath() + "ercode_" + uuid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
 			} else {
-				
-				fileUrl = "ercode/" + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
-				if (new File(erCodeTempPath).exists())
-					new File(erCodeTempPath).delete();
+				fileUrl = FilePathEnum.ercode.getPath() + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
 			}
-			
+
+			// 涓婁紶鏂囦欢
 			String imgUrl = COSManager.getInstance().uploadFile(new File(targetPath), fileUrl).getUrl();
-			if (new File(targetPath).exists())
-				new File(targetPath).delete();
+
+			// 鍒犻櫎鏈湴缂撳瓨鏂囦欢
+			new File(targetPath).delete();
 
 			return imgUrl;
 		}
 		return null;
 	}
-	
+
 	@Override
-	public String drawInviteToGreet(String url, Long uid, String portrait, String inviteCode, String content, 
-			Date date) throws IOException {
-		
+	public String drawInviteToGreet(String url, Long uid, String portrait, String inviteCode, String content, Date date)
+			throws IOException {
+
 		if (StringUtil.isNullOrEmpty(url)) {
 			return null;
 		}
 
 		String targetPath = null;
 		String erCodeTempPath = null;
-		InputStream erCodeInputStream  = null; // 浜岀淮鐮�
+		InputStream erCodeInputStream = null; // 浜岀淮鐮�
 		InputStream portraitInputStream = null; // 澶村儚
 		InputStream urlInputStream = HttpUtil.getAsInputStream(url); // 鑳屾櫙
-		
+
 		String uuid = UUID.randomUUID().toString().replace("-", "");
 		if (uid == null) {
 			targetPath = FileUtil.getCacheDir() + "/share_" + uuid + "_" + System.currentTimeMillis() + ".jpg";
@@ -225,11 +231,11 @@
 			erCodeInputStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/official.png");
 			// 瀹樻柟榛樿澶村儚
 			portraitInputStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/official_icon.png");
-		
+
 		} else {
 			targetPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + System.currentTimeMillis() + ".jpg";
 			erCodeTempPath = FileUtil.getCacheDir() + "/" + uid + "_" + System.currentTimeMillis() + ".jpg";
-			String erCode = HttpUtil.getShortLink("http://" + Constant.wxGZConfig.getLoginHost() + "/"
+			String erCode = ("http://" + Constant.wxGZConfig.getLoginHost() + "/"
 					+ Constant.systemCommonConfig.getProjectName() + "/client/threeShareNew?uid=" + uid);
 			// 鐢熸垚
 			try {
@@ -237,13 +243,21 @@
 			} catch (Exception e) {
 				e.printStackTrace();
 			}
-			erCodeInputStream = new FileInputStream(new File(erCodeTempPath)); 
+			erCodeInputStream = new FileInputStream(new File(erCodeTempPath));
 			portraitInputStream = HttpUtil.getAsInputStream(portrait); // 澶村儚
 		}
-		
-		
+
 		// 寮�濮嬫牴鎹� url(鑳屾櫙鍥�), qrCode(浜岀淮鐮�), portrait(澶村儚) 鐢熸垚鍥剧墖
-		ImageUtil.drawInviteToGreet(urlInputStream, portraitInputStream, erCodeInputStream, targetPath, inviteCode, content, date);
+		ImageUtil.drawInviteToGreet(urlInputStream, portraitInputStream, erCodeInputStream, targetPath, inviteCode,
+				content, date);
+
+		// 鍒犻櫎浜岀淮鐮佹枃浠�
+		if (erCodeInputStream != null) {
+			erCodeInputStream.close();
+		}
+		if (erCodeTempPath != null && new File(erCodeTempPath).exists()) {
+			new File(erCodeTempPath).delete();
+		}
 
 		// 涓婁紶鏂囦欢
 		if (new File(targetPath).exists() && new File(targetPath).length() > 0) {
@@ -252,25 +266,67 @@
 			String urlMd5 = newUrl.substring(0, newUrl.lastIndexOf("."));
 
 			// 涓婁紶鏂囦欢鐩稿浣嶇疆
-			String fileUrl= null;
+			String fileUrl = null;
 			if (uid == null) {
-				fileUrl= "ercode/" + "ercode_" + uuid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
+				fileUrl = FilePathEnum.invitePictureDemo.getPath() + "ercode_" + uuid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
 			} else {
-				
-				fileUrl = "ercode/" + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
-				if (new File(erCodeTempPath).exists())
-					new File(erCodeTempPath).delete();
+				fileUrl = FilePathEnum.ercode.getPath() + "ercode_" + uid + "_" + System.currentTimeMillis() + "_" + urlMd5 + ".jpg";
 			}
 
+			// 涓婁紶
 			String imgUrl = COSManager.getInstance().uploadFile(new File(targetPath), fileUrl).getUrl();
-			
-			if (new File(targetPath).exists())
-				new File(targetPath).delete();
+			// 鍒犻櫎缂撳瓨鏂囦欢
+			new File(targetPath).delete();
 
 			return imgUrl;
-		} 
-		
+		}
 		return null;
 	}
+	
+	
+	
+	@Override
+	public FileUploadResult drawGoodsPoster(String erCodeUrl, String portrait, GoodsDetailVO goods) {
+		// 浜岀淮鐮佹祦
+		InputStream erCodeStream = null;
+		try {
+			erCodeStream = QRCodeUtil.getInstance(250).encode(erCodeUrl);
+		} catch (Exception e1) {
+			e1.printStackTrace();
+		}
+		
+		// 澶村儚
+		InputStream portraitStream = null; 
+		if (!StringUtil.isNullOrEmpty(portrait)) {
+			try {
+				portraitStream = HttpUtil.getAsInputStream(portrait);
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+		}
+		if (portraitStream == null) {
+			portraitStream = ImageUtil.class.getClassLoader().getResourceAsStream("image/official_default_head.jpg");
+		}
+		
+		// 鐢诲浘
+		InputStream drawStream = ImageUtil.drawGoodsShareSingle(erCodeStream, portraitStream, goods);
+		// 涓婁紶浣嶇疆
+		String uuid = UUID.randomUUID().toString().replace("-", "");
+		String upPath = FilePathEnum.shareXCX.getPath() + uuid + "_" + goods.getGoodsId() + "_" + System.currentTimeMillis() + ".png";
+		// 涓婁紶鏂囦欢
+		return COSManager.getInstance().uploadInputStream(drawStream, upPath);
+	}
+
+	
+	@Override
+	public FileUploadResult drawGoodsPosterXCX(InputStream erCodeStream,UserInfo user, GoodsDetailVO goods) {
+		// 鐢诲浘
+		InputStream drawStream = ImageUtil.drawGoodsShareXCX(erCodeStream, user, goods);
+		// 涓婁紶浣嶇疆
+		String uuid = UUID.randomUUID().toString().replace("-", "");
+		String upPath = FilePathEnum.shareXCX.getPath() + uuid + "_" + goods.getGoodsId() + "_" + System.currentTimeMillis() + ".png";
+		// 涓婁紶鏂囦欢
+		return COSManager.getInstance().uploadInputStream(drawStream, upPath);
+	}
 
 }

--
Gitblit v1.8.0