From 155913b57ad50126240bc3d5c1aef6ebfe12e3cf Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 12 九月 2019 16:43:15 +0800
Subject: [PATCH] 微信开放平台修改

---
 fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java |   90 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 64 insertions(+), 26 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java b/fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
index de82022..3928390 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
@@ -13,6 +13,7 @@
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 
+import com.yeshi.fanli.entity.bus.user.UserActiveLog;
 import com.yeshi.fanli.entity.bus.user.UserInfo;
 import com.yeshi.fanli.entity.bus.user.UserInfoModifyRecord.ModifyTypeEnum;
 import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
@@ -21,6 +22,7 @@
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.msg.UserAccountMsgNotificationService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionAuthRecordService;
+import com.yeshi.fanli.service.inter.user.UserActiveLogService;
 import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
 import com.yeshi.fanli.service.inter.user.UserInfoModifyRecordService;
 import com.yeshi.fanli.util.AESUtil;
@@ -29,6 +31,7 @@
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TaoBaoConstant;
 import com.yeshi.fanli.util.ThreadUtil;
+import com.yeshi.fanli.util.VersionUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
 
 import net.sf.json.JSONObject;
@@ -51,12 +54,15 @@
 
 	@Resource
 	private UserAccountMsgNotificationService userAccountMsgNotificationService;
-	
+
 	@Resource
 	private UserInfoModifyRecordService userInfoModifyRecordService;
 
 	@Resource
 	private RedisManager redisManager;
+
+	@Resource
+	private UserActiveLogService userActiveLogService;
 
 	@RequestMapping(value = "tb")
 	public void tb(String code, String state, HttpServletRequest request, HttpServletResponse response) {
@@ -119,7 +125,7 @@
 				String relationId = null;
 
 				try {
-					relationId=	TaoKeApiUtil.getRelationId(accessToken, TaoBaoConstant.TAOBAO_AUTH_APPKEY,
+					relationId = TaoKeApiUtil.getRelationId(accessToken, TaoBaoConstant.TAOBAO_AUTH_APPKEY,
 							TaoBaoConstant.TAOBAO_AUTH_APPSECRET);// 娓犻亾ID
 				} catch (TaoBaoAuthException e) {
 					if (e.getCode() == TaoBaoAuthException.CODE_NOT_REAL_NAME)
@@ -134,8 +140,8 @@
 					LogHelper.test(e.getMsg());
 					errCode = 5;
 				}
-				
-				final String relationId2  = relationId;
+
+				final String relationId2 = relationId;
 				// 寮傛鐢宠浼氬憳ID
 				ThreadUtil.run(new Runnable() {
 
@@ -153,7 +159,7 @@
 							LogHelper.test(uid + "浼氬憳澶囨澶辫触");
 						try {
 							userExtraTaoBaoInfoService.addSpecialId(uid, specialId, taoBaoUid, name, true);
-							
+
 							if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId2))
 								userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindTaoBao, taoBaoUid);
 						} catch (UserExtraTaoBaoInfoException e) {
@@ -161,8 +167,8 @@
 						}
 					}
 				});
-				
-				//绋嶄綔寤惰繜
+
+				// 绋嶄綔寤惰繜
 				Thread.sleep(50);
 			} else if ("zigou".equalsIgnoreCase(source)) {
 				String specialId = null;
@@ -200,7 +206,7 @@
 							LogHelper.test(uid + "娓犻亾澶囨澶辫触");
 						try {
 							userExtraTaoBaoInfoService.addRelationId(uid, relationId, taoBaoUid, name, true);
-							
+
 							if (!StringUtil.isNullOrEmpty(specialId2) && !StringUtil.isNullOrEmpty(relationId))
 								userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindTaoBao, taoBaoUid);
 						} catch (UserExtraTaoBaoInfoException e) {
@@ -208,7 +214,7 @@
 						}
 					}
 				});
