#3692 积分微信通知:修改模板

Merged
chenyifan01 merged 1 commits from point-optimize-v1 into V20230215 1 year ago
  1. +8
    -3
      modules/auth/wechat/point.go
  2. +1
    -0
      modules/auth/wechat/template.go
  3. +1
    -1
      modules/notification/base/notifier.go
  4. +1
    -1
      modules/notification/base/null.go
  5. +2
    -2
      modules/notification/notification.go
  6. +2
    -2
      modules/notification/wechat/wechat.go
  7. +4
    -2
      modules/setting/setting.go
  8. +1
    -1
      services/reward/wechat.go

+ 8
- 3
modules/auth/wechat/point.go View File

@@ -12,11 +12,16 @@ type CloudbrainComingToStopMsg struct {
}

func (CloudbrainComingToStopMsg) Data(ctx *TemplateContext) *DefaultWechatTemplate {
var balance int64
if ctx.PointAccount != nil {
balance = ctx.PointAccount.Balance
}
return &DefaultWechatTemplate{
First: TemplateValue{Value: setting.CloudbrainComingStopTitle},
Keyword1: TemplateValue{Value: ctx.Cloudbrain.DisplayJobName},
Keyword2: TemplateValue{Value: getJobTypeDisplayName(ctx.Cloudbrain.JobType)},
Keyword3: TemplateValue{Value: time.Unix(int64(ctx.EstimatedEndTime), 0).Format("2006-01-02 15:04:05")},
Keyword1: TemplateValue{Value: ctx.Cloudbrain.DisplayJobName + "(任务名称)"},
Keyword2: TemplateValue{Value: fmt.Sprintf("%d积分", balance)},
Keyword3: TemplateValue{Value: setting.CloudbrainComingStopChargeLink},
Keyword4: TemplateValue{Value: time.Unix(int64(ctx.EstimatedEndTime), 0).Format("2006-01-02 15:04:05") + "(任务即将停止时间)"},
Remark: TemplateValue{Value: setting.CloudbrainComingStopRemark},
}
}


+ 1
- 0
modules/auth/wechat/template.go View File

@@ -19,6 +19,7 @@ type Template interface {
type TemplateContext struct {
Cloudbrain *models.Cloudbrain
EstimatedEndTime timeutil.TimeStamp
PointAccount *models.PointAccount
}

func SendTemplateMsg(template Template, ctx *TemplateContext, userId int64) error {


+ 1
- 1
modules/notification/base/notifier.go View File

@@ -65,5 +65,5 @@ type Notifier interface {
NotifyChangeUserAvatar(user *models.User, form auth.AvatarForm)

NotifyChangeCloudbrainStatus(cloudbrain *models.Cloudbrain, oldStatus string)
NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, endTime timeutil.TimeStamp)
NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, endTime timeutil.TimeStamp, account *models.PointAccount)
}

+ 1
- 1
modules/notification/base/null.go View File

@@ -182,6 +182,6 @@ func (*NullNotifier) NotifyChangeCloudbrainStatus(cloudbrain *models.Cloudbrain,

}

func (*NullNotifier) NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, endTime timeutil.TimeStamp) {
func (*NullNotifier) NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, endTime timeutil.TimeStamp, account *models.PointAccount) {

}

+ 2
- 2
modules/notification/notification.go View File

@@ -319,8 +319,8 @@ func NotifyChangeCloudbrainStatus(cloudbrain *models.Cloudbrain, oldStatus strin
}

// NotifyCloudbrainTaskComingToFinished
func NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, estimatedEndTime timeutil.TimeStamp) {
func NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, estimatedEndTime timeutil.TimeStamp, account *models.PointAccount) {
for _, notifier := range notifiers {
notifier.NotifyCloudbrainTaskComingToFinished(cloudbrain, estimatedEndTime)
notifier.NotifyCloudbrainTaskComingToFinished(cloudbrain, estimatedEndTime, account)
}
}

