|
@@ -15,28 +15,15 @@ import (
|
|
|
|
|
|
// 发送报告提问消息提醒
|
|
|
func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.OpenIdList, articleId int) (err error) {
|
|
|
- var msg string
|
|
|
defer func() {
|
|
|
if err != nil {
|
|
|
- go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
|
|
|
go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,用户名", name, "文章ID:", articleId), 2)
|
|
|
- utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
|
|
|
}
|
|
|
- fmt.Println("line 21", err, msg)
|
|
|
}()
|
|
|
- utils.FileLog.Info("%s", "services SendMsg")
|
|
|
- //accessToken, err := models.GetWxAccessToken()
|
|
|
- accessToken, err := models.GetWxAccessTokenByXzs()
|
|
|
- if err != nil {
|
|
|
- msg = "GetWxAccessToken Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if accessToken == "" {
|
|
|
- msg = "accessToken is empty"
|
|
|
- return
|
|
|
- }
|
|
|
+
|
|
|
var first string
|
|
|
var keyword1 string
|
|
|
+ var keyword2 string
|
|
|
var keyword3 string
|
|
|
var keyword4 string
|
|
|
var remark string
|
|
@@ -45,22 +32,27 @@ func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.
|
|
|
keyword3 = askTime
|
|
|
keyword4 = askMsg
|
|
|
remark = title
|
|
|
- sendUrl := "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken
|
|
|
- //templateId := utils.WxMsgTemplateIdAskMsg
|
|
|
- templateId := utils.WxMsgTemplateIdAskMsgXzs
|
|
|
- sendMap := make(map[string]interface{})
|
|
|
- sendData := make(map[string]interface{})
|
|
|
- sendMap["template_id"] = templateId
|
|
|
- sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": "pages/reportDetail/reportDetail?id=" + strconv.Itoa(articleId)}
|
|
|
- //sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "path": "article/detail?ArticleId=1000001"}
|
|
|
- sendData["first"] = map[string]interface{}{"value": first, "color": "#173177"}
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": keyword1, "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": "", "color": "#173177"}
|
|
|
- sendData["keyword3"] = map[string]interface{}{"value": keyword3, "color": "#173177"}
|
|
|
- sendData["keyword4"] = map[string]interface{}{"value": keyword4, "color": "#173177"}
|
|
|
- sendData["remark"] = map[string]interface{}{"value": remark, "color": "#173177"}
|
|
|
- sendMap["data"] = sendData
|
|
|
- WxSendTemplateMsg(sendUrl, sendMap, openIdList, strconv.Itoa(articleId), utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD)
|
|
|
+
|
|
|
+ openIdArr := make([]string, 0)
|
|
|
+ for _, v := range openIdList {
|
|
|
+ openIdArr = append(openIdArr, v.OpenId)
|
|
|
+ }
|
|
|
+ redirectUrl := utils.WX_MSG_PATH_ARTICLE_DETAIL + strconv.Itoa(articleId)
|
|
|
+ sendInfo := new(SendWxTemplate)
|
|
|
+ sendInfo.First = first
|
|
|
+ sendInfo.Keyword1 = keyword1
|
|
|
+ sendInfo.Keyword2 = keyword2
|
|
|
+ sendInfo.Keyword3 = keyword3
|
|
|
+ sendInfo.Keyword4 = keyword4
|
|
|
+ sendInfo.Remark = remark
|
|
|
+ sendInfo.TemplateId = utils.WxMsgTemplateIdAskMsgXzs
|
|
|
+ sendInfo.RedirectUrl = redirectUrl
|
|
|
+ sendInfo.RedirectTarget = 3
|
|
|
+ sendInfo.Resource = strconv.Itoa(articleId)
|
|
|
+ sendInfo.SendType = utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD
|
|
|
+ sendInfo.OpenIdArr = openIdArr
|
|
|
+ err = PublicSendTemplateMsg(sendInfo)
|
|
|
+
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -327,76 +319,58 @@ func SendCommentWxTemplateMsg(req models.AddCygxArticleCommentReq, user *models.
|
|
|
}
|
|
|
|
|
|
// 发送用户操作活动消息提醒
|
|
|
-func SendWxMsgWithActivityUserRemind(keyWord1, keyWord2 string, openIdList []*models.OpenIdList, activityId int) (err error) {
|
|
|
- var msg string
|
|
|
+func SendWxMsgWithActivityUserRemind(keyword1, keyword2 string, openIdList []*models.OpenIdList, activityId int) (err error) {
|
|
|
defer func() {
|
|
|
if err != nil {
|
|
|
- go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
|
|
|
go utils.SendAlarmMsg(fmt.Sprint("发送用户操作活动消息提醒,文章ID:", activityId), 2)
|
|
|
- utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
|
|
|
}
|
|
|
}()
|
|
|
- accessToken, err := models.GetWxAccessTokenByXzs()
|
|
|
- if err != nil {
|
|
|
- msg = "GetWxAccessToken Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if accessToken == "" {
|
|
|
- msg = "accessToken is empty"
|
|
|
- return
|
|
|
+
|
|
|
+ openIdArr := make([]string, 0)
|
|
|
+ for _, v := range openIdList {
|
|
|
+ openIdArr = append(openIdArr, v.OpenId)
|
|
|
}
|
|
|
- //var first string
|
|
|
- //first = keyWord1
|
|
|
- //keyword1 := keyWord2
|
|
|
- sendUrl := "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken
|
|
|
- templateId := utils.WxMsgTemplateIdArticleUserRemind
|
|
|
- sendMap := make(map[string]interface{})
|
|
|
- sendData := make(map[string]interface{})
|
|
|
- sendMap["template_id"] = templateId
|
|
|
- sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": "activityPages/activityDetail/activityDetail?id=" + strconv.Itoa(activityId)}
|
|
|
- //sendData["first"] = map[string]interface{}{"value": first, "color": "#173177"}
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": keyWord1, "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": keyWord2, "color": "#173177"}
|
|
|
- sendMap["data"] = sendData
|
|
|
- WxSendTemplateMsg(sendUrl, sendMap, openIdList, strconv.Itoa(activityId), utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD)
|
|
|
+ redirectUrl := utils.WX_MSG_PATH_ACTIVITY_SPECIAL_DETAIL + strconv.Itoa(activityId)
|
|
|
+ sendInfo := new(SendWxTemplate)
|
|
|
+ sendInfo.Keyword1 = keyword1
|
|
|
+ sendInfo.Keyword2 = keyword2
|
|
|
+ sendInfo.TemplateId = utils.WxMsgTemplateIdArticleUserRemind
|
|
|
+ sendInfo.RedirectUrl = redirectUrl
|
|
|
+ sendInfo.RedirectTarget = 3
|
|
|
+ sendInfo.Resource = strconv.Itoa(activityId)
|
|
|
+ sendInfo.SendType = utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD
|
|
|
+ sendInfo.OpenIdArr = openIdArr
|
|
|
+ err = PublicSendTemplateMsg(sendInfo)
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// 发送用户阅读报告消息提醒
|
|
|
-func SendWxMsgWithArticleUserRemind(keyWord1, keyWord2 string, openIdList []*models.OpenIdList, articleId int) (err error) {
|
|
|
- var msg string
|
|
|
+func SendWxMsgWithArticleUserRemind(keyword1, keyword2 string, openIdList []*models.OpenIdList, articleId int) (err error) {
|
|
|
+ if len(openIdList) == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
defer func() {
|
|
|
if err != nil {
|
|
|
- go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
|
|
|
go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,文章ID:", articleId), 2)
|
|
|
- utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
|
|
|
}
|
|
|
}()
|
|
|
- accessToken, err := models.GetWxAccessTokenByXzs()
|
|
|
- if err != nil {
|
|
|
- msg = "GetWxAccessToken Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if accessToken == "" {
|
|
|
- msg = "accessToken is empty"
|
|
|
- return
|
|
|
+
|
|
|
+ openIdArr := make([]string, 0)
|
|
|
+ for _, v := range openIdList {
|
|
|
+ openIdArr = append(openIdArr, v.OpenId)
|
|
|
}
|
|
|
- //var first string
|
|
|
- //first = keyWord1
|
|
|
- //keyword1 := keyWord2
|
|
|
- remark := "点击查看报告详情"
|
|
|
- sendUrl := "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken
|
|
|
- templateId := utils.WxMsgTemplateIdArticleUserRemind
|
|
|
- sendMap := make(map[string]interface{})
|
|
|
- sendData := make(map[string]interface{})
|
|
|
- sendMap["template_id"] = templateId
|
|
|
- sendMap["miniprogram"] = map[string]interface{}{"appid": utils.WxAppId, "pagepath": utils.WX_MSG_PATH_ARTICLE_DETAIL + strconv.Itoa(articleId)}
|
|
|
- //sendData["first"] = map[string]interface{}{"value": first, "color": "#173177"}
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": keyWord1, "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": keyWord2, "color": "#173177"}
|
|
|
- sendData["remark"] = map[string]interface{}{"value": remark, "color": "#173177"}
|
|
|
- sendMap["data"] = sendData
|
|
|
- WxSendTemplateMsg(sendUrl, sendMap, openIdList, strconv.Itoa(articleId), utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD)
|
|
|
+ redirectUrl := utils.WX_MSG_PATH_ARTICLE_DETAIL + strconv.Itoa(articleId)
|
|
|
+ sendInfo := new(SendWxTemplate)
|
|
|
+ sendInfo.Keyword1 = keyword1
|
|
|
+ sendInfo.Keyword2 = keyword2
|
|
|
+
|
|
|
+ sendInfo.TemplateId = utils.WxMsgTemplateIdArticleUserRemind
|
|
|
+ sendInfo.RedirectUrl = redirectUrl
|
|
|
+ sendInfo.RedirectTarget = 3
|
|
|
+ sendInfo.Resource = strconv.Itoa(articleId)
|
|
|
+ sendInfo.SendType = utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD
|
|
|
+ sendInfo.OpenIdArr = openIdArr
|
|
|
+ err = PublicSendTemplateMsg(sendInfo)
|
|
|
return
|
|
|
}
|
|
|
|