增加bark配置
This commit is contained in:
@@ -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 == "" {
|
||||
|
||||
Reference in New Issue
Block a user