package data_stat import ( "encoding/json" "eta/eta_api/controllers" "eta/eta_api/models" "eta/eta_api/models/data_stat" ) // EdbSourceStatController 数据源统计表管理模块 type EdbSourceStatController struct { controllers.BaseAuthController } // Column // @Title 数据源统计表自定义列列表 // @Description 查询 数据源统计表自定义列列表 // @Success 200 {object} data_stat.StatColumnList // @router /source_column [get] func (this *EdbSourceStatController) Column() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() sysUser := this.SysUser if sysUser == nil { br.Msg = "请登录" br.ErrMsg = "请登录,SysUser Is Empty" br.Ret = 408 return } columnType, _ := this.GetInt("ColumnType") if columnType <= 0 { br.Msg = "请选择表类型" return } tmpList, err := data_stat.GetStatColumn(columnType) if err != nil { br.Msg = "获取自定义列失败" br.ErrMsg = "获取自定义列失败,Err:" + err.Error() return } var list []*data_stat.EdbInfoStatColumnListItem for _, v := range tmpList { tmp := new(data_stat.EdbInfoStatColumnListItem) tmp.ColumnKey = v.ColumnKey tmp.IsShow = v.IsShow tmp.ColumnName = v.ColumnName tmp.Id = v.Id tmp.IsMust = v.IsMust tmp.IsSort = v.IsSort tmp.Type = v.Type list = append(list, tmp) } var statColumnList data_stat.StatColumnList statColumnList.List = list br.Ret = 200 br.Success = true br.Msg = "获取成功" br.Data = statColumnList } // EditColumn // @Title 编辑数据源统计表自定义列 // @Description 编辑 数据源统计表自定义列列表 // @Success 200 {object} data_stat.StatColumnList // @router /source_column/edit [post] func (this *EdbSourceStatController) EditColumn() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() sysUser := this.SysUser if sysUser == nil { br.Msg = "请登录" br.ErrMsg = "请登录,SysUser Is Empty" br.Ret = 408 return } var req data_stat.EditStatColumnReq err := json.Unmarshal(this.Ctx.Input.RequestBody, &req) if err != nil { br.Msg = "参数解析异常!" br.ErrMsg = "参数解析失败,Err:" + err.Error() return } if len(req.List) <= 0 { br.Msg = "请选择要修改的列" br.IsSendEmail = false return } var list []*data_stat.EdbInfoStatColumn for k, v := range req.List { if v.Id == 0 { br.Msg = "列序号不能为空" return } tmp := new(data_stat.EdbInfoStatColumn) tmp.Id = v.Id tmp.Sort = k + 1 tmp.IsShow = v.IsShow list = append(list, tmp) } err = data_stat.UpdateStatColumn(list) if err != nil { br.Msg = "更新自定义列操作失败!" br.ErrMsg = "更新自定义列操作失败,Err:" + err.Error() return } br.Ret = 200 br.Success = true br.Msg = "获取成功" return }