Sfoglia il codice sorgente

Merge branch 'dm' of http://8.136.199.33:3000/eta_gn_server/eta_api into dm

hongze 5 mesi fa
parent
commit
50e8108990

+ 123 - 56
models/data_manage/chart_info.go

@@ -6,11 +6,13 @@ import (
 	"eta_gn/eta_api/models/mgo"
 	"eta_gn/eta_api/utils"
 	"fmt"
-	"github.com/rdlucklib/rdluck_tools/paging"
-	"go.mongodb.org/mongo-driver/bson"
 	"strconv"
 	"strings"
 	"time"
+
+	"github.com/rdlucklib/rdluck_tools/paging"
+	"go.mongodb.org/mongo-driver/bson"
+	"gorm.io/gorm"
 )
 
 type ChartInfo struct {
@@ -477,6 +479,15 @@ func GetEdbDataList(source, subSource, edbInfoId int, startDate, endDate string)
 
 }
 
+func (e *EdbDataList) AfterFind(db *gorm.DB) (err error) {
+	tmp, err := time.Parse(utils.FormatDateWallWithLoc, e.DataTime)
+	if err != nil {
+		return
+	}
+	e.DataTime = tmp.Format(utils.FormatDate)
+	return
+}
+
 // getEdbDataListByMysql
 // @Description: 通过mysql查询指标数据
 // @author: Roc
@@ -511,7 +522,7 @@ func getEdbDataListByMysql(source, subSource, edbInfoId int, startDate, endDate
 	sql = fmt.Sprintf(sql, tableName)
 	o := global.DmSQL["data"]
 
-	err = o.Raw(sql, utils.ForwardPars(pars, edbInfoId)...).Scan(&list).Error
+	err = o.Raw(sql, utils.ForwardPars(pars, edbInfoId)...).Find(&list).Error
 	//err = o.Raw(sql, pars...).Scan(&list).Error
 	return
 }
@@ -703,60 +714,116 @@ func getEdbDataListMinAndMaxByMongo(source, subSource, edbInfoId int, startDate,
 	return
 }
 
+// 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"`
+// }
+
 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"`
