修复问题
parent
685ec4c9e8
commit
1494f1c2ea
@ -0,0 +1,16 @@
|
|||||||
|
package com.ibeetl.jlw.service;
|
||||||
|
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
import me.chanjar.weixin.mp.api.WxMpMessageHandler;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Binary Wang
|
||||||
|
*/
|
||||||
|
public abstract class AbstractHandler implements WxMpMessageHandler {
|
||||||
|
|
||||||
|
protected final Gson gson = new Gson();
|
||||||
|
protected Logger logger = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,81 @@
|
|||||||
|
package com.ibeetl.jlw.service;
|
||||||
|
|
||||||
|
import cn.jlw.token.TokenService;
|
||||||
|
import com.ibeetl.admin.core.entity.CoreUser;
|
||||||
|
import com.ibeetl.admin.core.service.CoreUserService;
|
||||||
|
import com.ibeetl.jlw.entity.CoreUserWx;
|
||||||
|
import com.ibeetl.jlw.web.query.CoreUserWxQuery;
|
||||||
|
import me.chanjar.weixin.common.api.WxConsts;
|
||||||
|
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||||
|
import me.chanjar.weixin.mp.api.WxMpService;
|
||||||
|
import me.chanjar.weixin.mp.bean.message.WxMpXmlMessage;
|
||||||
|
import me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage;
|
||||||
|
import me.chanjar.weixin.mp.builder.kefu.TextBuilder;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Binary Wang
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class MsgHandler extends AbstractHandler {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CoreUserService coreUserService;
|
||||||
|
@Autowired
|
||||||
|
private CoreUserWxService coreUserWxService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private TokenService tokenService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage,
|
||||||
|
Map<String, Object> context, WxMpService wxMpService,
|
||||||
|
WxSessionManager sessionManager) {
|
||||||
|
|
||||||
|
WeixinService weixinService = (WeixinService) wxMpService;
|
||||||
|
String fromUser = wxMessage.getFromUser();
|
||||||
|
String userId = wxMessage.getEventKey();
|
||||||
|
if (StringUtils.isEmpty(userId)) {
|
||||||
|
return WxMpXmlOutMessage.TEXT().content("欢迎关注").toUser(fromUser)
|
||||||
|
.fromUser(wxMessage.getToUser())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
CoreUserWxQuery coreUserWxQuery = new CoreUserWxQuery();
|
||||||
|
coreUserWxQuery.setOpenid(fromUser);
|
||||||
|
coreUserWxQuery.setUserId(Long.parseLong(userId));
|
||||||
|
CoreUserWx info = coreUserWxService.getInfo(coreUserWxQuery);
|
||||||
|
if (info != null) {
|
||||||
|
CoreUser coreUser = coreUserService.getUserById(Long.parseLong(userId));
|
||||||
|
//todo 登录
|
||||||
|
//tokenService.getToken()
|
||||||
|
//indexTokenMap.put(keyId, teacherToken);
|
||||||
|
//tokenSessionMap.put()
|
||||||
|
//platformService.setLoginUser()
|
||||||
|
return WxMpXmlOutMessage.TEXT().content("登录成功").toUser(fromUser)
|
||||||
|
.fromUser(wxMessage.getToUser())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
CoreUserWxQuery coreUserWxQuery1 = new CoreUserWxQuery();
|
||||||
|
coreUserWxQuery1.setOpenid(fromUser);
|
||||||
|
CoreUserWx info1 = coreUserWxService.getInfo(coreUserWxQuery1);
|
||||||
|
CoreUserWxQuery coreUserWxQuery2 = new CoreUserWxQuery();
|
||||||
|
coreUserWxQuery2.setUserId(Long.parseLong(userId));
|
||||||
|
CoreUserWx info2 = coreUserWxService.getInfo(coreUserWxQuery2);
|
||||||
|
if (info2 != null || info1 != null) {
|
||||||
|
return WxMpXmlOutMessage.TEXT().content("绑定失败,已经绑定其他账号").toUser(fromUser)
|
||||||
|
.fromUser(wxMessage.getToUser())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
coreUserWxQuery2.setOpenid(fromUser);
|
||||||
|
coreUserWxService.add(coreUserWxQuery2);
|
||||||
|
return WxMpXmlOutMessage.TEXT().content("绑定成功").toUser(fromUser)
|
||||||
|
.fromUser(wxMessage.getToUser())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue