package data_manage import ( "eta_gn/eta_api/global" "eta_gn/eta_api/utils" "time" ) type EdbDataWind struct { EdbDataId int `gorm:"primaryKey" ` EdbInfoId int EdbCode string DataTime string Value float64 Status int CreateTime time.Time ModifyTime time.Time DataTimestamp int64 } func GetEdbDataWindMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) { sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_wind WHERE edb_code=? ` var tmpDate SmmMaxOrMinDate err = global.DmSQL["data"].Raw(sql, edbCode).Scan(&tmpDate).Error if err != nil { return } minDate = tmpDate.MinDate maxDate = tmpDate.MaxDate return } type EdbDataFromWind struct { Close map[string]float64 `json:"CLOSE"` Dt map[string]int64 `json:"DT"` ErrMsg string } func EdbInfoUpdateStatusByEdbInfoId(edbInfoIds []int, isStop int, calculateEdbInfoIds []int) (err error) { o := global.DmSQL["data"].Begin() defer func() { if err != nil { _ = o.Rollback() return } _ = o.Commit() }() // 更改指标的更新状态 if len(edbInfoIds) == 1 { sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id=? ` err = o.Exec(sql, isStop, edbInfoIds[0]).Error if err != nil { return } } else { sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) ` err = o.Exec(sql, isStop, edbInfoIds).Error if err != nil { return } } if len(calculateEdbInfoIds) > 0 { // 批量更新相关联的指标ID sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) ` err = o.Exec(sql, isStop, calculateEdbInfoIds).Error if err != nil { return } } return }