123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- package controllers
- import (
- "encoding/json"
- "eta/eta_pub/models"
- "eta/eta_pub/services"
- "eta/eta_pub/services/alarm_msg"
- "eta/eta_pub/utils"
- )
- // 发送模板消息
- type WechatController struct {
- BaseAuthController
- }
- // @Title 推送模板消息
- // @Description 推送模板消息
- // @Success 200 新增成功
- // @router /send_template_msg [post]
- func (this *WechatController) SendTemplateMsg() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- body := this.Ctx.Input.RequestBody
- sendItem := new(models.SendWxTemplate)
- err := json.Unmarshal(body, &sendItem)
- if err != nil {
- br.Msg = "参数解析失败"
- br.ErrMsg = "参数解析失败,Err:" + err.Error()
- return
- }
- if sendItem.TemplateId == "" {
- br.Msg = "参数错误,模板id为空"
- return
- }
- if len(sendItem.OpenIdArr) <= 0 {
- br.Msg = "openid为空"
- return
- }
- if sendItem.WxAppId == "" {
- sendItem.WxAppId = utils.WxAppId //默认是弘则研究公众号的appId
- }
- go func() {
- if sendItem.RedirectTarget == 3 {
- err = services.SendWxTemplateMsgCygx(sendItem)
- } else {
- err = services.SendWxTemplateMsg(sendItem)
- }
- if err != nil {
- msg := "URI:" + this.Ctx.Input.URI() + "<br/> " + "Params" + string(body) + " <br/>" + "ErrMsg:" + err.Error() + ";<br/> Body:" + string(body) + "<br/>"
- go alarm_msg.SendAlarmMsg(msg, 1)
- }
- }()
- br.Ret = 200
- br.Msg = "推送成功"
- return
- }
- // GetAccessToken
- // @Title 获取微信token
- // @Description 获取微信token
- // @Success 200
- // @router /access_token [post]
- func (this *WechatController) GetAccessToken() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- body := this.Ctx.Input.RequestBody
- req := new(models.WxTokenReq)
- err := json.Unmarshal(body, &req)
- if err != nil {
- br.Msg = "参数解析失败"
- br.ErrMsg = "参数解析失败,Err:" + err.Error()
- return
- }
- if req.WxAppId == "" {
- br.Msg = "参数错误,微信AppId为空"
- return
- }
- if req.WxAppSecret == "" {
- br.Msg = "参数错误,微信AppSecret为空"
- return
- }
- token, err, errMsg := services.GetWxAccessToken(req.WxAppId, req.WxAppSecret)
- if err != nil {
- br.Msg = errMsg
- br.ErrMsg = err.Error()
- return
- }
- data := models.WxTokenResp{AccessToken: token}
- br.Ret = 200
- br.Msg = "推送成功"
- br.Data = data
- return
- }
- // @Title 推送类目模板消息
- // @Description 推送模板消息
- // @Success 200 新增成功
- // @router /send_category_template_msg [post]
- func (this *WechatController) SendCategoryTemplateMsg() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- body := this.Ctx.Input.RequestBody
- sendItem := new(models.SendWxCategoryTemplate)
- err := json.Unmarshal(body, &sendItem)
- if err != nil {
- br.Msg = "参数解析失败"
- br.ErrMsg = "参数解析失败,Err:" + err.Error()
- return
- }
- if sendItem.TemplateId == "" {
- br.Msg = "参数错误,模板id为空"
- return
- }
- if len(sendItem.OpenIdArr) <= 0 {
- br.Msg = "openid为空"
- return
- }
- sendItem.WxAppId = utils.WxMfyxAppId //默认是买方研选公众号
- go func() {
- err = services.SendWxCategoryTemplateMsgCygx(sendItem)
- if err != nil {
- msg := "URI:" + this.Ctx.Input.URI() + "<br/> " + "Params" + string(body) + " <br/>" + "ErrMsg:" + err.Error() + ";<br/> Body:" + string(body) + "<br/>"
- go alarm_msg.SendAlarmMsg(msg, 1)
- }
- }()
- br.Ret = 200
- br.Msg = "推送成功"
- return
- }
|