|
@@ -9,6 +9,7 @@ import (
|
|
|
"fmt"
|
|
|
"html"
|
|
|
"strconv"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
type WeChatController struct {
|
|
@@ -88,13 +89,15 @@ func (this *WeChatController) SendTemplateMsg() {
|
|
|
br.ErrMsg = "获取用户列表失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ userUnionMap := make(map[int]string)
|
|
|
+ for _, v := range userList {
|
|
|
+ userUnionMap[v.UserId] = v.UnionId
|
|
|
+ }
|
|
|
var openIds []*services.OpenIdList
|
|
|
if IsPublic {
|
|
|
var unionIds []string
|
|
|
- userMap := make(map[int]*models.User)
|
|
|
for _, v := range userList {
|
|
|
unionIds = append(unionIds, v.UnionId)
|
|
|
- userMap[v.UserId] = v
|
|
|
}
|
|
|
// 给所有人,发送模板消息
|
|
|
records, err := models.GetUserRecordByUnionids(unionIds)
|
|
@@ -124,11 +127,12 @@ func (this *WeChatController) SendTemplateMsg() {
|
|
|
sendUserIds = append(sendUserIds, permissionMap[v]...)
|
|
|
}
|
|
|
}
|
|
|
- unionIds, err := models.GetUserUnionIdListByIds(sendUserIds)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取用户信息失败"
|
|
|
- br.ErrMsg = "获取用户unionId失败,Err:" + err.Error()
|
|
|
- return
|
|
|
+ sendUserIds = utils.Unique(sendUserIds)
|
|
|
+ var unionIds []string
|
|
|
+ for _, v := range sendUserIds {
|
|
|
+ if id, ok := userUnionMap[v]; ok {
|
|
|
+ unionIds = append(unionIds, id)
|
|
|
+ }
|
|
|
}
|
|
|
records, err := models.GetUserRecordByUnionids(unionIds)
|
|
|
if err != nil {
|
|
@@ -145,11 +149,15 @@ func (this *WeChatController) SendTemplateMsg() {
|
|
|
}
|
|
|
sendMap := make(map[string]interface{})
|
|
|
sendMap["template_id"] = utils.TEMPLATE_ID_BY_PRODUCT
|
|
|
- sendMap["first"] = fmt.Sprintf("Hi,最新一期%s已上线,欢迎查看", report.ClassifyNameFirst)
|
|
|
- sendMap["keyword1"] = map[string]interface{}{"value": fmt.Sprintf("弘则%s", report.ClassifyNameSecond), "color": "#173177"}
|
|
|
- sendMap["keyword2"] = map[string]interface{}{"value": report.ContentSub, "color": "#173177"}
|
|
|
- sendMap["keyword3"] = map[string]interface{}{"value": report.PublishTime, "color": "#173177"}
|
|
|
- sendMap["keyword4"] = map[string]interface{}{"value": report.Abstract, "color": "#173177"}
|
|
|
+ // sendMap["first"] = fmt.Sprintf("Hi,最新一期%s已上线,欢迎查看", report.ClassifyNameFirst)
|
|
|
+ // sendMap["keyword1"] = map[string]interface{}{"value": fmt.Sprintf("弘则%s", report.ClassifyNameSecond), "color": "#173177"}
|
|
|
+ // sendMap["keyword2"] = map[string]interface{}{"value": report.ContentSub, "color": "#173177"}
|
|
|
+ sendMap["first"] = "测试first"
|
|
|
+ sendMap["keyword1"] = "测试k1"
|
|
|
+ sendMap["keyword2"] = "测试k2"
|
|
|
+ sendMap["remark"] = time.Now().Format("2006-01-02")
|
|
|
+ // sendMap["keyword3"] = map[string]interface{}{"value": report.PublishTime, "color": "#173177"}
|
|
|
+ // sendMap["keyword4"] = map[string]interface{}{"value": report.Abstract, "color": "#173177"}
|
|
|
var WxAppId = `wxb059c872d79b9967`
|
|
|
// var WxAppSecret = `1737c73e9f69a21de1a345b8f0800258`
|
|
|
var wxAppPath string
|
|
@@ -162,6 +170,7 @@ func (this *WeChatController) SendTemplateMsg() {
|
|
|
"appid": WxAppId,
|
|
|
"pagepath": wxAppPath,
|
|
|
}
|
|
|
+ alarm_msg.SendAlarmMsg(fmt.Sprintf("发送模板消息,报告id:%d", report.Id), 1)
|
|
|
err = services.SendMultiTemplateMsg(sendMap, openIds, 1)
|
|
|
if err != nil {
|
|
|
br.Msg = "发送失败"
|