| @@ -285,9 +285,8 @@ public class WechatCalllbackController extends BaseController { | |||||
| } else { | } else { | ||||
| getThreadCount( 0 ); | getThreadCount( 0 ); | ||||
| // 公众号 | // 公众号 | ||||
| WxMpService mpService = openService.getWxOpenComponentService().getWxMpServiceByAppid(appId); | |||||
| try { | try { | ||||
| WxMpXmlOutMessage outMessage = mpManager.getRouter(mpService).route(inMessage); | |||||
| WxMpXmlOutMessage outMessage = mpManager.getRouter(appId).route(inMessage); | |||||
| getThreadCount( 1 ); | getThreadCount( 1 ); | ||||
| if (outMessage == null) { | if (outMessage == null) { | ||||
| this.logger.info("2 return: success"); | this.logger.info("2 return: success"); | ||||
| @@ -31,10 +31,10 @@ public class SubscribeHandler extends AbstractHandler { | |||||
| public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, | public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, | ||||
| Map<String, Object> context, WxMpService weixinService, | Map<String, Object> context, WxMpService weixinService, | ||||
| WxSessionManager sessionManager) throws WxErrorException { | WxSessionManager sessionManager) throws WxErrorException { | ||||
| String appId = weixinService.getWxMpConfigStorage().getAppId(); | |||||
| this.logger.info("新关注用户 OPENID: " + wxMessage.getFromUser()); | |||||
| this.logger.info("新关注用户 OPENID: " + wxMessage.getFromUser() + ", AppId: " + appId); | |||||
| String appId = weixinService.getWxMpConfigStorage().getAppId(); | |||||
| WxAuthorizerInfo authQ = new WxAuthorizerInfo(); | WxAuthorizerInfo authQ = new WxAuthorizerInfo(); | ||||
| authQ.setAuthorizerAppid(appId); | authQ.setAuthorizerAppid(appId); | ||||
| WxAuthorizerInfo authorizerInfo = wxAuthorizerInfoMapper.findWeChatMp(authQ); | WxAuthorizerInfo authorizerInfo = wxAuthorizerInfoMapper.findWeChatMp(authQ); | ||||
| @@ -29,9 +29,10 @@ public class UnsubscribeHandler extends AbstractHandler { | |||||
| public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, | public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, | ||||
| Map<String, Object> context, WxMpService wxMpService, | Map<String, Object> context, WxMpService wxMpService, | ||||
| WxSessionManager sessionManager) { | WxSessionManager sessionManager) { | ||||
| String openId = wxMessage.getFromUser(); | |||||
| this.logger.info("取消关注用户 OPENID: " + openId); | |||||
| String appId = wxMpService.getWxMpConfigStorage().getAppId(); | String appId = wxMpService.getWxMpConfigStorage().getAppId(); | ||||
| String openId = wxMessage.getFromUser(); | |||||
| this.logger.info("取消关注用户 OPENID: " + openId+ ", AppId: " + appId); | |||||
| WxAuthorizerInfo authQ = new WxAuthorizerInfo(); | WxAuthorizerInfo authQ = new WxAuthorizerInfo(); | ||||
| authQ.setAuthorizerAppid(appId); | authQ.setAuthorizerAppid(appId); | ||||
| WxAuthorizerInfo authorizerInfo = wxAuthorizerInfoMapper.findWeChatMp(authQ); | WxAuthorizerInfo authorizerInfo = wxAuthorizerInfoMapper.findWeChatMp(authQ); | ||||
| @@ -53,14 +53,17 @@ public class WxMpManager { | |||||
| return openService.getWxOpenComponentService().getWxMpServiceByAppid(appId); | return openService.getWxOpenComponentService().getWxMpServiceByAppid(appId); | ||||
| } | } | ||||
| public WxMpMessageRouter getRouter(WxMpService mpService) { | |||||
| String appId = mpService.getWxMpConfigStorage().getAppId(); | |||||
| public WxMpMessageRouter getRouter(String appId) { | |||||
| if (myRouterMap.containsKey(appId)) { | if (myRouterMap.containsKey(appId)) { | ||||
| logger.info("found appId : ", appId); | logger.info("found appId : ", appId); | ||||
| return myRouterMap.get(appId); | return myRouterMap.get(appId); | ||||
| } else { | } else { | ||||
| WxMpService wxMpService = openService.getWxOpenComponentService().getWxMpServiceByAppid(appId); | |||||
| WxMpMessageRouter newRouter = newRouter(wxMpService); | |||||
| myRouterMap.put(appId, newRouter); | |||||
| logger.info("found new appId : ", appId); | logger.info("found new appId : ", appId); | ||||
| return newRouter(mpService); | |||||
| return newRouter; | |||||
| } | } | ||||
| } | } | ||||
| @@ -134,8 +137,6 @@ public class WxMpManager { | |||||
| // 默认 | // 默认 | ||||
| newRouter.rule().async(false).handler(this.msgHandler).end(); | newRouter.rule().async(false).handler(this.msgHandler).end(); | ||||
| myRouterMap.put(wxMpService.getWxMpConfigStorage().getAppId(), newRouter); | |||||
| return newRouter; | return newRouter; | ||||
| } | } | ||||