|
@@ -5,6 +5,7 @@ import (
|
|
|
"eta/eta_api/global"
|
|
|
"eta/eta_api/utils"
|
|
|
"github.com/rdlucklib/rdluck_tools/paging"
|
|
|
+ "gorm.io/gorm"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
@@ -117,6 +118,21 @@ type BaseFromCCFData struct {
|
|
|
DataTimestamp int64
|
|
|
}
|
|
|
|
|
|
+func (baseFromCCFData *BaseFromCCFData) AfterFind(tx *gorm.DB) (err error) {
|
|
|
+ if utils.NeedDateOrTimeFormat(utils.DbDriverName) {
|
|
|
+ if baseFromCCFData.ModifyTime != "" {
|
|
|
+ baseFromCCFData.ModifyTime = utils.GormDateStrToDateTimeStr(baseFromCCFData.ModifyTime)
|
|
|
+ }
|
|
|
+ if baseFromCCFData.CreateTime != "" {
|
|
|
+ baseFromCCFData.CreateTime = utils.GormDateStrToDateTimeStr(baseFromCCFData.CreateTime)
|
|
|
+ }
|
|
|
+ if baseFromCCFData.DataTime != "" {
|
|
|
+ baseFromCCFData.DataTime = utils.GormDateStrToDateStr(baseFromCCFData.DataTime)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
type BaseFromCCFIndexSearchItem struct {
|
|
|
BaseFromCcfIndexId int `orm:"column(base_from_ccf_index_id);pk"`
|
|
|
ClassifyId int
|
|
@@ -206,11 +222,17 @@ func GetCCFIndexDataByDataTime(indexCodes []string, startDate, endDate string) (
|
|
|
func GetCCFIndexDataTimePageByCodes(indexCodes []string, startSize, pageSize int) (dataTimes []string, err error) {
|
|
|
sql := ` SELECT data_time FROM base_from_ccf_data WHERE index_code in (` + utils.GetOrmInReplace(len(indexCodes)) + `) GROUP BY data_time ORDER BY data_time DESC LIMIT ?,? `
|
|
|
err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCodes, startSize, pageSize).Find(&dataTimes).Error
|
|
|
+ if utils.NeedDateOrTimeFormat(utils.DbDriverName) {
|
|
|
+ for i := range dataTimes {
|
|
|
+ dataTimes[i] = utils.GormDateStrToDateStr(dataTimes[i])
|
|
|
+ }
|
|
|
+ }
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func GetCCFIndexDataTimePageCount(indexCodes []string) (count int, err error) {
|
|
|
- sqlStr := ` SELECT COUNT(DISTINCT data_time) AS count FROM base_from_ccf_data WHERE index_code in (` + utils.GetOrmInReplace(len(indexCodes)) + `)`
|
|
|
+ //sqlStr := ` SELECT COUNT(DISTINCT data_time) AS count FROM base_from_ccf_data WHERE index_code in (` + utils.GetOrmInReplace(len(indexCodes)) + `)`
|
|
|
+ sqlStr := ` SELECT COUNT(DISTINCT data_time) AS count FROM base_from_ccf_data WHERE index_code in ?`
|
|
|
var totalNull sql.NullInt64
|
|
|
err = global.DbMap[utils.DbNameIndex].Raw(sqlStr, indexCodes).Scan(&count).Error
|
|
|
if !totalNull.Valid {
|