From 24a8d17e007545f7426c48352109aa1a9c6587ee Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 06 五月 2020 12:02:09 +0800 Subject: [PATCH] IOS上线隐藏我的界面的banner与超级会员升级信息 --- fanli/src/main/java/com/yeshi/fanli/util/wx/WXLoginUtil.java | 76 ++++++++++++++++++++++--------------- 1 files changed, 45 insertions(+), 31 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/wx/WXLoginUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/wx/WXLoginUtil.java index 4fb0f0f..cce50f0 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/wx/WXLoginUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/wx/WXLoginUtil.java @@ -1,32 +1,28 @@ package com.yeshi.fanli.util.wx; +import java.io.InputStream; + import org.json.JSONException; import org.json.JSONObject; - -import com.qcloud.cos.model.COSObjectSummary; -import com.qcloud.cos.model.ObjectListing; -import com.yeshi.fanli.entity.bus.user.WeiXinUser; -import com.yeshi.fanli.entity.bus.user.WeiXinUserParam; -import com.yeshi.fanli.util.Constant; -import com.yeshi.fanli.util.StringUtil; import org.yeshi.utils.HttpUtil; import org.yeshi.utils.entity.FileUploadResult; import org.yeshi.utils.tencentcloud.COSManager; -import org.yeshi.utils.wx.WXUtil; + +import com.yeshi.fanli.entity.bus.user.WeiXinUser; +import com.yeshi.fanli.entity.bus.user.WeiXinUserParam; +import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.FilePathEnum; +import com.yeshi.fanli.util.StringUtil; public class WXLoginUtil { public static String WEXIN_APPID = "wx43617e2ed82c5b28"; public static String WEXIN_SECRET = "f8a65908fb4681bdd181de70f6ab9a3b"; - static String APPID = "wx5c0d167c6e3ad726"; - static String SECRET = "0c79d5869bb0f2d7c13e43f9a18f440d"; - static { WEXIN_APPID = Constant.systemCommonConfig.getWxGZAppId(); WEXIN_SECRET = Constant.systemCommonConfig.getWxGZAppSecret(); - APPID = Constant.systemCommonConfig.getWxOpenAppId(); - SECRET = Constant.systemCommonConfig.getWxOpenAppSecret(); } // 閫氳繃code鑾峰彇access_token openId @@ -34,8 +30,8 @@ public static String weiXinUrl2 = "https://api.weixin.qq.com/sns/userinfo?access_token=%s&openid=%s&lang=zh_CN"; - public static WeiXinUserParam getWxParam(String code) { - String wxUrl = String.format(weiXinUrl1, APPID, SECRET, code); + public static WeiXinUserParam getWxParam(String code,String appId,String appSecret) { + String wxUrl = String.format(weiXinUrl1, appId, appSecret, code); String result = HttpUtil.get(wxUrl); WeiXinUserParam weiXinUserParam = getWeiXinUserParam(result); return weiXinUserParam; @@ -76,12 +72,17 @@ return weiXinUser; } - private static WeiXinUser getWeiXinUser(String code) { - WeiXinUserParam param = getWxParam(code); + public static WeiXinUser getWeiXinUser(String code,String appId,String appSecret) { + WeiXinUserParam param = getWxParam(code,appId,appSecret); if (param == null) { return null; } - return getWeiXinUser(param); + WeiXinUser weiXinUser = getWeiXinUser(param); + if (weiXinUser != null && StringUtil.isNullOrEmpty(weiXinUser.getUnionid()) + && !StringUtil.isNullOrEmpty(param.getUnionId())) { + weiXinUser.setUnionid(param.getUnionId()); + } + return weiXinUser; } /** @@ -90,25 +91,35 @@ * @param code * @return */ - public static WeiXinUser getWeiXinUserWithSavePortrait(String code) { - WeiXinUser user = getWeiXinUser(code); + public static WeiXinUser getWeiXinUserWithSavePortrait(String code,String appId,String appSecret) { + WeiXinUser user = getWeiXinUser(code,appId,appSecret); if (user != null) { if (!StringUtil.isNullOrEmpty(user.getHeadimgurl())) { - FileUploadResult result = COSManager.getInstance().uploadFile( - HttpUtil.getAsInputStream(user.getHeadimgurl()), - String.format("/portrait/wx/%s_%s.jpg", user.getUnionid(), System.currentTimeMillis() + "")); + InputStream asInputStream = HttpUtil.getAsInputStream(user.getHeadimgurl()); + if (asInputStream == null) { + LogHelper.test("寰俊澶村儚涓嬭浇澶辫触: " +user.getUnionid()+ " " + user.getHeadimgurl()); + return user; + } + + FileUploadResult result = COSManager.getInstance().uploadFile(asInputStream, + String.format(FilePathEnum.userWXPortrait.getPath() + "%s_%s.jpg", user.getUnionid(), System.currentTimeMillis() + "")); if (result != null && !StringUtil.isNullOrEmpty(result.getUrl())) { user.setHeadimgurl(result.getUrl()); // COS鍒犻櫎鍏朵綑澶村儚 -// String prefix = String.format("/portrait/wx/%s_", user.getUnionid()); -// ObjectListing list = COSManager.getInstance().getObjectList(prefix, null, 30); -// if (list != null && list.getObjectSummaries() != null) -// for (COSObjectSummary object : list.getObjectSummaries()) { -// if (!result.getUrl().contains(object.getKey())) { -// COSManager.getInstance().deleteFile(object.getKey()); -// } -// } + // String prefix = String.format("/portrait/wx/%s_", + // user.getUnionid()); + // ObjectListing list = + // COSManager.getInstance().getObjectList(prefix, null, 30); + // if (list != null && list.getObjectSummaries() != null) + // for (COSObjectSummary object : list.getObjectSummaries()) + // { + // if (!result.getUrl().contains(object.getKey())) { + // COSManager.getInstance().deleteFile(object.getKey()); + // } + // } + } else { + LogHelper.test("寰俊澶村儚涓婁紶澶辫触: " +user.getUnionid()+ " " + user.getHeadimgurl()); } } } @@ -124,6 +135,7 @@ } private static WeiXinUserParam getWeiXinUserParam(String result) { + LogHelper.test(result); WeiXinUserParam weiXinUserParam = new WeiXinUserParam(); JSONObject jsonObject = null; try { @@ -139,12 +151,14 @@ String refreshToken = jsonObject.optString("refresh_token"); String scope = jsonObject.optString("scope"); int expires = jsonObject.optInt("expires_in"); + String unionId = jsonObject.optString("unionid"); weiXinUserParam.setRefreshToken(refreshToken); weiXinUserParam.setOpenId(openId); weiXinUserParam.setExpires(expires); weiXinUserParam.setAccessToken(accessToken); weiXinUserParam.setScope(scope); + weiXinUserParam.setUnionId(unionId); return weiXinUserParam; } -- Gitblit v1.8.0