增加bark配置

This commit is contained in:
2026-06-17 23:49:19 +08:00
parent 22e0e75c35
commit 6ee1f26124
19 changed files with 784 additions and 260 deletions
+44 -65
View File
@@ -55,24 +55,8 @@ func (c *PlatformSMSController) GetSmsInfo() {
return
}
var row models.SystemSMS
// 优先默认通道,其次 custom
err := models.Orm.QueryTable(new(models.SystemSMS)).
Filter("is_default", 1).
Filter("status", 1).
OrderBy("-weight", "-id").
Limit(1).
One(&row)
if err != nil {
_ = models.Orm.QueryTable(new(models.SystemSMS)).
Filter("config_code", "custom").
OrderBy("-id").
Limit(1).
One(&row)
}
backendURL := strings.TrimSpace(row.ApiURL)
apiKey := strings.TrimSpace(row.ApiKey)
backendURL := models.GetPlatformSettingValue("sms_custom_url", "")
apiKey := models.GetPlatformSettingValue("sms_custom_key", "")
data := []map[string]interface{}{{
"backend_url": backendURL,
@@ -93,7 +77,7 @@ type smsEditPayload struct {
}
// EditSmsInfo POST /platform/sms/editinfo
// 将旧前端的 backendUrl/apiKey 落到 yz_system_sms 的 api_url/api_key(写入 config_code=custom
// 将旧前端的 backendUrl/apiKey 落到 yz_platform_normal_setting 表中
func (c *PlatformSMSController) EditSmsInfo() {
if _, err := c.platformClaims(); err != nil {
c.jsonErr(401, 401, err.Error())
@@ -128,44 +112,46 @@ func (c *PlatformSMSController) EditSmsInfo() {
return
}
// 确保只有一个默认:先清空默认,再 upsert custom 为默认
_, _ = models.Orm.QueryTable(new(models.SystemSMS)).Update(map[string]interface{}{"is_default": 0})
settings := []struct {
code string
name string
value string
remark string
}{
{"sms_custom_url", "自定义短信网关地址", backendURL, ""},
{"sms_custom_key", "自定义短信API KEY", apiKey, ""},
}
var existed models.SystemSMS
e := models.Orm.QueryTable(new(models.SystemSMS)).Filter("config_code", "custom").Limit(1).One(&existed)
if e == nil && existed.ID > 0 {
_, err = models.Orm.QueryTable(new(models.SystemSMS)).Filter("id", existed.ID).Update(map[string]interface{}{
"config_name": "自定义网关",
"channel_type": 2,
"api_url": backendURL,
"api_key": apiKey,
"weight": 10,
"is_default": 1,
"status": 1,
})
if err != nil {
c.jsonErr(500, 500, "更新失败: "+err.Error())
return
}
} else {
row := &models.SystemSMS{
ConfigCode: "custom",
ConfigName: "自定义网关",
ChannelType: 2,
ApiURL: backendURL,
ApiKey: apiKey,
ApiSecret: "",
SignName: "",
TemplateID: "",
TestPhone: "",
Weight: 10,
IsDefault: 1,
Status: 1,
Remark: "",
}
if _, err := models.Orm.Insert(row); err != nil {
c.jsonErr(500, 500, "更新失败: "+err.Error())
return
for _, item := range settings {
var setting models.PlatformNormalSetting
err := models.Orm.QueryTable(new(models.PlatformNormalSetting)).
Filter("code", item.code).
Filter("delete_time__isnull", true).
One(&setting)
if err == nil {
setting.Value = item.value
setting.Name = item.name
setting.Remark = item.remark
now := time.Now()
setting.UpdateTime = &now
_, err = models.Orm.Update(&setting, "Value", "Name", "Remark", "UpdateTime")
if err != nil {
c.jsonErr(500, 500, "保存失败: "+err.Error())
return
}
} else {
newSetting := models.PlatformNormalSetting{
Name: item.name,
Code: item.code,
Value: item.value,
Remark: item.remark,
CreateTime: time.Now(),
}
_, err = models.Orm.Insert(&newSetting)
if err != nil {
c.jsonErr(500, 500, "保存失败: "+err.Error())
return
}
}
}
@@ -232,18 +218,11 @@ func (c *PlatformSMSController) SendTestSms() {
// 兜底:body 未带时从默认配置取
if backendURL == "" || apiKey == "" {
var row models.SystemSMS
_ = models.Orm.QueryTable(new(models.SystemSMS)).
Filter("is_default", 1).
Filter("status", 1).
OrderBy("-weight", "-id").
Limit(1).
One(&row)
if backendURL == "" {
backendURL = strings.TrimSpace(row.ApiURL)
backendURL = models.GetPlatformSettingValue("sms_custom_url", "")
}
if apiKey == "" {
apiKey = strings.TrimSpace(row.ApiKey)
apiKey = models.GetPlatformSettingValue("sms_custom_key", "")
}
}
if backendURL == "" {