123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- package admin
- import (
- "github.com/druidcaesa/gotool"
- "strconv"
- "strings"
- "time"
- "ulink-admin/frame"
- "ulink-admin/modules/system/models/model"
- "ulink-admin/modules/system/models/req"
- "ulink-admin/modules/system/service"
- "ulink-admin/pkg/cache"
- "ulink-admin/pkg/excels"
- "ulink-admin/pkg/file"
- "ulink-admin/pkg/jwt/admin"
- "ulink-admin/pkg/page"
- )
- type ConfigApi struct {
- ConfigService *service.ConfigService `inject:""`
- }
- // GetConfigKey 根据参数键名查询参数值
- func (a ConfigApi) GetConfigKey(c *frame.Context) {
- param := c.Param("configKey")
- if !gotool.StrUtils.HasEmpty(param) {
- key := a.ConfigService.GetConfigKey(param)
- c.Ok(key.ConfigValue)
- } else {
- c.Error("参数不合法")
- }
- }
- // List 查询设置列表
- func (a ConfigApi) List(c *frame.Context) {
- query := &req.ConfigQuery{}
- c.ValidteError(c.ShouldBind(query), query)
- find, i := a.ConfigService.Find(query)
- c.Ok(page.Page{
- List: find,
- Total: i,
- Size: query.PageSize,
- })
- }
- // Add 添加数据
- func (a ConfigApi) Add(c *frame.Context) {
- config := &model.SysConfig{}
- c.ValidteError(c.ShouldBind(config), config)
- config.CreateBy = admin.GetUserInfo(c).UserName
- a.ConfigService.Add(config)
- }
- // Get 查询数据
- func (a ConfigApi) Get(c *frame.Context) {
- param := c.Param("id")
- id, _ := strconv.ParseInt(param, 10, 64)
- c.Ok(a.ConfigService.GetInfo(id))
- }
- // Edit 修改数据
- func (a ConfigApi) Edit(c *frame.Context) {
- config := &model.SysConfig{}
- c.ValidteError(c.ShouldBind(config), config)
- config.UpdateBy = admin.GetUserInfo(c).UserName
- config.UpdateTime = time.Now()
- a.ConfigService.Update(config)
- }
- // Delete 删除数据
- func (a ConfigApi) Delete(c *frame.Context) {
- ids := strings.Split(c.Param("ids"), ",")
- list := make([]int64, 0)
- for _, id := range ids {
- parseInt, _ := strconv.ParseInt(id, 10, 64)
- list = append(list, parseInt)
- }
- //进行删除
- a.ConfigService.Remove(list)
- }
- // RefreshCache 刷新缓存
- func (a ConfigApi) RefreshCache(c *frame.Context) {
- all := a.ConfigService.FindAll()
- m2 := new(model.SysConfig)
- for _, sysConfig := range *all {
- cache.RemoveKey(sysConfig.ConfigKey)
- cache.SetDictCache(sysConfig.ConfigKey, m2.MarshalDictObj(&sysConfig))
- }
- }
- // Export 导出数据
- func (a ConfigApi) Export(c *frame.Context) {
- query := &req.ConfigQuery{}
- c.ValidteError(c.ShouldBind(query), query)
- find, _ := a.ConfigService.Find(query)
- items := make([]interface{}, 0)
- for _, config := range *find {
- items = append(items, config)
- }
- _, files := excels.ExportExcel(items, "配置表")
- file.DownloadExcel(c, files)
- }
|