feat: mail config and mail send

This commit is contained in:
zchengo
2023-01-24 20:03:35 +08:00
parent a9e33f2bcc
commit 35886fde4f
17 changed files with 731 additions and 8 deletions
+11
View File
@@ -5,3 +5,14 @@ type Page struct {
PageNum int `form:"pageNum" json:"pageNum"`
PageSize int `form:"pageSize" json:"pageSize"`
}
// 发送邮件参数模型
type MailParam struct {
Smtp string
Port int
AuthCode string
Sender string
Subject string
Content string
Receiver string
}
+39
View File
@@ -0,0 +1,39 @@
package models
type MailConfig struct {
Id int64 `gorm:"primaryKey"`
Stmp string `gorm:"stmp"`
Port int `gorm:"port"`
AuthCode string `gorm:"auth_code"`
Email string `gorm:"email"`
Status int `gorm:"status"`
Creator int64 `gorm:"creator"`
Created int64 `gorm:"created"`
Updated int64 `gorm:"updated"`
}
type MailConfigSaveParam struct {
Id int64 `json:"id" binding:"omitempty,gt=0"`
Stmp string `json:"stmp" binding:"omitempty,ip|hostname"`
Port int `json:"port" binding:"omitempty,gt=0"`
AuthCode string `json:"authCode" binding:"omitempty,gt=0"`
Email string `json:"email" binding:"omitempty,email"`
Status int `json:"status" binding:"omitempty,oneof=1 2"`
Creator int64 `json:"creator" binding:"omitempty"`
}
type MailConfigStatusParam struct {
Id int64 `json:"id" binding:"required,gt=0"`
Status int `json:"status" binding:"required,oneof=1 2"`
Creator int64 `json:"creator" binding:"omitempty"`
}
type MailConfigInfo struct {
Id int64 `json:"id"`
Stmp string `json:"stmp"`
Port int `json:"port"`
AuthCode string `json:"authCode"`
Email string `json:"email"`
Status int `json:"status"`
Usability int `json:"usability"`
}
+7
View File
@@ -45,6 +45,13 @@ type CustomerUpdateParam struct {
Status int `json:"status" binding:"-"`
}
type CustomerSendMailParam struct {
Uid int64 `json:"uid" binding:"-"`
Receiver string `json:"receiver" binding:"required,email"`
Subject string `json:"subject" binding:"omitempty,gt=0"`
Content string `json:"content" binding:"required,gt=0"`
}
type CustomerDeleteParam struct {
Ids []int64 `json:"ids" binding:"required"`
}