Prechádzať zdrojové kódy

Merge remote-tracking branch 'origin/feature/eta2.4.4_gpr_risk'

Roc 2 mesiacov pred
rodič
commit
2f6c82dc12
4 zmenil súbory, kde vykonal 107 pridanie a 0 odobranie
  1. 87 0
      models/base_from_gpr_risk.go
  2. 3 0
      services/classify.go
  3. 16 0
      services/index.go
  4. 1 0
      utils/constants.go

+ 87 - 0
models/base_from_gpr_risk.go

@@ -0,0 +1,87 @@
+package models
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+	"github.com/rdlucklib/rdluck_tools/paging"
+	"time"
+)
+
+type BaseFromGprRiskIndex struct {
+	BaseFromGprRiskIndexId int `orm:"column(base_from_gpr_risk_index_id);pk"`
+	ClassifyId             int
+	IndexCode              string
+	IndexName              string
+	Frequency              string
+	Unit                   string
+	Sort                   int
+	StartDate              time.Time `description:"开始日期"`
+	EndDate                time.Time `description:"结束日期"`
+	EndValue               float64
+	CreateTime             time.Time
+	ModifyTime             time.Time
+}
+
+// BaseFromGprRiskClassify GprRisk原始数据分类表
+type BaseFromGprRiskClassify struct {
+	ClassifyId      int       `orm:"column(classify_id);pk"`
+	ClassifyName    string    `description:"分类名称"`
+	ParentId        int       `description:"父级id"`
+	SysUserId       int       `description:"创建人id"`
+	SysUserRealName string    `description:"创建人姓名"`
+	Level           int       `description:"层级"`
+	Sort            int       `description:"排序字段,越小越靠前,默认值:10"`
+	ModifyTime      time.Time `description:"修改时间"`
+	CreateTime      time.Time `description:"创建时间"`
+}
+
+func (obj *BaseFromGprRiskClassify) GetBaseFromGprRiskClassifyAll() (list []*BaseFromGprRiskClassify, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM base_from_gpr_risk_classify `
+	_, err = o.Raw(sql).QueryRows(&list)
+	return
+}
+
+type BaseFromGprRiskData struct {
+	BaseFromGprRiskDataId  int       `orm:"column(base_from_gpr_risk_data_id);pk"`
+	BaseFromGprRiskIndexId int       `description:"指标id"`
+	IndexCode              string    `description:"指标编码"`
+	DataTime               string    `description:"日期"`
+	Value                  string    `description:"值"`
+	CreateTime             time.Time `description:"创建时间"`
+	ModifyTime             time.Time `description:"修改时间"`
+}
+
+func GetGprRiskIndex(startDate, endDate string) (items []*BaseFromGprRiskIndex, err error) {
+	o := orm.NewOrm()
+	sql := ` SELECT * FROM base_from_gpr_risk_index WHERE modify_time >= ? AND modify_time <= ?  `
+	_, err = o.Raw(sql, startDate, endDate).QueryRows(&items)
+	return
+}
+
+func GetBaseFromGprRiskData(indexCode, startDate, endDate string) (list []*BaseFromGprRiskData, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM base_from_gpr_risk_data WHERE index_code=? AND modify_time>=? AND modify_time<=? `
+	_, err = o.Raw(sql, indexCode, startDate, endDate).QueryRows(&list)
+	return
+}
+
+// GetComTradeDataList 获取GprRisk消费指数数据列表
+func GetBaseFromGprRiskDataList(startDate, endDate string, startSize, pageSize int) (total int, list []*BaseFromGprRiskData, err error) {
+	o := orm.NewOrm()
+	totalSql := `SELECT count(1) total FROM base_from_gpr_risk_data WHERE modify_time>=? AND modify_time<=? `
+	err = o.Raw(totalSql, startDate, endDate).QueryRow(&total)
+	if err != nil {
+		return
+	}
+
+	sql := `SELECT * FROM base_from_gpr_risk_data WHERE modify_time>=? AND modify_time<=? ORDER BY base_from_gpr_risk_data_id ASC LIMIT ?,?`
+	_, err = o.Raw(sql, startDate, endDate, startSize, pageSize).QueryRows(&list)
+
+	return
+}
+
+// ComTradeIndexDataResp 分页列表响应体
+type BaseFromGprRiskDataResp struct {
+	List   []*BaseFromGprRiskData
+	Paging *paging.PagingItem `description:"分页数据"`
+}

+ 3 - 0
services/classify.go

@@ -20,6 +20,9 @@ func GetClassifyList(source int) (list interface{}, err error) {
 	case utils.DATA_SOURCE_USDA_FAS:
 		usdaFasObj := new(models.BaseFromUsdaFasClassify)
 		list, err = usdaFasObj.GetBaseFromUsdaFasClassifyAll()
+	case utils.DATA_SOURCE_GPR_RISK:
+		gprRiskObj := new(models.BaseFromGprRiskClassify)
+		list, err = gprRiskObj.GetBaseFromGprRiskClassifyAll()
 	default:
 	}
 	return

+ 16 - 0
services/index.go

@@ -50,6 +50,8 @@ func GetIndexList(source int, startDate, endDate string) (list interface{}, err
 		list, err = models.GetIcpiIndex(startDate, endDate)
 	case utils.DATA_SOURCE_USDA_FAS:
 		list, err = models.GetUsdaFasIndex(startDate, endDate)
+	case utils.DATA_SOURCE_GPR_RISK:
+		list, err = models.GetGprRiskIndex(startDate, endDate)
 	default:
 	}
 	return
@@ -69,6 +71,8 @@ func GetIndexDataList(source int, indexCode, startDate, endDate string) (list in
 		list, err = models.GetBaseFromIcpiData(indexCode, startDate, endDate)
 	case utils.DATA_SOURCE_USDA_FAS:
 		list, err = models.GetBaseFromUsdaFasData(indexCode, startDate, endDate)
+	case utils.DATA_SOURCE_GPR_RISK:
+		list, err = models.GetBaseFromGprRiskData(indexCode, startDate, endDate)
 	default:
 	}
 	return
@@ -125,6 +129,18 @@ func GetIndexDataPageList(source, currPage, pageSize int, startDate, endDate str
 			List:   dataList,
 			Paging: page,
 		}
+	case utils.DATA_SOURCE_GPR_RISK: //GPR地缘风险指数
+		var total int
+		dataList := make([]*models.BaseFromGprRiskData, 0)
+		total, dataList, err = models.GetBaseFromGprRiskDataList(startDate, endDate, currPage*pageSize, pageSize)
+		if err != nil {
+			return
+		}
+		page := paging.GetPaging(currPage, pageSize, total)
+		list = models.BaseFromGprRiskDataResp{
+			List:   dataList,
+			Paging: page,
+		}
 	default:
 	}
 	return

+ 1 - 0
utils/constants.go

@@ -106,4 +106,5 @@ const (
 	DATA_SOURCE_GFEX                                 = 78       // 广州期货交易所->78
 	DATA_SOURCE_ICPI                                 = 79       // ICPI消费价格指数->79
 	DATA_SOURCE_USDA_FAS                             = 96       //美国农业部
+	DATA_SOURCE_GPR_RISK                             = 102      //GPR地缘风险指数
 )