|
@@ -6,6 +6,7 @@ import (
|
|
|
"eta/eta_api/models/mgo"
|
|
|
"eta/eta_api/utils"
|
|
|
"fmt"
|
|
|
+ "gorm.io/gorm"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"time"
|
|
@@ -450,6 +451,11 @@ type EdbDataList struct {
|
|
|
Value float64 `description:"数据值"`
|
|
|
}
|
|
|
|
|
|
+func (e *EdbDataList) AfterFind(db *gorm.DB) (err error) {
|
|
|
+ e.DataTime = utils.GormDateStrToDateStr(e.DataTime)
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
// GetEdbDataList
|
|
|
// @Description: 获取指标的数据(日期正序返回)
|
|
|
// @author: Roc
|
|
@@ -567,14 +573,14 @@ type EdbDataListByUniqueCode struct {
|
|
|
Value float64 `description:"数据值"`
|
|
|
}
|
|
|
|
|
|
-func GetEdbDataLunarList(endInfoId int, startDate, endDate string) (list []*EdbDataList, err error) {
|
|
|
- tableName := "edb_data_quarter"
|
|
|
- sql := `SELECT edb_data_id,edb_info_id,data_time,TRUNCATE(value,2) AS value,data_timestamp FROM %s WHERE edb_info_id=? AND data_time>=? AND data_time<=? ORDER BY data_time ASC `
|
|
|
- sql = fmt.Sprintf(sql, tableName)
|
|
|
- o := global.DbMap[utils.DbNameIndex]
|
|
|
- err = o.Raw(sql, endInfoId, startDate, endDate).Find(&list).Error
|
|
|
- return
|
|
|
-}
|
|
|
+//func GetEdbDataLunarList(endInfoId int, startDate, endDate string) (list []*EdbDataList, err error) {
|
|
|
+// tableName := "edb_data_quarter"
|
|
|
+// sql := `SELECT edb_data_id,edb_info_id,data_time,TRUNCATE(value,2) AS value,data_timestamp FROM %s WHERE edb_info_id=? AND data_time>=? AND data_time<=? ORDER BY data_time ASC `
|
|
|
+// sql = fmt.Sprintf(sql, tableName)
|
|
|
+// o := global.DbMap[utils.DbNameIndex]
|
|
|
+// err = o.Raw(sql, endInfoId, startDate, endDate).Find(&list).Error
|
|
|
+// return
|
|
|
+//}
|
|
|
|
|
|
// GetEdbDataListMinAndMax
|
|
|
// @Description: 根据条件数据库中获取指标数据最小值和最大值
|
|
@@ -636,6 +642,7 @@ func getEdbDataListMinAndMaxByMysql(source, subSource, edbInfoId int, startDate,
|
|
|
sql += condition
|
|
|
}
|
|
|
|
|
|
+ sql = utils.ReplaceDriverKeywords("", sql)
|
|
|
err = o.Raw(sql, pars...).Row().Scan(&minData, &maxData)
|
|
|
return
|
|
|
}
|
|
@@ -687,60 +694,60 @@ func getEdbDataListMinAndMaxByMongo(source, subSource, edbInfoId int, startDate,
|
|
|
}
|
|
|
|
|
|
type ChartEdbInfoMapping struct {
|
|
|
- EdbInfoId int `description:"指标id"`
|
|
|
- SourceName string `description:"来源名称"`
|
|
|
- Source int `description:"来源id"`
|
|
|
- SubSource int `description:"来源id"`
|
|
|
- EdbCode string `description:"指标编码"`
|
|
|
- EdbName string `description:"指标名称"`
|
|
|
- EdbAliasName string `description:"指标名称(别名)"`
|
|
|
- EdbNameEn string `description:"英文指标名称"`
|
|
|
- EdbAliasNameEn string `description:"英文指标名称(别名)"`
|
|
|
- EdbType int `description:"指标类型:1:基础指标,2:计算指标"`
|
|
|
- Frequency string `description:"频率"`
|
|
|
- FrequencyEn string `description:"英文频率"`
|
|
|
- Unit string `description:"单位"`
|
|
|
- UnitEn string `description:"英文单位"`
|
|
|
- StartDate string `description:"起始日期"`
|
|
|
- EndDate string `description:"终止日期"`
|
|
|
- ModifyTime string `description:"指标最后更新时间"`
|
|
|
- ChartEdbMappingId int `description:"图表指标id"`
|
|
|
- ChartInfoId int `description:"图表id"`
|
|
|
- MaxData float64 `description:"上限"`
|
|
|
- MinData float64 `description:"下限"`
|
|
|
- IsOrder bool `description:"true:正序,false:逆序"`
|
|
|
- IsAxis int `description:"1:左轴,0:右轴"`
|
|
|
- EdbInfoType int `description:"1:标准指标,0:领先指标"`
|
|
|
- EdbInfoCategoryType int `description:"0:普通指标,1:预测指标"`
|
|
|
- LeadValue int `description:"领先值"`
|
|
|
- LeadUnit string `description:"领先单位"`
|
|
|
- LeadUnitEn string `description:"领先英文单位"`
|
|
|
- ChartStyle string `description:"图表类型"`
|
|
|
- ChartColor string `description:"颜色"`
|
|
|
- PredictChartColor string `description:"预测数据的颜色"`
|
|
|
- ChartWidth float64 `description:"线条大小"`
|
|
|
- ChartType int `description:"生成样式:1:曲线图,2:季节性图,3:面积图,4:柱状图,5:散点图,6:组合图,7:柱方图,8:商品价格曲线图,9:相关性图"`
|
|
|
- LatestDate string `description:"数据最新日期"`
|
|
|
- LatestValue float64 `description:"数据最新值"`
|
|
|
- MoveLatestDate string `description:"移动后的数据最新日期"`
|
|
|
- UniqueCode string `description:"指标唯一编码"`
|
|
|
- MinValue float64 `json:"-" description:"最小值"`
|
|
|
- MaxValue float64 `json:"-" description:"最大值"`
|
|
|
- DataList interface{}
|
|
|
- IsNullData bool `json:"-" description:"是否空数据"`
|
|
|
- MappingSource int `description:"1:ETA图库;2:商品价格曲线"`
|
|
|
- RegionType string `description:"交易所来源,海外还是国内" json:"-"`
|
|
|
- ClassifyId int `description:"分类id"`
|
|
|
- SubSourceName string `description:"子数据来源名称"`
|
|
|
- IndicatorCode string `description:"指标代码"`
|
|
|
- IsConvert int `description:"是否数据转换 0不转 1转"`
|
|
|
- ConvertType int `description:"数据转换类型 1乘 2除 3对数"`
|
|
|
- ConvertValue float64 `description:"数据转换值"`
|
|
|
- ConvertUnit string `description:"数据转换单位"`
|
|
|
- ConvertEnUnit string `description:"数据转换单位"`
|
|
|
- IsJoinPermission int `description:"是否加入权限管控,0:不加入;1:加入;默认:0"`
|
|
|
- HaveOperaAuth bool `description:"是否有数据权限,默认:false"`
|
|
|
- UniqueFlag string `description:"唯一标识(与唯一编码不是一个东西)"`
|
|
|
+ EdbInfoId int `description:"指标id"`
|
|
|
+ SourceName string `description:"来源名称"`
|
|
|
+ Source int `description:"来源id"`
|
|
|
+ SubSource int `description:"来源id"`
|
|
|
+ EdbCode string `description:"指标编码"`
|
|
|
+ EdbName string `description:"指标名称"`
|
|
|
+ EdbAliasName string `description:"指标名称(别名)"`
|
|
|
+ EdbNameEn string `description:"英文指标名称"`
|
|
|
+ EdbAliasNameEn string `description:"英文指标名称(别名)"`
|
|
|
+ EdbType int `description:"指标类型:1:基础指标,2:计算指标"`
|
|
|
+ Frequency string `description:"频率"`
|
|
|
+ FrequencyEn string `description:"英文频率"`
|
|
|
+ Unit string `description:"单位"`
|
|
|
+ UnitEn string `description:"英文单位"`
|
|
|
+ StartDate string `description:"起始日期"`
|
|
|
+ EndDate string `description:"终止日期"`
|
|
|
+ ModifyTime string `description:"指标最后更新时间"`
|
|
|
+ ChartEdbMappingId int `description:"图表指标id"`
|
|
|
+ ChartInfoId int `description:"图表id"`
|
|
|
+ MaxData float64 `description:"上限"`
|
|
|
+ MinData float64 `description:"下限"`
|
|
|
+ IsOrder bool `description:"true:正序,false:逆序"`
|
|
|
+ IsAxis int `description:"1:左轴,0:右轴"`
|
|
|
+ EdbInfoType int `description:"1:标准指标,0:领先指标"`
|
|
|
+ EdbInfoCategoryType int `description:"0:普通指标,1:预测指标"`
|
|
|
+ LeadValue int `description:"领先值"`
|
|
|
+ LeadUnit string `description:"领先单位"`
|
|
|
+ LeadUnitEn string `description:"领先英文单位"`
|
|
|
+ ChartStyle string `description:"图表类型"`
|
|
|
+ ChartColor string `description:"颜色"`
|
|
|
+ PredictChartColor string `description:"预测数据的颜色"`
|
|
|
+ ChartWidth float64 `description:"线条大小"`
|
|
|
+ ChartType int `description:"生成样式:1:曲线图,2:季节性图,3:面积图,4:柱状图,5:散点图,6:组合图,7:柱方图,8:商品价格曲线图,9:相关性图"`
|
|
|
+ LatestDate string `description:"数据最新日期"`
|
|
|
+ LatestValue float64 `description:"数据最新值"`
|
|
|
+ MoveLatestDate string `description:"移动后的数据最新日期"`
|
|
|
+ UniqueCode string `description:"指标唯一编码"`
|
|
|
+ MinValue float64 `gorm:"-" json:"-" description:"最小值"`
|
|
|
+ MaxValue float64 `gorm:"-" json:"-" description:"最大值"`
|
|
|
+ DataList interface{} `gorm:"-"`
|
|
|
+ IsNullData bool `gorm:"-" json:"-" description:"是否空数据"`
|
|
|
+ MappingSource int `description:"1:ETA图库;2:商品价格曲线"`
|
|
|
+ RegionType string `description:"交易所来源,海外还是国内" json:"-"`
|
|
|
+ ClassifyId int `description:"分类id"`
|
|
|
+ SubSourceName string `description:"子数据来源名称"`
|
|
|
+ IndicatorCode string `description:"指标代码"`
|
|
|
+ IsConvert int `description:"是否数据转换 0不转 1转"`
|
|
|
+ ConvertType int `description:"数据转换类型 1乘 2除 3对数"`
|
|
|
+ ConvertValue float64 `description:"数据转换值"`
|
|
|
+ ConvertUnit string `description:"数据转换单位"`
|
|
|
+ ConvertEnUnit string `description:"数据转换单位"`
|
|
|
+ IsJoinPermission int `description:"是否加入权限管控,0:不加入;1:加入;默认:0"`
|
|
|
+ HaveOperaAuth bool `description:"是否有数据权限,默认:false"`
|
|
|
+ UniqueFlag string `description:"唯一标识(与唯一编码不是一个东西)"`
|
|
|
}
|
|
|
|
|
|
type QuarterData struct {
|