Browse Source

指标数据分页展示

xyxie 2 months ago
parent
commit
562b583c97
2 changed files with 35 additions and 5 deletions
  1. 24 2
      controllers/data_manage/gpr_risk_data.go
  2. 11 3
      models/data_manage/base_from_gpr_risk.go

+ 24 - 2
controllers/data_manage/gpr_risk_data.go

@@ -320,13 +320,35 @@ func (this *BaseFromGprRiskController) GprRiskSingleData() {
 		return
 	}
 	indexCode := this.GetString("IndexCode")
+	pageSize, _ := this.GetInt("PageSize")
+	currentIndex, _ := this.GetInt("CurrentIndex")
+
+	var total int64
+	page := paging.GetPaging(currentIndex, pageSize, int(total))
+
+	var startSize int
+	if pageSize <= 0 {
+		pageSize = utils.PageSize20
+	}
+	if currentIndex <= 0 {
+		currentIndex = 1
+	}
+	startSize = paging.StartIndex(currentIndex, pageSize)
+
 	indexInfo, err := data_manage.GetBaseFromGprRiskIndexByIndexCode(indexCode)
 	if err != nil {
 		br.Msg = "获取指标信息失败"
 		br.ErrMsg = "获取指标信息失败,Err:" + err.Error()
 		return
 	}
-	dataTmpList, err := data_manage.GetGprRiskIndexDataByCode(indexCode)
+	total, err = data_manage.GetGprRiskIndexDataTotalByCode(indexCode)
+	if err != nil {
+		br.Msg = "获取数据失败"
+		br.ErrMsg = "获取数据失败,Err:" + err.Error()
+		return
+	}
+	page = paging.GetPaging(currentIndex, pageSize, int(total))
+	dataTmpList, err := data_manage.GetGprRiskIndexDataByCode(indexCode, startSize, pageSize)
 	if err != nil {
 		br.Msg = "获取数据失败"
 		br.ErrMsg = "获取数据失败,Err:" + err.Error()
@@ -362,7 +384,7 @@ func (this *BaseFromGprRiskController) GprRiskSingleData() {
 		dataList = append(dataList, tmp)
 	}
 	ret.Data = dataList
-
+	ret.Paging = page
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "获取成功"

+ 11 - 3
models/data_manage/base_from_gpr_risk.go

@@ -61,6 +61,7 @@ type GprRiskSingleDataResp struct {
 	ModifyTime             string
 	EdbExist               int `description:"指标库是否已添加:0-否;1-是"`
 	Data                   []*GprRiskSingleData
+	Paging                 *paging.PagingItem `description:"分页数据"`
 }
 
 type GprRiskSingleData struct {
@@ -221,10 +222,17 @@ func GetGprRiskItemList(condition string) (items []*BaseFromGprRiskIndexSearchIt
 	return
 }
 
-func GetGprRiskIndexDataByCode(indexCode string) (list []*BaseFromGprRiskData, err error) {
+func GetGprRiskIndexDataByCode(indexCode string, pageIndex, pageSize int) (list []*BaseFromGprRiskData, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `SELECT * FROM base_from_gpr_risk_data WHERE index_code=? order by data_time desc limit ?,?`
+	_, err = o.Raw(sql, indexCode, pageIndex, pageSize).QueryRows(&list)
+	return
+}
+
+func GetGprRiskIndexDataTotalByCode(indexCode string) (total int64, err error) {
 	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM base_from_gpr_risk_data WHERE index_code=? `
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	sql := `SELECT count(*) FROM base_from_gpr_risk_data WHERE index_code=?`
+	err = o.Raw(sql, indexCode).QueryRow(&total)
 	return
 }