Search in sources :

Example 1 with MsgBean

use of com.github.liuweijw.commons.pay.beans.MsgBean in project fw-cloud-framework by liuweijw.

the class WxMessageController method sendWeixinCurrencyTemplateMessage.

@ResponseBody
@RequestMapping(value = "/sendCurrency/{wechatId}")
public HttpResult sendWeixinCurrencyTemplateMessage(@PathVariable("wechatId") String wechatId, @RequestParam("message") String message) {
    if (StringHelper.isBlank(message))
        return new HttpResult().failure("发送消息内容不能为空");
    WechatInfo wechatInfo = wechatInfoService.findByWechatId(wechatId);
    if (null == wechatInfo)
        return new HttpResult().failure("公众号wechatId[" + wechatId + "]不存在");
    log.info("公众号消息发送:|wechatId[{}]|reqKey[{}]|message[{}]", wechatId, wechatInfo.getReqKey(), message);
    String decryptMessage = Crypt.getInstance().decrypt(message, wechatInfo.getReqKey());
    if (StringHelper.isBlank(decryptMessage))
        return new HttpResult().failure("发送消息内容签名不正确");
    MsgBean msgBean = JSONObject.parseObject(decryptMessage, MsgBean.class);
    if (null == msgBean)
        return new HttpResult().failure("发送消息内容转换失败");
    try {
        boolean isOk = messageService.sendWeixinCurrencyTemplateMessage(msgBean);
        if (isOk)
            return new HttpResult().success("SUCCESS");
    } catch (WxErrorException e) {
        e.printStackTrace();
        return new HttpResult().failure("发送消息失败[" + e.getMessage() + "]");
    }
    return new HttpResult().failure("消息发送失败!");
}
Also used : WechatInfo(com.github.liuweijw.business.wechat.domain.WechatInfo) MsgBean(com.github.liuweijw.commons.pay.beans.MsgBean) HttpResult(com.github.liuweijw.commons.pay.beans.HttpResult) WxErrorException(me.chanjar.weixin.common.error.WxErrorException) ResponseBody(org.springframework.web.bind.annotation.ResponseBody) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 2 with MsgBean

use of com.github.liuweijw.commons.pay.beans.MsgBean in project fw-cloud-framework by liuweijw.

the class WxMessageController method sendWeixinTemplateMessage.

@ResponseBody
@Deprecated
@RequestMapping(value = "/send/{wechatId}")
public HttpResult sendWeixinTemplateMessage(@PathVariable("wechatId") String wechatId, @RequestParam("message") String message) {
    if (StringHelper.isBlank(message))
        return new HttpResult().failure("发送消息内容不能为空");
    WechatInfo wechatInfo = wechatInfoService.findByWechatId(wechatId);
    if (null == wechatInfo)
        return new HttpResult().failure("公众号wechatId[" + wechatId + "]不存在");
    log.info("公众号消息发送:|wechatId[{}]|reqKey[{}]|message[{}]", wechatId, wechatInfo.getReqKey(), message);
    String decryptMessage = Crypt.getInstance().decrypt(message, wechatInfo.getReqKey());
    if (StringHelper.isBlank(decryptMessage))
        return new HttpResult().failure("发送消息内容签名不正确");
    MsgBean msgBean = JSONObject.parseObject(decryptMessage, MsgBean.class);
    if (null == msgBean)
        return new HttpResult().failure("发送消息内容转换失败");
    WxTemplateEnum wxTemplateEnum = WxTemplateEnum.of(msgBean.getTemplateId());
    try {
        boolean isOk = messageService.sendWeixinTemplateMessage(wxTemplateEnum, msgBean);
        if (isOk)
            return new HttpResult().success("SUCCESS");
    } catch (WxErrorException e) {
        e.printStackTrace();
        return new HttpResult().failure("发送消息失败[" + e.getMessage() + "]");
    }
    return new HttpResult().failure("消息发送失败!");
}
Also used : WechatInfo(com.github.liuweijw.business.wechat.domain.WechatInfo) MsgBean(com.github.liuweijw.commons.pay.beans.MsgBean) HttpResult(com.github.liuweijw.commons.pay.beans.HttpResult) WxTemplateEnum(com.github.liuweijw.commons.pay.enums.WxTemplateEnum) WxErrorException(me.chanjar.weixin.common.error.WxErrorException) ResponseBody(org.springframework.web.bind.annotation.ResponseBody) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Aggregations

WechatInfo (com.github.liuweijw.business.wechat.domain.WechatInfo)2 HttpResult (com.github.liuweijw.commons.pay.beans.HttpResult)2 MsgBean (com.github.liuweijw.commons.pay.beans.MsgBean)2 WxErrorException (me.chanjar.weixin.common.error.WxErrorException)2 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)2 ResponseBody (org.springframework.web.bind.annotation.ResponseBody)2 WxTemplateEnum (com.github.liuweijw.commons.pay.enums.WxTemplateEnum)1