+ 2
- 2
modules/notification/wechat/wechat.go View File

@@ -36,8 +36,8 @@ func (*wechatNotifier) NotifyChangeCloudbrainStatus(cloudbrain *models.Cloudbrai
go wechat.SendTemplateMsg(template, &wechat.TemplateContext{Cloudbrain: cloudbrain}, cloudbrain.UserID)
}

func (*wechatNotifier) NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, estimatedEndTime timeutil.TimeStamp) {
func (*wechatNotifier) NotifyCloudbrainTaskComingToFinished(cloudbrain *models.Cloudbrain, endTime timeutil.TimeStamp, account *models.PointAccount) {
log.Info("NotifyCloudbrainTaskComingToFinished cloudbrain.id=%d", cloudbrain.ID)
template := wechat.ComingStopMsg
go wechat.SendTemplateMsg(template, &wechat.TemplateContext{Cloudbrain: cloudbrain, EstimatedEndTime: estimatedEndTime}, cloudbrain.UserID)
go wechat.SendTemplateMsg(template, &wechat.TemplateContext{Cloudbrain: cloudbrain, EstimatedEndTime: endTime, PointAccount: account}, cloudbrain.UserID)
}

+ 4
- 2
modules/setting/setting.go View File

@@ -697,6 +697,7 @@ var (
CloudbrainStoppedRemark string
CloudbrainComingStopTemplateId string
CloudbrainComingStopTitle string
CloudbrainComingStopChargeLink string
CloudbrainComingStopRemark string
CloudbrainComingStopSendFlag bool

@@ -1642,8 +1643,9 @@ func NewContext() {
CloudbrainStoppedTitle = sec.Key("CLOUDBRAIN_STOPPED_TITLE").MustString("您好,您申请的算力资源已结束使用,任务已完成运行,状态为%s,请您关注运行结果")
CloudbrainStoppedRemark = sec.Key("CLOUDBRAIN_STOPPED_REMARK").MustString("感谢您的耐心等待。")
CloudbrainComingStopTemplateId = sec.Key("CLOUDBRAIN_COMING_STOP_TEMPLATE_ID").MustString("")
CloudbrainComingStopTitle = sec.Key("CLOUDBRAIN_COMING_STOP_TITLE").MustString("余额不足任务即将停止")
CloudbrainComingStopRemark = sec.Key("CLOUDBRAIN_COMING_STOP_REMARK").MustString("为了不影响您使用,请尽快获取算力积分")
CloudbrainComingStopTitle = sec.Key("CLOUDBRAIN_COMING_STOP_TITLE").MustString("因算力积分余额不足,您正在运行的任务即将停止。")
CloudbrainComingStopChargeLink = sec.Key("CLOUDBRAIN_COMING_STOP_CHARGE_LINK").MustString("请参考“个人中心 > 算力积分”页面的“积分获取说明”获取积分。")
CloudbrainComingStopRemark = sec.Key("CLOUDBRAIN_COMING_STOP_REMARK").MustString("为了不影响您使用,请您尽快获取算力积分。")
CloudbrainComingStopSendFlag = sec.Key("CLOUDBRAIN_COMING_STOP_SEND_FLAG").MustBool(true)

sec = Cfg.Section("repo-square")


+ 1
- 1
services/reward/wechat.go View File

@@ -40,7 +40,7 @@ func TryToNotifyInsufficientBalance(cloudbrain *models.Cloudbrain, unitPrice int
return
}
log.Info("start to notify CloudbrainTaskComingToFinished.id=%d", cloudbrain.ID)
notification.NotifyCloudbrainTaskComingToFinished(cloudbrain, nextExecuteTime)
notification.NotifyCloudbrainTaskComingToFinished(cloudbrain, nextExecuteTime, account)
}

func isMsgNotSendBefore(account *models.PointAccount, msgType string, taskId int64) bool {


Loading…
Cancel
Save