package data_manage

import (
	"eta/eta_api/global"
	"eta/eta_api/utils"
	"time"
)

type EdbDataPb struct {
	//EdbDataId     int `orm:"column(edb_data_id);pk"`
	EdbDataId     int `gorm:"column:edb_data_id;primaryKey"`
	EdbInfoId     int
	EdbCode       string
	DataTime      string
	Value         float64
	Status        int
	CreateTime    time.Time
	ModifyTime    time.Time
	Ticker        string
	Field         string
	DataTimestamp int64
}

func GetEdbDataPbMaxOrMinDate(edbCode string) (min_date, max_date string, err error) {
	//o := orm.NewOrmUsingDB("data")
	//sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_pb WHERE edb_code=? `
	//err = o.Raw(sql, edbCode).QueryRow(&min_date, &max_date)
	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_pb WHERE edb_code=? `
	var maxAndMinDate MaxAndMinDate
	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbCode).First(&maxAndMinDate).Error
	if err != nil {
		return
	}
	min_date = maxAndMinDate.MinDate.Format(utils.FormatDate)
	max_date = maxAndMinDate.MaxDate.Format(utils.FormatDate)
	return
}