123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- package controllers
- import (
- "eta/eta_api/models"
- "eta/eta_api/utils"
- )
- // EdbDetail
- // @Title 指标列表
- // @Description 指标列表
- // @Param TradeCode query string true "指标编码"
- // @Success 200 {object} models.TargetDetailResp
- // @router /target/edb/detail [get]
- func (this *TargetController) EdbDetail() {
- br := new(models.BaseResponse).Init()
- defer func() {
- this.Data["json"] = br
- this.ServeJSON()
- }()
- sysUser := this.SysUser
- if sysUser == nil {
- br.Msg = "请重新登录"
- return
- }
- // 指标编码
- tradeCode := this.GetString("TradeCode")
- if tradeCode == `` {
- br.Msg = "请输入指标编码"
- br.IsSendEmail = false
- return
- }
- manualEdbInfo, err := models.GetTargetByTradeCode(tradeCode)
- if err != nil {
- br.Msg = "获取指标失败"
- br.ErrMsg = "获取指标失败,err:" + err.Error()
- return
- }
- // 如果不是超管账号,那么得校验下当前用户是否有该指标的权限
- if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN {
- //获取账户所拥有权限的分类id集合
- count, err := models.GetCountManualUserClassify(sysUser.AdminId, manualEdbInfo.ClassifyId)
- if err != nil {
- br.Msg = "获取分类数据失败"
- br.ErrMsg = "获取分类数据失败,err:" + err.Error()
- return
- }
- if count <= 0 {
- br.Msg = "无权访问"
- br.ErrMsg = "无权访问"
- br.IsSendEmail = false
- return
- }
- }
- classifyList := make([]*models.EdbdataClassify, 0)
- {
- classify, err := models.GetManualClassifyByClassifyId(manualEdbInfo.ClassifyId)
- if err != nil {
- br.Msg = "获取分类信息失败"
- br.ErrMsg = "获取分类信息失败,err:" + err.Error()
- return
- }
- parentClassify, err := models.GetManualClassifyByClassifyId(classify.ParentId)
- if err != nil {
- br.Msg = "获取分类信息失败"
- br.ErrMsg = "获取父级分类信息失败,err:" + err.Error()
- return
- }
- classifyList = []*models.EdbdataClassify{
- parentClassify, classify,
- }
- }
- dataList, err := models.GetEdbDataListByCode(manualEdbInfo.TradeCode)
- if err != nil {
- br.Msg = "获取明细数据失败"
- br.ErrMsg = "获取明细数据失败,err:" + err.Error()
- return
- }
- resp := models.TargetDetailResp{
- Detail: manualEdbInfo,
- ClassifyList: classifyList,
- FrequencyList: dataList,
- }
- br.Ret = 200
- br.Success = true
- br.Msg = "获取成功"
- //br.Data = resp
- br.Data = resp
- }
|