|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- package svc
-
- import (
- "applet/app/admin/md"
- "applet/app/db"
- "applet/app/utils/cache"
- "fmt"
- "github.com/gin-gonic/gin"
- )
-
- // 单挑记录获取
- func SysCfgGet(c *gin.Context, key string) string {
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- return sysCfgDb.SysCfgGetWithDb(key)
- }
-
- func SysCfgDel(c *gin.Context, key string) bool {
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- err := sysCfgDb.SysCfgDel(key)
- if err != nil {
- return false
- }
- return true
- }
-
- // 多条记录获取
- func SysCfgFind(keys ...string) map[string]string {
- tmp := SysCfgFindComm(keys...)
- return tmp
- }
-
- // SysCfgFindComm get cfg by master id
- func SysCfgFindComm(keys ...string) map[string]string {
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- res := map[string]string{}
-
- cfgKey := fmt.Sprintf("%s:cfg_cache")
-
- err := cache.GetJson(cfgKey, &res)
- if err != nil || len(res) == 0 {
- cfgList, _ := sysCfgDb.SysCfgGetAll()
- if cfgList == nil {
- return nil
- }
- for _, v := range *cfgList {
- res[v.Key] = v.Val
- }
- cache.SetJson(cfgKey, res, 1800)
- }
- if len(keys) == 0 {
- return res
- }
- tmp := map[string]string{}
- for _, v := range keys {
- if val, ok := res[v]; ok {
- tmp[v] = val
- } else {
- tmp[v] = ""
- }
- }
- return tmp
- }
-
- // 清理系统配置信息
- func SysCfgCleanCache(c *gin.Context) {
- var tmp = []string{"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}
- for _, v := range tmp {
- cacheKey := fmt.Sprintf(md.AppCfgCacheKey, v)
- cache.Del(cacheKey)
- }
- }
-
- // 写入系统设置
- func SysCfgSet(c *gin.Context, key, val, memo string) bool {
- sysCfgDb := db.SysCfgDb{}
- sysCfgDb.Set()
- cfg, err := sysCfgDb.SysCfgGetOne(key)
- if err != nil || cfg == nil {
- return sysCfgDb.SysCfgInsert(key, val, memo)
- }
- if memo != "" && cfg.Memo != memo {
- cfg.Memo = memo
- }
- SysCfgCleanCache(c)
- return sysCfgDb.SysCfgUpdate(key, val)
- }
|