feat:完善项目
This commit is contained in:
@ -18,6 +18,11 @@ type Config struct{}
|
||||
|
||||
type ConfigHandle func() *Config
|
||||
|
||||
type ConfigInfo struct {
|
||||
ID string `json:"id"`
|
||||
*model2.SysConfig
|
||||
}
|
||||
|
||||
func (c *Config) Config(kind, page, pageSize int) (*controller.ReturnPages, error) {
|
||||
mSysConfig := model.NewSysConfig()
|
||||
|
||||
@ -34,7 +39,15 @@ func (c *Config) Config(kind, page, pageSize int) (*controller.ReturnPages, erro
|
||||
if err := model2.Pages(mSysConfig.SysConfig, &out, page, pageSize, &count, where...); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &controller.ReturnPages{Data: out, Count: count}, nil
|
||||
list := make([]*ConfigInfo, 0)
|
||||
|
||||
for _, v := range out {
|
||||
list = append(list, &ConfigInfo{
|
||||
ID: v.GetEncodeID(),
|
||||
SysConfig: v,
|
||||
})
|
||||
}
|
||||
return &controller.ReturnPages{Data: list, Count: count}, nil
|
||||
}
|
||||
|
||||
func (c *Config) Add(kind int, name, key string, value interface{}) error {
|
||||
@ -42,7 +55,7 @@ func (c *Config) Add(kind int, name, key string, value interface{}) error {
|
||||
|
||||
var count int64
|
||||
|
||||
err := model2.Count(mSysConfig.SysConfig, &count, model2.NewWhere("key", key))
|
||||
err := model2.Count(mSysConfig.SysConfig, &count, model2.NewWhere("`key`", key))
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
@ -62,25 +75,26 @@ func (c *Config) Add(kind int, name, key string, value interface{}) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Config) Form(params map[string]interface{}) error {
|
||||
if len(params) <= 0 {
|
||||
func (c *Config) Form(id uint64, name string, value interface{}) error {
|
||||
mSysConfig := model.NewSysConfig()
|
||||
mSysConfig.ID = id
|
||||
|
||||
isExist, err := model2.FirstField(mSysConfig.SysConfig, []string{"id", "`key`"})
|
||||
|
||||
if err != nil {
|
||||
return nil
|
||||
} else if !isExist {
|
||||
return errors.New("操作错误,数据不存在")
|
||||
}
|
||||
return orm.GetDB().Transaction(func(tx *gorm.DB) error {
|
||||
mSysConfig := model.NewSysConfig()
|
||||
now := time.Now()
|
||||
|
||||
for k, v := range params {
|
||||
if _, has := config.SystemConfig[k]; !has {
|
||||
return errors.New("UnKnown Config Key :" + k)
|
||||
}
|
||||
if err := model2.UpdatesWhere(mSysConfig.SysConfig, map[string]interface{}{
|
||||
"value": v, "updated_at": now,
|
||||
}, []*model2.ModelWhere{model2.NewWhere("key", k)}, tx); err != nil {
|
||||
return err
|
||||
}
|
||||
config.SystemConfig[k] = v
|
||||
if err := model2.Updates(mSysConfig.SysConfig, map[string]interface{}{
|
||||
"`name`": name, "`value`": value, "updated_at": now,
|
||||
}, tx); err != nil {
|
||||
return err
|
||||
}
|
||||
config.SystemConfig[mSysConfig.Key] = value
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user