package controller import ( "SciencesServer/app/api/admin/model" model2 "SciencesServer/app/common/model" "SciencesServer/app/session" ) type Config struct{ *session.Enterprise } type ConfigHandle func(session *session.Enterprise) *Config type ( ConfigInfo struct { Kind int `json:"kind"` Name string `json:"name"` Key string `json:"key"` Value string `json:"value"` } ) func (c *Config) Instance(kind int) ([]*ConfigInfo, error) { mSysConfig := model.NewSysConfig() out := make([]*ConfigInfo, 0) if err := model2.ScanFields(mSysConfig.SysConfig, &out, []string{"kind", "name", "`key`", "`value`"}, &model2.ModelWhereOrder{Where: model2.NewWhere("kind", kind)}); err != nil { return nil, err } return out, nil } func NewConfig() ConfigHandle { return func(session *session.Enterprise) *Config { return &Config{Enterprise: session} } }