123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package controllers
- import (
- "encoding/json"
- "hongze/hongze_robot/cache"
- "hongze/hongze_robot/models"
- "hongze/hongze_robot/services"
- "hongze/hongze_robot/utils"
- )
- // 监控信息管理
- type AlarmMsgController struct {
- BaseCommonController
- }
- // @Title 监控信息发送接口
- // @Description 监控信息发送接口
- // @Param request body company.CompanyApplyApproveReq true "type json string"
- // @Success Ret=200 转发成功
- // @router /send [post]
- func (this *AlarmMsgController) SmsSend() {
- br := new(models.BaseResponse).Init()
- var err error
- defer func() {
- if err != nil {
- utils.FileLog.Info("send msg err: " + err.Error())
- }
- this.Data["json"] = br
- this.ServeJSON()
- }()
- reqBody := this.Ctx.Input.RequestBody
- utils.FileLog.Info(string(reqBody))
- var req *models.AlarmMsgReq
- err = json.Unmarshal(reqBody, &req)
- if err != nil {
- br.Msg = "参数解析异常!"
- br.ErrMsg = "参数解析失败,Err:" + err.Error()
- return
- }
- if req.MsgBody == "" {
- br.Ret = 200
- br.Success = true
- br.Msg = "发送失败,消息内容为空"
- return
- }
- //钉钉
- {
- if utils.RunMode == "release" {
- go services.SendAlarmMsgByDingTalkRelease(req.ProjectName, req.RunMode, req.MsgBody, req.Level)
- } else {
- go services.SendAlarmMsgByDingTalkDebug(req.ProjectName, req.RunMode, req.MsgBody, req.Level)
- }
- }
- //邮箱
- {
- if utils.RunMode == "release" {
- emailToUser := req.Email
- if emailToUser == `` {
- configItem, _ := cache.GetSmsConfigByCache("email")
- if configItem != nil {
- emailToUser = configItem.ConfigValue
- }
- }
- if emailToUser != `` {
- go services.SendAlarmMsgByEmail(req.ProjectName, req.RunMode, req.MsgBody, emailToUser, req.Level)
- }
- }
- }
- br.Ret = 200
- br.Success = true
- br.Msg = "发送成功"
- }
|