初始化项目文件
This commit is contained in:
106
api_iris/service/admin/sysSettings.go
Normal file
106
api_iris/service/admin/sysSettings.go
Normal file
@ -0,0 +1,106 @@
|
||||
package admin
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/kataras/iris/v12"
|
||||
"github.com/sirupsen/logrus"
|
||||
"main/database"
|
||||
"main/model"
|
||||
"main/utils"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func getSysSettings(ctx iris.Context) {
|
||||
var res []resSysSettings
|
||||
var resSysSettingsData []model.SysSettings
|
||||
var currentList []string
|
||||
name := ctx.Params().GetString("name")
|
||||
for _, sysSetting := range utils.SysSettings {
|
||||
if sysSetting.DType == "option" {
|
||||
sysSetting.Name = strings.Split(sysSetting.Name, ":")[0]
|
||||
}
|
||||
if (name != "" && sysSetting.Name != name) || utils.CheckListItem(currentList, sysSetting.Name) {
|
||||
continue
|
||||
} else {
|
||||
resSysSettingsData = nil
|
||||
for _, v := range utils.SysSettings {
|
||||
if strings.Split(v.Name, ":")[0] == sysSetting.Name {
|
||||
resSysSettingsData = append(resSysSettingsData, v)
|
||||
}
|
||||
}
|
||||
currentList = append(currentList, sysSetting.Name)
|
||||
res = append(res, resSysSettings{Name: sysSetting.Name, Data: resSysSettingsData})
|
||||
}
|
||||
}
|
||||
err := ctx.JSON(utils.FormatRes(iris.StatusOK, "", res))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func addSysSettings(ctx iris.Context) {
|
||||
var params model.SysSettings
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if !checkExist(params) {
|
||||
if err1 := db.Create(¶ms).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
utils.UpdateSysSettings()
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func delSettings(ctx iris.Context) {
|
||||
var params model.SysSettings
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Delete(¶ms).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
utils.UpdateSysSettings()
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func updateSettings(ctx iris.Context) {
|
||||
var params model.SysSettings
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
if !checkExist(params) {
|
||||
if utils.ErrHandle(ctx, errors.New("配置信息不存在")) {
|
||||
return
|
||||
}
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Save(¶ms).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
utils.UpdateSysSettings()
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func checkExist(setting model.SysSettings) bool {
|
||||
for _, sysSetting := range utils.SysSettings {
|
||||
if setting.Name == sysSetting.Name && setting.Value == sysSetting.Value {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
Reference in New Issue
Block a user