package data_manage import ( "fmt" "github.com/rdlucklib/rdluck_tools/orm" "hongze/hongze_chart_lib/utils" "time" ) //指标数据->存储表 func GetEdbDataTableName(source int) (tableName string) { switch source { case utils.DATA_SOURCE_THS: tableName = "edb_data_ths" case utils.DATA_SOURCE_WIND: tableName = "edb_data_wind" case utils.DATA_SOURCE_PB: tableName = "edb_data_pb" case utils.DATA_SOURCE_CALCULATE: tableName = "edb_data_calculate" case utils.DATA_SOURCE_CALCULATE_LJZZY: tableName = "edb_data_calculate_ljzzy" case utils.DATA_SOURCE_CALCULATE_TBZ: tableName = "edb_data_calculate_tbz" case utils.DATA_SOURCE_CALCULATE_TCZ: tableName = "edb_data_calculate_tcz" case utils.DATA_SOURCE_CALCULATE_NSZYDPJJS: tableName = "edb_data_calculate_nszydpjjs" case utils.DATA_SOURCE_MANUAL: tableName = "edb_data_manual" case utils.DATA_SOURCE_LZ: tableName = "edb_data_lz" case utils.DATA_SOURCE_YS: tableName = "edb_data_ys" case utils.DATA_SOURCE_CALCULATE_HBZ: tableName = "edb_data_calculate_hbz" case utils.DATA_SOURCE_CALCULATE_HCZ: tableName = "edb_data_calculate_hcz" case utils.DATA_SOURCE_CALCULATE_BP: tableName = "edb_data_calculate_bp" case utils.DATA_SOURCE_GL: tableName = "edb_data_gl" case utils.DATA_SOURCE_ZZ: tableName = "edb_data_zz" case utils.DATA_SOURCE_DL: tableName = "edb_data_dl" case utils.DATA_SOURCE_SH: tableName = "edb_data_sh" case utils.DATA_SOURCE_CFFEX: tableName = "edb_data_cffex" case utils.DATA_SOURCE_SHFE: tableName = "edb_data_ine" case utils.DATA_SOURCE_GIE: tableName = "edb_data_gie" case utils.DATA_SOURCE_CALCULATE_ZJPJ: tableName = "edb_data_calculate_zjpj" case utils.DATA_SOURCE_CALCULATE_TIME_SHIFT: tableName = "edb_data_calculate_time_shift" case utils.DATA_SOURCE_CALCULATE_LJZTBPJ: tableName = "edb_data_calculate_ljztbpj" case utils.DATA_SOURCE_LT: tableName = "edb_data_lt" default: tableName = "" } return } //计算指标->关联的基础指标表 //func GetEdbInfoCalculateTableName(source int) (tableName string) { // switch source { // case utils.DATA_SOURCE_CALCULATE: // tableName = "edb_info_calculate" // case utils.DATA_SOURCE_CALCULATE_LJZZY: // tableName = "edb_info_calculate_ljzzy" // case utils.DATA_SOURCE_CALCULATE_TBZ: // tableName = "edb_info_calculate_tbz" // case utils.DATA_SOURCE_CALCULATE_TCZ: // tableName = "edb_info_calculate_tcz" // case utils.DATA_SOURCE_CALCULATE_NSZYDPJJS: // tableName = "edb_info_calculate_nszydpjjs" // case utils.DATA_SOURCE_CALCULATE_HBZ: // tableName = "edb_info_calculate_hbz" // case utils.DATA_SOURCE_CALCULATE_HCZ: // tableName = "edb_info_calculate_hcz" // case utils.DATA_SOURCE_CALCULATE_BP: // tableName = "edb_info_calculate_bp" // default: // tableName = "" // } // return //} type EdbDataBase struct { EdbDataId int `orm:"column(edb_data_id);pk"` EdbInfoId int EdbCode string DataTime string Value string Status int CreateTime time.Time ModifyTime time.Time DataTimestamp int64 } func GetEdbDataAllByEdbCode(edbCode string, source, limit int) (items []*EdbInfoSearchData, err error) { var pars []interface{} pars = append(pars, edbCode) o := orm.NewOrm() o.Using("data") tableName := GetEdbDataTableName(source) sql := ` SELECT * FROM %s WHERE edb_code=? ORDER BY data_time DESC` if limit > 0 { sql += ` LIMIT ? ` pars = append(pars, limit) } sql = fmt.Sprintf(sql, tableName) _, err = o.Raw(sql, pars).QueryRows(&items) return } func GetEdbDataBaseByCodeAndDate(source int, edbCode string, startDate string) (count int, err error) { o := orm.NewOrm() o.Using("data") tableName := GetEdbDataTableName(source) sql := ` SELECT COUNT(1) AS count FROM %s WHERE edb_code=? AND data_time=? ` sql = fmt.Sprintf(sql, tableName) err = o.Raw(sql, edbCode, startDate).QueryRow(&count) return }