12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- package com.qxgmat.help;
- import com.alibaba.fastjson.JSONObject;
- import com.nuliji.tools.exception.ParameterException;
- import com.nuliji.tools.third.OauthData;
- import com.nuliji.tools.third.wechat.MessageListener;
- import com.nuliji.tools.third.wechat.WechatClient;
- import com.qxgmat.data.constants.enums.MessageCategory;
- import com.qxgmat.data.constants.enums.MessageType;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- import org.springframework.stereotype.Service;
- import java.util.HashMap;
- import java.util.Map;
- @Service
- public class WechatHelp {
- private WechatClient wechatPc;
- @Autowired
- private void getWechatPc(@Value("${third.wechat.pc.appId}") String appId,
- @Value("${third.wechat.pc.appSecret}") String appSecret) {
- this.wechatPc = new WechatClient(appId, appSecret);
- }
- private WechatClient wechat;
- @Autowired
- private void getWechat(@Value("${third.wechat.native.appId}") String appId,
- @Value("${third.wechat.native.appSecret}") String appSecret) {
- this.wechat = new WechatClient(appId, appSecret);
- }
- @Value("${third.wechat.questionTemplate}")
- private String questionTemplate;
- @Value("${third.wechat.courseTemplate}")
- private String courseTemplate;
- public OauthData oauthPc(String code, boolean userInfo) {
- return wechatPc.webAuthorize(code,userInfo);
- }
- public OauthData oauthNative(String code, boolean userInfo){
- return wechat.webAuthorize(code, userInfo);
- }
- public OauthData refreshNative(String refreshToken) {
- return wechat.refreshWebAccessToken(refreshToken);
- }
- public String redirectPc(String redirectUrl, String state){
- return wechatPc.getOAuthUrl(redirectUrl, state);
- }
- public String redirectNative(String redirectUrl, String state){
- return wechat.getOAuthUrl(redirectUrl, state);
- }
- public String jsTicket(){
- return wechat.jsTicket();
- }
- public String receiveMessage(String body){
- wechat.ReceiveMessage(body, new MessageListener() {
- @Override
- public void OnScan(String openId, int sceneId) {
- }
- @Override
- public void OnSubscribe(String openId) {
- }
- });
- return "";
- }
- public boolean sendMessage(String openid, MessageCategory messageCategory, Map<String, String> dataMap){
- String templateId = "";
- switch (messageCategory){
- case ASK_QUESTION:
- templateId = this.questionTemplate;
- break;
- case ASK_COURSE:
- templateId = this.courseTemplate;
- break;
- default:
- throw new ParameterException("微信通知类型错误");
- }
- wechat.sendMessage(openid, templateId, "", dataMap);
- return true;
- }
- }
|