+	EdbInfoId           int         `description:"指标id" gorm:"column:edb_info_id"`
+	SourceName          string      `description:"来源名称" gorm:"column:source_name"`
+	Source              int         `description:"来源id" gorm:"column:source"`
+	SubSource           int         `description:"来源id" gorm:"column:sub_source"`
+	EdbCode             string      `description:"指标编码" gorm:"column:edb_code"`
+	EdbName             string      `description:"指标名称" gorm:"column:edb_name"`
+	EdbAliasName        string      `description:"指标名称(别名)" gorm:"column:edb_alias_name"`
+	EdbNameEn           string      `description:"英文指标名称" gorm:"column:edb_name_en"`
+	EdbAliasNameEn      string      `description:"英文指标名称(别名)" gorm:"column:edb_alias_name_en"`
+	EdbType             int         `description:"指标类型:1:基础指标,2:计算指标" gorm:"column:edb_type"`
+	Frequency           string      `description:"频率" gorm:"column:frequency"`
+	FrequencyEn         string      `description:"英文频率" gorm:"column:frequency_en"`
+	Unit                string      `description:"单位" gorm:"column:unit"`
+	UnitEn              string      `description:"英文单位" gorm:"column:unit_en"`
+	StartDate           string      `description:"起始日期" gorm:"column:start_date"`
+	EndDate             string      `description:"终止日期" gorm:"column:end_date"`
+	ModifyTime          string      `description:"指标最后更新时间" gorm:"column:modify_time"`
+	ChartEdbMappingId   int         `description:"图表指标id" gorm:"column:chart_edb_mapping_id"`
+	ChartInfoId         int         `description:"图表id" gorm:"column:chart_info_id"`
+	MaxData             float64     `description:"上限" gorm:"column:max_data"`
+	MinData             float64     `description:"下限" gorm:"column:min_data"`
+	IsOrder             bool        `description:"true:正序,false:逆序" gorm:"column:is_order"`
+	IsAxis              int         `description:"1:左轴,0:右轴" gorm:"column:is_axis"`
+	EdbInfoType         int         `description:"1:标准指标,0:领先指标" gorm:"column:edb_info_type"`
+	EdbInfoCategoryType int         `description:"0:普通指标,1:预测指标" gorm:"column:edb_info_category_type"`
+	LeadValue           int         `description:"领先值" gorm:"column:lead_value"`
+	LeadUnit            string      `description:"领先单位" gorm:"column:lead_unit"`
+	LeadUnitEn          string      `description:"领先英文单位" gorm:"column:lead_unit_en"`
+	ChartStyle          string      `description:"图表类型" gorm:"column:chart_style"`
+	ChartColor          string      `description:"颜色" gorm:"column:chart_color"`
+	PredictChartColor   string      `description:"预测数据的颜色" gorm:"column:predict_chart_color"`
+	ChartWidth          float64     `description:"线条大小" gorm:"column:chart_width"`
+	ChartType           int         `description:"生成样式:1:曲线图,2:季节性图,3:面积图,4:柱状图,5:散点图,6:组合图,7:柱方图,8:商品价格曲线图,9:相关性图" gorm:"column:chart_type"`
+	LatestDate          string      `description:"数据最新日期" gorm:"column:latest_date"`
+	LatestValue         float64     `description:"数据最新值" gorm:"column:latest_value"`
+	MoveLatestDate      string      `description:"移动后的数据最新日期" gorm:"column:move_latest_date"`
+	UniqueCode          string      `description:"指标唯一编码" gorm:"column:unique_code"`
+	MinValue            float64     `json:"-" description:"最小值" gorm:"column:min_value"`
+	MaxValue            float64     `json:"-" description:"最大值" gorm:"column:max_value"`
+	DataList            interface{} `gorm:"-"`
+	IsNullData          bool        `json:"-" description:"是否空数据" gorm:"column:is_null_data"`
+	MappingSource       int         `description:"1:ETA图库;2:商品价格曲线" gorm:"column:mapping_source"`
+	RegionType          string      `description:"交易所来源,海外还是国内" json:"-" gorm:"column:region_type"`
+	ClassifyId          int         `description:"分类id" gorm:"column:classify_id"`
+	SubSourceName       string      `description:"子数据来源名称" gorm:"column:sub_source_name"`
+	IndicatorCode       string      `description:"指标代码" gorm:"column:indicator_code"`
+	IsConvert           int         `description:"是否数据转换 0不转 1转" gorm:"column:is_convert"`
+	ConvertType         int         `description:"数据转换类型 1乘 2除 3对数" gorm:"column:convert_type"`
+	ConvertValue        float64     `description:"数据转换值" gorm:"column:convert_value"`
+	ConvertUnit         string      `description:"数据转换单位" gorm:"column:convert_unit"`
+	ConvertEnUnit       string      `description:"数据转换单位" gorm:"column:convert_en_unit"`
+	IsJoinPermission    int         `description:"是否加入权限管控,0:不加入;1:加入;默认:0" gorm:"column:is_join_permission"`
+	HaveOperaAuth       bool        `description:"是否有数据权限,默认:false" gorm:"column:have_opera_auth"`
 }
 
 type QuarterData struct {

+ 1 - 1
models/data_manage/factor_edb_series_calculate_data_qjjs.go

@@ -205,7 +205,7 @@ func (m *FactorEdbSeriesCalculateDataQjjs) GetEdbDataList(seriesId int, edbInfoI
 
 	sql += ` ORDER BY data_time ASC `
 	sql = fmt.Sprintf(sql, m.TableName())
-	err = global.DmSQL["data"].Raw(sql, pars...).Scan(&list).Error
+	err = global.DmSQL["data"].Raw(sql, pars...).Find(&list).Error
 
 	return
 }

+ 16 - 15
utils/constants.go

@@ -6,21 +6,22 @@ import (
 
 // 常量定义
 const (
-	FormatTime                 = "15:04:05"                //时间格式
-	FormatTimeHm               = "15:04"                   //时间格式
-	FormatDate                 = "2006-01-02"              //日期格式
-	FormatDateUnSpace          = "20060102"                //日期格式
-	FormatDateTime             = "2006-01-02 15:04:05"     //完整时间格式
-	HlbFormatDateTime          = "2006-01-02_15:04:05.999" //完整时间格式
-	FormatDateTimeUnSpace      = "20060102150405"          //完整时间格式
-	FormatShortDateTimeUnSpace = "060102150405"            //省去开头两位年份的时间格式
-	EmptyDateTimeStr           = "0000-00-00 00:00:00"     //DateTime零值字符串
-	EmptyDateStr               = "0000-00-00"              //Date零值字符串
-	FormatMonthDayUnSpace      = "0102"                    //日期格式
-	FormatMonthDay             = "01-02"                   //日期格式
-	FormatYearMonthDate        = "2006-01"                 //日期格式
-	FormatYearDate             = "2006"                    //日期格式
-	PageSize15                 = 15                        //列表页每页数据量
+	FormatTime                 = "15:04:05"                  //时间格式
+	FormatTimeHm               = "15:04"                     //时间格式
+	FormatDate                 = "2006-01-02"                //日期格式
+	FormatDateWallWithLoc      = "2006-01-02T15:04:05-07:00" //日期格式
+	FormatDateUnSpace          = "20060102"                  //日期格式
+	FormatDateTime             = "2006-01-02 15:04:05"       //完整时间格式
+	HlbFormatDateTime          = "2006-01-02_15:04:05.999"   //完整时间格式
+	FormatDateTimeUnSpace      = "20060102150405"            //完整时间格式
+	FormatShortDateTimeUnSpace = "060102150405"              //省去开头两位年份的时间格式
+	EmptyDateTimeStr           = "0000-00-00 00:00:00"       //DateTime零值字符串
+	EmptyDateStr               = "0000-00-00"                //Date零值字符串
+	FormatMonthDayUnSpace      = "0102"                      //日期格式
+	FormatMonthDay             = "01-02"                     //日期格式
+	FormatYearMonthDate        = "2006-01"                   //日期格式
+	FormatYearDate             = "2006"                      //日期格式
+	PageSize15                 = 15                          //列表页每页数据量
 	PageSize5                  = 5
 	PageSize10                 = 10
 	PageSize20                 = 20