继续优化代码
This commit is contained in:
parent
fe51ab7813
commit
26ddb8eb32
@ -662,6 +662,10 @@
|
|||||||
<code>45022</code>
|
<code>45022</code>
|
||||||
<text>应用名字长度不合法,合法长度为2-16个字</text>
|
<text>应用名字长度不合法,合法长度为2-16个字</text>
|
||||||
</error>
|
</error>
|
||||||
|
<error>
|
||||||
|
<code>45047</code>
|
||||||
|
<text>客服接口下行条数超过上限</text>
|
||||||
|
</error>
|
||||||
<error>
|
<error>
|
||||||
<code>45024</code>
|
<code>45024</code>
|
||||||
<text>账号数量超过上限</text>
|
<text>账号数量超过上限</text>
|
||||||
|
|||||||
@ -154,7 +154,7 @@ public class WeixinPayProxy {
|
|||||||
* @see com.foxinmy.weixin4j.payment.mch.JSAPIPayRequest JS支付
|
* @see com.foxinmy.weixin4j.payment.mch.JSAPIPayRequest JS支付
|
||||||
* @see com.foxinmy.weixin4j.payment.mch.NATIVEPayRequest 扫码支付
|
* @see com.foxinmy.weixin4j.payment.mch.NATIVEPayRequest 扫码支付
|
||||||
* @see com.foxinmy.weixin4j.payment.mch.APPPayRequest APP支付
|
* @see com.foxinmy.weixin4j.payment.mch.APPPayRequest APP支付
|
||||||
* @see com.foxinmy.weixin4j.payment.mch.WAPPayRequest WAP支付t
|
* @see com.foxinmy.weixin4j.payment.mch.WAPPayRequest WAP支付
|
||||||
* @throws WeixinPayException
|
* @throws WeixinPayException
|
||||||
*/
|
*/
|
||||||
public MchPayRequest createPayRequest(TradeType tradeType, String openId,
|
public MchPayRequest createPayRequest(TradeType tradeType, String openId,
|
||||||
|
|||||||
@ -74,8 +74,4 @@ public class TokenHolder {
|
|||||||
tokenStorager.caching(cacheKey, token);
|
tokenStorager.caching(cacheKey, token);
|
||||||
return token;
|
return token;
|
||||||
}
|
}
|
||||||
|
|
||||||
public TokenStorager getTokenStorager() {
|
|
||||||
return tokenStorager;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -151,7 +151,7 @@ public class WeixinProxy {
|
|||||||
public TokenHolder getTicketHolder(TicketType ticketType) {
|
public TokenHolder getTicketHolder(TicketType ticketType) {
|
||||||
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
|
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
|
||||||
.getId(), ticketType, this.tokenHolder),
|
.getId(), ticketType, this.tokenHolder),
|
||||||
this.tokenHolder.getTokenStorager());
|
this.settings.getTokenStorager0());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -113,7 +113,7 @@ public class WeixinProxy {
|
|||||||
public WeixinProxy(SuitePerCodeHolder perCodeHolder,
|
public WeixinProxy(SuitePerCodeHolder perCodeHolder,
|
||||||
TokenHolder suiteTokenHolder) {
|
TokenHolder suiteTokenHolder) {
|
||||||
this(new TokenHolder(new WeixinTokenSuiteCreator(perCodeHolder,
|
this(new TokenHolder(new WeixinTokenSuiteCreator(perCodeHolder,
|
||||||
suiteTokenHolder), suiteTokenHolder.getTokenStorager()));
|
suiteTokenHolder), perCodeHolder.getTokenStorager()));
|
||||||
this.settings = new Weixin4jSettings(new WeixinAccount(
|
this.settings = new Weixin4jSettings(new WeixinAccount(
|
||||||
perCodeHolder.getAuthCorpId(), null));
|
perCodeHolder.getAuthCorpId(), null));
|
||||||
}
|
}
|
||||||
@ -167,7 +167,7 @@ public class WeixinProxy {
|
|||||||
public TokenHolder getTicketHolder(TicketType ticketType) {
|
public TokenHolder getTicketHolder(TicketType ticketType) {
|
||||||
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
|
return new TokenHolder(new WeixinTicketCreator(getWeixinAccount()
|
||||||
.getId(), ticketType, this.tokenHolder),
|
.getId(), ticketType, this.tokenHolder),
|
||||||
this.tokenHolder.getTokenStorager());
|
this.settings.getTokenStorager0());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -65,7 +65,8 @@ public class WeixinSuiteProxy {
|
|||||||
new WeixinProviderTokenCreator(suiteSettings
|
new WeixinProviderTokenCreator(suiteSettings
|
||||||
.getWeixinAccount().getId(), suiteSettings
|
.getWeixinAccount().getId(), suiteSettings
|
||||||
.getWeixinAccount().getProviderSecret()),
|
.getWeixinAccount().getProviderSecret()),
|
||||||
suiteSettings.getTokenStorager0()));
|
suiteSettings.getTokenStorager0()),
|
||||||
|
suiteSettings.getTokenStorager0());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import com.foxinmy.weixin4j.model.Token;
|
|||||||
import com.foxinmy.weixin4j.qy.model.OUserInfo;
|
import com.foxinmy.weixin4j.qy.model.OUserInfo;
|
||||||
import com.foxinmy.weixin4j.qy.type.LoginTargetType;
|
import com.foxinmy.weixin4j.qy.type.LoginTargetType;
|
||||||
import com.foxinmy.weixin4j.token.TokenHolder;
|
import com.foxinmy.weixin4j.token.TokenHolder;
|
||||||
|
import com.foxinmy.weixin4j.token.TokenStorager;
|
||||||
import com.foxinmy.weixin4j.util.StringUtil;
|
import com.foxinmy.weixin4j.util.StringUtil;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -22,9 +23,12 @@ import com.foxinmy.weixin4j.util.StringUtil;
|
|||||||
*/
|
*/
|
||||||
public class ProviderApi extends QyApi {
|
public class ProviderApi extends QyApi {
|
||||||
private final TokenHolder providerTokenHolder;
|
private final TokenHolder providerTokenHolder;
|
||||||
|
private final TokenStorager tokenStorager;
|
||||||
|
|
||||||
public ProviderApi(TokenHolder providerTokenHolder) {
|
public ProviderApi(TokenHolder providerTokenHolder,
|
||||||
|
TokenStorager tokenStorager) {
|
||||||
this.providerTokenHolder = providerTokenHolder;
|
this.providerTokenHolder = providerTokenHolder;
|
||||||
|
this.tokenStorager = tokenStorager;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -49,14 +53,13 @@ public class ProviderApi extends QyApi {
|
|||||||
oUser.getRedirectLoginInfo().setAccessToken(
|
oUser.getRedirectLoginInfo().setAccessToken(
|
||||||
obj.getJSONObject("redirect_login_info").getString(
|
obj.getJSONObject("redirect_login_info").getString(
|
||||||
"login_ticket"));
|
"login_ticket"));
|
||||||
providerTokenHolder.getTokenStorager().caching(
|
tokenStorager.caching(getLoginTicketCacheKey(oUser.getCorpInfo()
|
||||||
getLoginTicketCacheKey(oUser.getCorpInfo().getCorpId()),
|
.getCorpId()), oUser.getRedirectLoginInfo());
|
||||||
oUser.getRedirectLoginInfo());
|
|
||||||
return oUser;
|
return oUser;
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getLoginTicketCacheKey(String coprId) {
|
private String getLoginTicketCacheKey(String coprId) {
|
||||||
return String.format("wx_qy_provider_login_ticket_%s", coprId);
|
return String.format("weixin4j_qy_provider_ticket_%s", coprId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -75,8 +78,7 @@ public class ProviderApi extends QyApi {
|
|||||||
*/
|
*/
|
||||||
public String getLoginUrl(String corpId, LoginTargetType targetType,
|
public String getLoginUrl(String corpId, LoginTargetType targetType,
|
||||||
int agentId) throws WeixinException {
|
int agentId) throws WeixinException {
|
||||||
Token token = providerTokenHolder.getTokenStorager().lookup(
|
Token token = tokenStorager.lookup(getLoginTicketCacheKey(corpId));
|
||||||
getLoginTicketCacheKey(corpId));
|
|
||||||
if (token == null || StringUtil.isBlank(token.getAccessToken())) {
|
if (token == null || StringUtil.isBlank(token.getAccessToken())) {
|
||||||
throw new WeixinException("maybe oauth first?");
|
throw new WeixinException("maybe oauth first?");
|
||||||
}
|
}
|
||||||
|
|||||||
@ -45,7 +45,8 @@ public class SuitePerCodeHolder {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getCacheKey() {
|
public String getCacheKey() {
|
||||||
return String.format("qy_suite_percode_%s:%s", suiteId, authCorpId);
|
return String.format("weixin4j_qy_suite_percode_%s:%s", suiteId,
|
||||||
|
authCorpId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -65,4 +66,8 @@ public class SuitePerCodeHolder {
|
|||||||
public String getAuthCorpId() {
|
public String getAuthCorpId() {
|
||||||
return this.authCorpId;
|
return this.authCorpId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TokenStorager getTokenStorager() {
|
||||||
|
return this.tokenStorager;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -9,7 +9,6 @@ import io.netty.handler.codec.http.HttpServerCodec;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import com.foxinmy.weixin4j.dispatcher.WeixinMessageDispatcher;
|
import com.foxinmy.weixin4j.dispatcher.WeixinMessageDispatcher;
|
||||||
import com.foxinmy.weixin4j.exception.WeixinException;
|
|
||||||
import com.foxinmy.weixin4j.util.AesToken;
|
import com.foxinmy.weixin4j.util.AesToken;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -27,7 +26,7 @@ public class WeixinServerInitializer extends ChannelInitializer<SocketChannel> {
|
|||||||
private final WeixinMessageDispatcher messageDispatcher;
|
private final WeixinMessageDispatcher messageDispatcher;
|
||||||
|
|
||||||
public WeixinServerInitializer(Map<String, AesToken> aesTokenMap,
|
public WeixinServerInitializer(Map<String, AesToken> aesTokenMap,
|
||||||
WeixinMessageDispatcher messageDispatcher) throws WeixinException {
|
WeixinMessageDispatcher messageDispatcher) {
|
||||||
this.aesTokenMap = aesTokenMap;
|
this.aesTokenMap = aesTokenMap;
|
||||||
this.messageDispatcher = messageDispatcher;
|
this.messageDispatcher = messageDispatcher;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -216,8 +216,6 @@ public final class WeixinServerBootstrap {
|
|||||||
}
|
}
|
||||||
}).sync().channel();
|
}).sync().channel();
|
||||||
ch.closeFuture().sync();
|
ch.closeFuture().sync();
|
||||||
} catch (WeixinException e) {
|
|
||||||
throw e;
|
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
throw new WeixinException(e);
|
throw new WeixinException(e);
|
||||||
} finally {
|
} finally {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user