|
@@ -1,36 +1,45 @@
|
|
|
package models
|
|
|
|
|
|
import (
|
|
|
+ sql2 "database/sql"
|
|
|
+ "eta/eta_index_lib/global"
|
|
|
"eta/eta_index_lib/utils"
|
|
|
"fmt"
|
|
|
+ "gorm.io/gorm"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"time"
|
|
|
-
|
|
|
- "github.com/beego/beego/v2/client/orm"
|
|
|
)
|
|
|
|
|
|
//钢联
|
|
|
|
|
|
type MysteelChemicalData struct {
|
|
|
- InputValue float64 `orm:"column(value)" description:"值"`
|
|
|
- DataTime string `orm:"column(data_time)" description:"日期"`
|
|
|
+ InputValue float64 `gorm:"column:value" description:"值"`
|
|
|
+ DataTime string `gorm:"column:data_time" description:"日期"`
|
|
|
+}
|
|
|
+
|
|
|
+// AfterFind 在该模型上设置钩子函数,把日期转成正确的string,所以查询函数只能用Find函数,First或者Scan是不会触发该函数的来获取数据
|
|
|
+func (m *MysteelChemicalData) AfterFind(db *gorm.DB) (err error) {
|
|
|
+ m.DataTime = utils.GormDateStrToDateStr(m.DataTime)
|
|
|
+
|
|
|
+ return
|
|
|
}
|
|
|
|
|
|
func GetMysteelChemicalDataByCondition(condition string, pars []interface{}) (item []*MysteelChemicalData, err error) {
|
|
|
sql1 := ` SELECT * FROM base_from_mysteel_chemical_data WHERE 1=1 `
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
if condition != "" {
|
|
|
sql1 += condition
|
|
|
}
|
|
|
sql := `select * from (` + sql1 + ` having 1 order by modify_time DESC ) tmp GROUP BY data_time ORDER BY data_time DESC `
|
|
|
- _, err = o.Raw(sql, pars).QueryRows(&item)
|
|
|
+ //_, err = o.Raw(sql, pars).QueryRows(&item)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, pars...).Find(&item).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// AddEdbDataFromMysteelChemical 新增钢联指标数据
|
|
|
func AddEdbDataFromMysteelChemical(edbCode string) (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
|
|
|
var condition string
|
|
|
var pars []interface{}
|
|
@@ -51,6 +60,7 @@ func AddEdbDataFromMysteelChemical(edbCode string) (err error) {
|
|
|
if dataLen > 0 {
|
|
|
var isAdd bool
|
|
|
addSql := ` INSERT INTO edb_data_mysteel_chemical (edb_info_id,edb_code,data_time,value,create_time,modify_time,data_timestamp) values `
|
|
|
+ addSql = utils.ReplaceDriverKeywords("", addSql)
|
|
|
for i := 0; i < dataLen; i++ {
|
|
|
item := mysteelChemicalDataList[i]
|
|
|
eDate := item.DataTime
|
|
@@ -72,7 +82,8 @@ func AddEdbDataFromMysteelChemical(edbCode string) (err error) {
|
|
|
if isAdd {
|
|
|
addSql = strings.TrimRight(addSql, ",")
|
|
|
utils.FileLog.Info("addSql:" + addSql)
|
|
|
- _, err = o.Raw(addSql).Exec()
|
|
|
+ //_, err = o.Raw(addSql).Exec()
|
|
|
+ err = global.DEFAULT_DB.Exec(addSql).Error
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
@@ -86,7 +97,7 @@ func RefreshEdbDataFromMysteelChemical(edbInfoId int, edbCode, startDate string)
|
|
|
source := utils.DATA_SOURCE_MYSTEEL_CHEMICAL
|
|
|
subSource := utils.DATA_SUB_SOURCE_EDB
|
|
|
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
@@ -116,7 +127,7 @@ func RefreshEdbDataFromMysteelChemical(edbInfoId int, edbCode, startDate string)
|
|
|
var isFindConfigDateRealData bool //是否找到配置日期的实际数据的值
|
|
|
{
|
|
|
edbDataInsertConfig, err = GetEdbDataInsertConfigByEdbId(edbInfoId)
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ if err != nil && !utils.IsErrNoRow(err) {
|
|
|
return
|
|
|
}
|
|
|
if edbDataInsertConfig != nil {
|
|
@@ -144,6 +155,7 @@ func RefreshEdbDataFromMysteelChemical(edbInfoId int, edbCode, startDate string)
|
|
|
}
|
|
|
|
|
|
addSql := ` INSERT INTO edb_data_mysteel_chemical(edb_info_id,edb_code,data_time,value,create_time,modify_time,data_timestamp) values `
|
|
|
+ addSql = utils.ReplaceDriverKeywords("", addSql)
|
|
|
var isAdd bool
|
|
|
addMap := make(map[string]string)
|
|
|
for _, v := range mysteelChemicalDataList {
|
|
@@ -192,7 +204,8 @@ func RefreshEdbDataFromMysteelChemical(edbInfoId int, edbCode, startDate string)
|
|
|
|
|
|
if isAdd {
|
|
|
addSql = strings.TrimRight(addSql, ",")
|
|
|
- _, err = o.Raw(addSql).Exec()
|
|
|
+ //_, err = o.Raw(addSql).Exec()
|
|
|
+ err = global.DEFAULT_DB.Exec(addSql).Error
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|
|
@@ -202,7 +215,8 @@ func RefreshEdbDataFromMysteelChemical(edbInfoId int, edbCode, startDate string)
|
|
|
|
|
|
// 上海钢联指标数据
|
|
|
type BaseFromMysteelChemicalIndex struct {
|
|
|
- BaseFromMysteelChemicalIndexId int64 `orm:"column(base_from_mysteel_chemical_index_id);pk"`
|
|
|
+ BaseFromMysteelChemicalIndexId int64 `gorm:"column:base_from_mysteel_chemical_index_id;primaryKey"`
|
|
|
+ //BaseFromMysteelChemicalIndexId int64 `orm:"column(base_from_mysteel_chemical_index_id);pk"`
|
|
|
BaseFromMysteelChemicalClassifyId int `description:"分类id"`
|
|
|
IndexCode string `description:"指标编码"`
|
|
|
IndexName string `description:"指标名称"`
|
|
@@ -229,6 +243,13 @@ type BaseFromMysteelChemicalIndex struct {
|
|
|
IsSupplierStop int `description:"是否供应商停更:1:停更,0:未停更"`
|
|
|
}
|
|
|
|
|
|
+func (e *BaseFromMysteelChemicalIndex) AfterFind(db *gorm.DB) (err error) {
|
|
|
+ e.UpdateTime = utils.GormDateStrToDateStr(e.UpdateTime)
|
|
|
+ e.UpdateTime2 = utils.GormDateStrToDateStr(e.UpdateTime2)
|
|
|
+
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
type MysteelChemicalAPiCheck struct {
|
|
|
IsEnable bool
|
|
|
ErrMsg string
|
|
@@ -236,16 +257,18 @@ type MysteelChemicalAPiCheck struct {
|
|
|
|
|
|
// GetIndexRefreshAllByMergeFile 根据合并文件去分组查询需要刷新的文件
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexRefreshAllByMergeFile() (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE merge_file_path <>'' AND base_from_mysteel_chemical_classify_id NOT IN(54,55,56,57) GROUP BY merge_file_path`
|
|
|
- _, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexItem(indexCode string) (item *BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code = ? `
|
|
|
- err = o.Raw(sql, indexCode).QueryRow(&item)
|
|
|
+ //err = o.Raw(sql, indexCode).QueryRow(&item)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, indexCode).First(&item).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -253,43 +276,47 @@ func (m *BaseFromMysteelChemicalIndex) GetBatchIndexItem(indexCodes []string) (i
|
|
|
if len(indexCodes) <= 0 {
|
|
|
return
|
|
|
}
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_code IN (%s) `
|
|
|
holder := make([]string, 0, len(indexCodes))
|
|
|
for range indexCodes {
|
|
|
holder = append(holder, "?")
|
|
|
}
|
|
|
sql = fmt.Sprintf(sql, strings.Join(holder, ","))
|
|
|
- _, err = o.Raw(sql, indexCodes).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, indexCodes).Find(&items).Error
|
|
|
+ //_, err = o.Raw(sql, indexCodes).QueryRows(&items)
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexCreate(terminalCode string) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE index_name = '' AND terminal_code = ? `
|
|
|
- _, err = o.Raw(sql, terminalCode).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, terminalCode).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, terminalCode).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// Add 新增
|
|
|
func (m *BaseFromMysteelChemicalIndex) Add() (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.Insert(m)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.Insert(m)
|
|
|
+ err = global.DEFAULT_DB.Create(&m).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalIndex) Update(cols []string) (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.Update(m, cols...)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.Update(m, cols...)
|
|
|
+ err = global.DEFAULT_DB.Model(&m).Select(cols).Updates(&m).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetNoMergeIndexByFrequencyCount 获取未合并的指标总数量
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetNoMergeIndexByFrequencyCount(frequency string) (total int64, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT count(1) AS total FROM base_from_mysteel_chemical_index WHERE frequency = ? AND merge_file_path = '' AND index_name NOT LIKE "%停%" `
|
|
|
- err = o.Raw(sql, frequency).QueryRow(&total)
|
|
|
-
|
|
|
+ //err = o.Raw(sql, frequency).QueryRow(&total)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, frequency).Scan(&total).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -302,10 +329,10 @@ type GetMaxFileIndexReq struct {
|
|
|
|
|
|
// GetMaxFileIndex 获取最大文件的
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetMaxFileIndex(frequency string) (item *BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE frequency=? AND index_name NOT LIKE "%停%" ORDER BY file_index DESC `
|
|
|
- err = o.Raw(sql, frequency).QueryRow(&item)
|
|
|
-
|
|
|
+ ///err = o.Raw(sql, frequency).QueryRow(&item)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, frequency).First(&item).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -317,9 +344,10 @@ type GetNoMergeIndexByFrequencyPageReq struct {
|
|
|
|
|
|
// GetNoMergeIndexByFrequencyPage 获取未合并的指标列表
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetNoMergeIndexByFrequencyPage(frequency string, limit int) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE frequency=? AND merge_file_path = '' limit ? `
|
|
|
- _, err = o.Raw(sql, frequency, limit).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, frequency, limit).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, frequency, limit).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -328,25 +356,28 @@ type GetIndexCountByMergeFilePathReq struct {
|
|
|
}
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexCountByMergeFilePath(mergeFilePath string) (total int64, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT count(1) AS total FROM base_from_mysteel_chemical_index WHERE merge_file_path = ?`
|
|
|
- err = o.Raw(sql, mergeFilePath).QueryRow(&total)
|
|
|
+ //err = o.Raw(sql, mergeFilePath).QueryRow(&total)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, mergeFilePath).Scan(&total).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetIndexRefreshMethanolByMergeFile 根据合并文件去分组查询需要刷新的甲醇文件
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexRefreshMethanolByMergeFile() (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE merge_file_path <> '' AND base_from_mysteel_chemical_classify_id IN(54,55,56,57) GROUP BY merge_file_path`
|
|
|
- _, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetIndexRefreshMethanolByTimely 获取需要及时刷新的文件
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexRefreshMethanolByTimely() (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE merge_file_path <> '' AND is_refresh = 1 GROUP BY merge_file_path`
|
|
|
- _, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -356,9 +387,10 @@ type GetIndexByFrequencyReq struct {
|
|
|
|
|
|
// GetIndexByFrequency 根据频率获取指标
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexByFrequency(frequency string) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE frequency = ? AND merge_file_path = '' `
|
|
|
- _, err = o.Raw(sql, frequency).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, frequency).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, frequency).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -370,9 +402,10 @@ type GetIndexRefreshWeekReq struct {
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexRefreshWeek(nowWeekZn, startTime, endTime string) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
where := `update_week = ? AND ((update_time >= ? AND update_time <= ?) OR (update_time2 >= ? AND update_time2 <= ?)) `
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := fmt.Sprintf(`SELECT * FROM base_from_mysteel_chemical_index WHERE %s `, where)
|
|
|
- _, err = o.Raw(sql, nowWeekZn, startTime, endTime, startTime, endTime).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, nowWeekZn, startTime, endTime, startTime, endTime).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, nowWeekZn, startTime, endTime, startTime, endTime).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -389,8 +422,9 @@ func (m *BaseFromMysteelChemicalIndex) UpdateIndex(item *BaseFromMysteelChemical
|
|
|
if len(updateCols) == 0 {
|
|
|
return
|
|
|
}
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.Update(item, updateCols...)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.Update(item, updateCols...)
|
|
|
+ err = global.DEFAULT_DB.Model(&item).Select(updateCols).Updates(&item).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -399,7 +433,7 @@ func (m *BaseFromMysteelChemicalIndex) MultiUpdateIndex(items []UpdateIndexReq)
|
|
|
if len(items) == 0 {
|
|
|
return
|
|
|
}
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
for _, v := range items {
|
|
|
if len(v.UpdateCols) == 0 {
|
|
|
continue
|
|
@@ -407,7 +441,8 @@ func (m *BaseFromMysteelChemicalIndex) MultiUpdateIndex(items []UpdateIndexReq)
|
|
|
if v.Item == nil {
|
|
|
continue
|
|
|
}
|
|
|
- if _, e := o.Update(v.Item, v.UpdateCols...); e != nil {
|
|
|
+ //if _, e := o.Update(v.Item, v.UpdateCols...); e != nil {
|
|
|
+ if e := global.DEFAULT_DB.Model(&v.Item).Select(v.UpdateCols).Updates(&v.Item).Error; e != nil {
|
|
|
err = fmt.Errorf("update err: %s", e.Error())
|
|
|
return
|
|
|
}
|
|
@@ -434,7 +469,8 @@ type HandleMysteelIndexResp struct {
|
|
|
|
|
|
// 上海钢联指标数据
|
|
|
type BaseFromMysteelChemicalData struct {
|
|
|
- BaseFromMysteelChemicalDataId int64 `orm:"column(base_from_mysteel_chemical_data_id);pk"`
|
|
|
+ BaseFromMysteelChemicalDataId int64 `gorm:"column:base_from_mysteel_chemical_data_id;primaryKey"`
|
|
|
+ //BaseFromMysteelChemicalDataId int64 `orm:"column(base_from_mysteel_chemical_data_id);pk"`
|
|
|
BaseFromMysteelChemicalIndexId int64
|
|
|
IndexCode string
|
|
|
DataTime time.Time
|
|
@@ -446,23 +482,26 @@ type BaseFromMysteelChemicalData struct {
|
|
|
|
|
|
// GetIndexDataList 根据指标编码获取数据
|
|
|
func (d *BaseFromMysteelChemicalData) GetIndexDataList(indexCode string) (item []*BaseFromMysteelChemicalData, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_data WHERE index_code = ? `
|
|
|
- _, err = o.Raw(sql, indexCode).QueryRows(&item)
|
|
|
+ //_, err = o.Raw(sql, indexCode).QueryRows(&item)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, indexCode).Find(&item).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// Update 修改
|
|
|
func (r *BaseFromMysteelChemicalData) Update(updateCols []string) (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.Update(r, updateCols...)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.Update(r, updateCols...)
|
|
|
+ err = global.DEFAULT_DB.Model(&r).Select(updateCols).Updates(&r).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// Add 新增
|
|
|
func (r *BaseFromMysteelChemicalData) Add(list []BaseFromMysteelChemicalData) (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.InsertMulti(500, list)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.InsertMulti(500, list)
|
|
|
+ err = global.DEFAULT_DB.CreateInBatches(list, utils.MultiAddNum).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -471,8 +510,9 @@ func (r *BaseFromMysteelChemicalData) AddV2(list []*BaseFromMysteelChemicalData)
|
|
|
if len(list) == 0 {
|
|
|
return
|
|
|
}
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.InsertMulti(500, list)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.InsertMulti(500, list)
|
|
|
+ err = global.DEFAULT_DB.CreateInBatches(list, utils.MultiAddNum).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -490,22 +530,23 @@ type GetIndexDetailReq struct {
|
|
|
|
|
|
// GetIndexCountByFrequency 获取未合并的指标总数量
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexCountByFrequency(condition string, pars []interface{}) (total int64, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
|
|
|
sql := `SELECT count(1) AS total FROM base_from_mysteel_chemical_index WHERE 1=1 `
|
|
|
if condition != "" {
|
|
|
sql += condition
|
|
|
}
|
|
|
- err = o.Raw(sql, pars).QueryRow(&total)
|
|
|
-
|
|
|
+ //err = o.Raw(sql, pars).QueryRow(&total)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, pars...).Scan(&total).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetNoMergeIndexByFrequencyPage 获取未合并的指标列表
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexLimitByFrequency(frequency string, limit int) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE frequency=? limit ? `
|
|
|
- _, err = o.Raw(sql, frequency, limit).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, frequency, limit).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, frequency, limit).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -519,67 +560,73 @@ type GetIndexPageByFrequencyPageReq struct {
|
|
|
|
|
|
// GetNoMergeIndexByFrequencyPage 获取未合并的指标列表
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexPageByFrequency(condition string, pars []interface{}, startSize, pageSize int) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
|
|
|
if condition != "" {
|
|
|
sql += condition
|
|
|
}
|
|
|
sql += ` LIMIT ?,? `
|
|
|
- _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+ pars = append(pars, startSize, pageSize)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, pars...).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func (d *BaseFromMysteelChemicalData) GetMysteelIndexInfoMaxAndMinInfo(indexCode string) (item *EdbInfoMaxAndMinInfo, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date,MIN(value) AS min_value,MAX(value) AS max_value FROM base_from_mysteel_chemical_data WHERE index_code=? `
|
|
|
- err = o.Raw(sql, indexCode).QueryRow(&item)
|
|
|
-
|
|
|
+ //err = o.Raw(sql, indexCode).QueryRow(&item)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, indexCode).First(&item).Error
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// 获取最新值
|
|
|
- var latest_value float64
|
|
|
sql = ` SELECT value AS latest_value FROM base_from_mysteel_chemical_data WHERE index_code=? ORDER BY data_time DESC LIMIT 1 `
|
|
|
- err = o.Raw(sql, indexCode).QueryRow(&latest_value)
|
|
|
- if err != nil {
|
|
|
- return
|
|
|
+ //err = o.Raw(sql, indexCode).QueryRow(&latest_value)
|
|
|
+ var latestValueNull sql2.NullFloat64
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, indexCode).Scan(&latestValueNull).Error
|
|
|
+ if err == nil && latestValueNull.Valid {
|
|
|
+ item.LatestValue = latestValueNull.Float64
|
|
|
}
|
|
|
- item.LatestValue = latest_value
|
|
|
|
|
|
return
|
|
|
}
|
|
|
|
|
|
func (d *BaseFromMysteelChemicalData) ModifyMysteelIndexMaxAndMinInfo(indexCode string, item *EdbInfoMaxAndMinInfo) (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := ` UPDATE base_from_mysteel_chemical_index SET start_date=?,end_date=?,end_value=?,modify_time=NOW() WHERE index_code=? `
|
|
|
- _, err = o.Raw(sql, item.MinDate, item.MaxDate, item.LatestValue, indexCode).Exec()
|
|
|
+ //_, err = o.Raw(sql, item.MinDate, item.MaxDate, item.LatestValue, indexCode).Exec()
|
|
|
+ err = global.DEFAULT_DB.Exec(sql, item.MinDate, item.MaxDate, item.LatestValue, indexCode).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
// GetIndexByCondition 获取指标
|
|
|
func (m *BaseFromMysteelChemicalIndex) GetIndexByCondition(condition string, pars []interface{}) (items []*BaseFromMysteelChemicalIndex, err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
+ //o := orm.NewOrm()
|
|
|
sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE 1=1 `
|
|
|
if condition != "" {
|
|
|
sql += condition
|
|
|
}
|
|
|
- _, err = o.Raw(sql, pars).QueryRows(&items)
|
|
|
+ //_, err = o.Raw(sql, pars).QueryRows(&items)
|
|
|
+ err = global.DEFAULT_DB.Raw(sql, pars...).Find(&items).Error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
type BaseFromMysteelChemicalRecord struct {
|
|
|
- BaseFromMysteelChemicalRecordId int64 `orm:"column(base_from_mysteel_chemical_record_id);pk"`
|
|
|
- BaseFromMysteelChemicalIndexId int64
|
|
|
- OldIndexName string `description:"原始名称"`
|
|
|
- NewIndexName string `description:"新的名称"`
|
|
|
- CreateTime time.Time `description:"记录创建时间"`
|
|
|
- Timestamp int64 `description:"记录创建时间戳"`
|
|
|
+ BaseFromMysteelChemicalRecordId int64 `gorm:"column:base_from_mysteel_chemical_record_id;primaryKey"`
|
|
|
+ //BaseFromMysteelChemicalRecordId int64 `orm:"column(base_from_mysteel_chemical_record_id);pk"`
|
|
|
+ BaseFromMysteelChemicalIndexId int64
|
|
|
+ OldIndexName string `description:"原始名称"`
|
|
|
+ NewIndexName string `description:"新的名称"`
|
|
|
+ CreateTime time.Time `description:"记录创建时间"`
|
|
|
+ Timestamp int64 `description:"记录创建时间戳"`
|
|
|
}
|
|
|
|
|
|
func (m *BaseFromMysteelChemicalRecord) AddBaseFromMysteelChemicalRecord() (err error) {
|
|
|
- o := orm.NewOrm()
|
|
|
- _, err = o.Insert(m)
|
|
|
+ //o := orm.NewOrm()
|
|
|
+ //_, err = o.Insert(m)
|
|
|
+ err = global.DEFAULT_DB.Create(&m).Error
|
|
|
return
|
|
|
}
|
|
|
|