Browse Source

睿姿得数据 详情-列表

gmy 4 months ago
parent
commit
ac67f3b826

+ 35 - 59
controllers/data_manage/base_from_rzd_index_controller.go

@@ -155,8 +155,8 @@ func (this *BaseFromRzdIndexController) RzdIndexData() {
 	resultList := make([]*data_manage.BaseFromRzdIndexList, 0)
 	for _, v := range indexes {
 		product := new(data_manage.BaseFromRzdIndexList)
-		product.BaseFromRzdIndexId = v.FenweiIndexId
-		product.BaseFromRzdClassifyId = v.ClassifyId
+		product.BaseFromRzdIndexId = v.BaseFromRzdIndexId
+		product.BaseFromRzdClassifyId = v.BaseFromRzdClassifyId
 		product.Unit = v.Unit
 		product.IndexCode = v.IndexCode
 		product.IndexName = v.IndexName
@@ -194,7 +194,7 @@ func (this *BaseFromRzdIndexController) RzdIndexData() {
 // RzdIndexDetail
 // @Title 获取睿姿得数据指标详情
 // @Description 获取睿姿得数据指标详情
-// @Param   searchParams   query   string  true       "查询参数 指标id/指标名称"
+// @Param   IndexCode   query   string  true       "查询参数 指标id"
 // @Success 200
 // @router /rzd/index/detail [get]
 func (this *BaseFromRzdIndexController) RzdIndexDetail() {
@@ -214,77 +214,53 @@ func (this *BaseFromRzdIndexController) RzdIndexDetail() {
 		return
 	}
 
-	/*searchParams := this.GetString("SearchParams")
+	indexCode := this.GetString("IndexCode")
 
-	indexes, err := data_manage.GetRzdIndex(condition, pars)
+	indexDetail, err := data.GetRzdIndexDetail(indexCode)
 	if err != nil {
-		br.Msg = "获取数据失败"
-		br.ErrMsg = "获取数据失败,Err:" + err.Error()
 		return
 	}
 
-	indexCodes := make([]string, 0)
-	for _, v := range indexes {
-		indexCodes = append(indexCodes, v.IndexCode)
-	}
-	indexCounts, e := data_manage.GetRzdIndexDataCountGroup(indexCodes)
-	if e != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取指标数据总量失败, Err:" + err.Error()
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = indexDetail
+}
+
+// RzdIndexList
+// @Title 获取睿姿得数据指标列表
+// @Description 获取睿姿得数据指标详情
+// @Param   searchParams   query   string  true       "查询参数 指标id/指标名称"
+// @Success 200
+// @router /rzd/index/list [get]
+func (this *BaseFromRzdIndexController) RzdIndexList() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		if br.ErrMsg == "" {
+			br.IsSendEmail = false
+		}
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
 		return
 	}
-	countMap := make(map[string]int)
-	for _, v := range indexCounts {
-		countMap[v.IndexCode] = v.Count
-	}
 
-	// 判断是否存在于指标库
-	edbCodeList, err := data_manage.GetEdbInfoByEdbCodeList(utils.DATA_SOURCE_RZD, indexCodes)
+	searchParams := this.GetString("SearchParams")
+
+	indexList, err := data.GetRzdIndexList(searchParams)
 	if err != nil {
 		return
 	}
-	edbCodeMap := make(map[string]*data_manage.EdbInfo)
-	for _, v := range edbCodeList {
-		edbCodeMap[v.EdbCode] = v
-	}
-
-	resultList := make([]*data_manage.BaseFromRzdIndexList, 0)
-	for _, v := range indexes {
-		product := new(data_manage.BaseFromRzdIndexList)
-		product.BaseFromRzdIndexId = v.FenweiIndexId
-		product.BaseFromRzdClassifyId = v.ClassifyId
-		product.Unit = v.Unit
-		product.IndexCode = v.IndexCode
-		product.IndexName = v.IndexName
-		product.Frequency = v.Frequency
-		product.CreateTime = v.CreateTime
-		product.ModifyTime = v.ModifyTime
-
-		edbInfo := edbCodeMap[v.IndexCode]
-		if edbInfo != nil {
-			product.EdbInfoId = edbInfo.EdbInfoId
-		}
-
-		total := countMap[v.IndexCode]
-		page := paging.GetPaging(currentIndex, pageSize, total)
-		dataList, e := data_manage.GetRzdIndexData(v.IndexCode, startSize, pageSize)
-		if e != nil {
-			br.Msg = "获取数据失败"
-			br.ErrMsg = "获取指标数据失败,Err:" + e.Error()
-			return
-		}
-		if dataList == nil {
-			dataList = make([]*data_manage.BaseFromRzdData, 0)
-		}
-		product.DataList = dataList
-		product.Paging = page
-		resultList = append(resultList, product)
-	}*/
 
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "获取成功"
-	//br.Data = resultList
+	br.Data = indexList
 }
 
 // GetRzdFrequencyList

+ 1 - 1
models/data_manage/base_from_rzd_index.go

@@ -74,7 +74,7 @@ func GetRzdIndexByClassifyIds(classifyIds []int) (items []*BaseFromRzdIndex, err
 	return items, nil
 }
 
-func GetRzdIndex(condition string, pars interface{}) (items []*BaseFromFenweiIndexList, err error) {
+func GetRzdIndex(condition string, pars interface{}) (items []*BaseFromRzdIndexList, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM base_from_rzd_index WHERE 1=1  `
 	if condition != "" {

+ 18 - 0
routers/commentsRouter.go

@@ -2653,6 +2653,24 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromRzdIndexController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromRzdIndexController"],
+        beego.ControllerComments{
+            Method: "RzdIndexDetail",
+            Router: `/rzd/index/detail`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromRzdIndexController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromRzdIndexController"],
+        beego.ControllerComments{
+            Method: "RzdIndexList",
+            Router: `/rzd/index/list`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromThsHfController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:BaseFromThsHfController"],
         beego.ControllerComments{
             Method: "ClassifyAdd",

+ 57 - 0
services/data/base_from_rzd_index_service.go

@@ -160,3 +160,60 @@ func GetRzdIndexInfo(keyWord string, classifyIdList []string, frequencyList []st
 
 	return
 }
+
+// GetRzdIndexDetail 获取指标详情
+func GetRzdIndexDetail(indexCode string) (rzdIndexInfoList *data_manage.BaseFromRzdIndexList, err error) {
+
+	// 获取指标
+	var condition string
+	var pars []interface{}
+	if indexCode != "" {
+		condition += ` and index_code = ?`
+		pars = append(pars, indexCode)
+	}
+	rzdIndexList, err := data_manage.GetRzdIndex(condition, pars)
+	if err != nil {
+		return nil, err
+	}
+
+	var rzdIndex *data_manage.BaseFromRzdIndexList
+	if len(rzdIndexList) > 0 {
+		rzdIndex = rzdIndexList[0]
+		// 查询指标数据
+		dataList, err := data_manage.GetBaseFormRzdDataByIndexCode(indexCode)
+		if err != nil {
+			return nil, err
+		}
+		rzdIndex.DataList = dataList
+
+		// 查询是否在指标库
+		edbInfo, err := data_manage.GetEdbInfoByEdbCode(utils.DATA_SOURCE_RZD, indexCode)
+		if err != nil && err.Error() != utils.ErrNoRow() {
+			return nil, err
+		}
+
+		if edbInfo != nil {
+			rzdIndex.EdbInfoId = edbInfo.EdbInfoId
+		}
+	}
+
+	return rzdIndex, nil
+}
+
+// GetRzdIndexList 获取指标列表
+func GetRzdIndexList(searchParams string) (rzdIndexInfoList []*data_manage.BaseFromRzdIndexList, err error) {
+
+	// 获取指标
+	var condition string
+	var pars []interface{}
+	if searchParams != "" {
+		condition += ` and index_code like ? or index_name like ?`
+		pars = append(pars, "%"+searchParams+"%", "%"+searchParams+"%")
+	}
+	rzdIndexList, err := data_manage.GetRzdIndex(condition, pars)
+	if err != nil {
+		return nil, err
+	}
+
+	return rzdIndexList, nil
+}