-				//绋嶄綔寤惰繜
+				// 绋嶄綔寤惰繜
 				Thread.sleep(50);
 
 			} else if ("bind".equalsIgnoreCase(source)) {
@@ -253,7 +259,7 @@
 					try {
 						userExtraTaoBaoInfoService.saveUserTaoBaoInfo(uid, relationId, specialId, taoBaoUid, nickName,
 								true);
-						
+
 						if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId))
 							userInfoModifyRecordService.addModifyRecord(uid, ModifyTypeEnum.bindTaoBao, taoBaoUid);
 					} catch (UserExtraTaoBaoInfoException e) {
@@ -283,33 +289,65 @@
 			LogHelper.errorDetailInfo(e);
 		}
 
+		UserActiveLog activeLog = userActiveLogService.getUserLatestActiveInfo(uid);
+
+		boolean isNewJump = false;
+		if (activeLog != null) {
+			String platform = null;
+			String version = activeLog.getVersionCode();
+			if (activeLog.getChannel().equalsIgnoreCase("appstore")) {
+				platform = "ios";
+			} else {
+				platform = "android";
+			}
+			if (VersionUtil.greaterThan_2_0(platform, version)) {
+				isNewJump = true;
+			}
+		}
+
 		try {
 			if (errCode == 0)// 鎴愬姛
 			{
 				if ("share".equalsIgnoreCase(source)) {
-					// response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=0");
-					closeWebPage(response.getWriter());
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/success.html");
+					else
+						closeWebPage(response.getWriter());
 				} else if ("zigou".equalsIgnoreCase(source)) {
-					// response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_rebateState.html?code=0");
-					closeWebPage(response.getWriter());
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/success.html");
+					else
+						closeWebPage(response.getWriter());
 				} else if ("bind".equalsIgnoreCase(source)) {
-					String script = String.format(
-							"<script>if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {window.location.href = 'yestv://toast#%s';setTimeout(function(){window.location.href = 'yestv://finishPage';},100);} else {yestv.toast(\"鎭枩浣狅紝娣樺疂缁戝畾鎴愬姛\");yestv.finishPage();}</script>",
-							StringUtil.getBase64String("鎭枩浣狅紝娣樺疂缁戝畾鎴愬姛"));
-					response.getWriter().print(script);
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/success.html");
+					else {
+						String script = String.format(
+								"<script>if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {window.location.href = 'yestv://toast#%s';setTimeout(function(){window.location.href = 'yestv://finishPage';},100);} else {yestv.toast(\"鎭枩浣狅紝娣樺疂缁戝畾鎴愬姛\");yestv.finishPage();}</script>",
+								StringUtil.getBase64String("鎭枩浣狅紝娣樺疂缁戝畾鎴愬姛"));
+						response.getWriter().print(script);
+					}
 				}
 			} else {// 澶辫触
 				if ("share".equalsIgnoreCase(source)) {
-					// response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=1");
-					closeWebPage(response.getWriter());
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/fail.html");
+					else
+						closeWebPage(response.getWriter());
 				} else if ("zigou".equalsIgnoreCase(source)) {
-					// response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_rebateState.html?code=1");
-					closeWebPage(response.getWriter());
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/fail.html");
+					else
+						closeWebPage(response.getWriter());
 				} else if ("bind".equalsIgnoreCase(source)) {
-					String script = String.format(
-							"<script>if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {window.location.href = 'yestv://toast#%s';setTimeout(function(){window.location.href = 'yestv://finishPage';},100);} else {yestv.toast(\"鎶辨瓑锛屾窐瀹濈粦瀹氬け璐");yestv.finishPage();}</script>",
-							StringUtil.getBase64String("鎶辨瓑锛屾窐瀹濈粦瀹氬け璐�"));
-					response.getWriter().print(script);
+					if (isNewJump)
+						response.sendRedirect("http://apph5.yeshitv.com/flqWeb/h5/tbauth/fail.html");
+					else {
+						String script = String.format(
+								"<script>if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {window.location.href = 'yestv://toast#%s';setTimeout(function(){window.location.href = 'yestv://finishPage';},100);} else {yestv.toast(\"鎶辨瓑锛屾窐瀹濈粦瀹氬け璐");yestv.finishPage();}</script>",
+								StringUtil.getBase64String("鎶辨瓑锛屾窐瀹濈粦瀹氬け璐�"));
+						response.getWriter().print(script);
+					}
 				}
 			}
 		} catch (Exception e) {

--
Gitblit v1.8.0