|
@@ -11,6 +11,7 @@ import (
|
|
|
"github.com/rdlucklib/rdluck_tools/paging"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
type MessageController struct {
|
|
@@ -352,17 +353,40 @@ func (this *MessageController) SendTemplateMsg() {
|
|
|
br.ErrMsg = "获取报告失败"
|
|
|
return
|
|
|
}
|
|
|
- err = report.UpdateSendStatus()
|
|
|
+
|
|
|
+ switch report.Source {
|
|
|
+ case "ETA":
|
|
|
+ var classifyId int
|
|
|
+ var ids []int
|
|
|
+ var names []string
|
|
|
+ classifyId, err = models.GetETAReportIdByClassifyId(report.OrgId)
|
|
|
+ ids, err = models.GetByPermissionIdsByClassifyId(classifyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "发送模版消息失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("获取eta品种信息失败,Err:%v", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ names, err = models.GetPermissionNames(ids)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "发送模版消息失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("获取eta品种信息失败,Err:%v", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ sendData["keyword1"] = map[string]interface{}{"value": strings.Join(names, ","), "color": "#173177"}
|
|
|
+ case "HT":
|
|
|
+ sendData["keyword1"] = map[string]interface{}{"value": "ht", "color": "#173177"}
|
|
|
+ default:
|
|
|
+ sendData["keyword1"] = map[string]interface{}{"value": "", "color": "#173177"}
|
|
|
+ }
|
|
|
+ sendData["keyword2"] = map[string]interface{}{"value": report.Title, "color": "#173177"}
|
|
|
+ sendData["keyword3"] = map[string]interface{}{"value": report.PublishedTime, "color": "#173177"}
|
|
|
+ sendData["keyword4"] = map[string]interface{}{"value": report.Abstract, "color": "#173177"}
|
|
|
+ err = report.UpdateSendStatus(models.SEND)
|
|
|
if err != nil {
|
|
|
br.Msg = "发送模版消息失败"
|
|
|
br.ErrMsg = fmt.Sprintf("更新发送状态失败,Err:%v", err)
|
|
|
return
|
|
|
}
|
|
|
- models.
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": report., "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": report.Title, "color": "#173177"}
|
|
|
- sendData["keyword3"] = map[string]interface{}{"value": report.PublishedTime, "color": "#173177"}
|
|
|
- sendData["keyword4"] = map[string]interface{}{"value": report.Abstract, "color": "#173177"}
|
|
|
}
|
|
|
if req.DataType == Audio {
|
|
|
var media *models.Media
|
|
@@ -372,15 +396,16 @@ func (this *MessageController) SendTemplateMsg() {
|
|
|
br.ErrMsg = "获取音频失败"
|
|
|
return
|
|
|
}
|
|
|
- err = media.UpdateSendStatus()
|
|
|
+
|
|
|
+ sendData["keyword1"] = map[string]interface{}{"value": "线上音频", "color": "#173177"}
|
|
|
+ sendData["keyword2"] = map[string]interface{}{"value": media.MediaName, "color": "#173177"}
|
|
|
+ sendData["keyword3"] = map[string]interface{}{"value": media.CreatedTime.Format(time.DateTime), "color": "#173177"}
|
|
|
+ err = media.UpdateSendStatus(models.SEND)
|
|
|
if err != nil {
|
|
|
br.Msg = "发送模版消息失败"
|
|
|
br.ErrMsg = fmt.Sprintf("更新发送状态失败,Err:%v", err)
|
|
|
return
|
|
|
}
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": "线上音频", "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": media.MediaName, "color": "#173177"}
|
|
|
- sendData["keyword3"] = map[string]interface{}{"value": media.CreatedTime, "color": "#173177"}
|
|
|
}
|
|
|
if req.DataType == Video {
|
|
|
var media *models.Media
|
|
@@ -390,15 +415,16 @@ func (this *MessageController) SendTemplateMsg() {
|
|
|
br.ErrMsg = "获取音频失败"
|
|
|
return
|
|
|
}
|
|
|
- err = media.UpdateSendStatus()
|
|
|
+
|
|
|
+ sendData["keyword1"] = map[string]interface{}{"value": "线上视频", "color": "#173177"}
|
|
|
+ sendData["keyword2"] = map[string]interface{}{"value": media.MediaName, "color": "#173177"}
|
|
|
+ sendData["keyword3"] = map[string]interface{}{"value": media.CreatedTime.Format(time.DateTime), "color": "#173177"}
|
|
|
+ err = media.UpdateSendStatus(models.SEND)
|
|
|
if err != nil {
|
|
|
br.Msg = "发送模版消息失败"
|
|
|
br.ErrMsg = fmt.Sprintf("更新发送状态失败,Err:%v", err)
|
|
|
return
|
|
|
}
|
|
|
- sendData["keyword1"] = map[string]interface{}{"value": "线上视频", "color": "#173177"}
|
|
|
- sendData["keyword2"] = map[string]interface{}{"value": media.MediaName, "color": "#173177"}
|
|
|
- sendData["keyword3"] = map[string]interface{}{"value": media.CreatedTime, "color": "#173177"}
|
|
|
}
|
|
|
users, err := models.GetTemplateUserList()
|
|
|
if err != nil {
|
|
@@ -414,14 +440,38 @@ func (this *MessageController) SendTemplateMsg() {
|
|
|
}
|
|
|
openIds = append(openIds, openId)
|
|
|
}
|
|
|
- services.SendMultiTemplateMsg(sendData, openIds, req.DataId, req.DataType)
|
|
|
+ err = services.SendMultiTemplateMsg(sendData, openIds, req.DataId, req.DataType)
|
|
|
if err != nil {
|
|
|
- br.Msg = "获取视频列表失败"
|
|
|
- br.ErrMsg = "获取视频列表统计失败,Err:" + err.Error()
|
|
|
+ if req.DataType == Report {
|
|
|
+ var report *models.Report
|
|
|
+ report, err = models.GetReportById(req.DataId)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ _ = report.UpdateSendStatus(models.UNSEND)
|
|
|
+ }
|
|
|
+ if req.DataType == Audio {
|
|
|
+ var media *models.Media
|
|
|
+ media, err = models.GetMediaById(models.Audio, req.DataId)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ _ = media.UpdateSendStatus(models.UNSEND)
|
|
|
+ }
|
|
|
+ if req.DataType == Video {
|
|
|
+ var media *models.Media
|
|
|
+ media, err = models.GetMediaById(models.Video, req.DataId)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ _ = media.UpdateSendStatus(models.SEND)
|
|
|
+ }
|
|
|
+ br.Msg = "发送模板消息失败"
|
|
|
+ br.ErrMsg = "发送模板消息失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
- br.Data = resp
|
|
|
+ br.Data = nil
|
|
|
br.Msg = "发送成功"
|
|
|
}
|