浏览代码

改成orm

xyxie 2 月之前
父节点
当前提交
2a576f59f4
共有 33 个文件被更改,包括 536 次插入514 次删除
  1. 5 4
      models/data_manage/edb_classify.go
  2. 1 1
      models/data_manage/edb_data_base.go
  3. 15 14
      models/data_manage/edb_data_calculate.go
  4. 5 4
      models/data_manage/edb_data_calculate_ljztbpj.go
  5. 5 4
      models/data_manage/edb_data_calculate_zjpj.go
  6. 22 22
      models/data_manage/edb_data_cffex.go
  7. 21 21
      models/data_manage/edb_data_dl.go
  8. 17 17
      models/data_manage/edb_data_gl.go
  9. 14 13
      models/data_manage/edb_data_lt.go
  10. 11 10
      models/data_manage/edb_data_lz.go
  11. 17 17
      models/data_manage/edb_data_manual.go
  12. 13 12
      models/data_manage/edb_data_pb.go
  13. 4 3
      models/data_manage/edb_data_quarter.go
  14. 22 22
      models/data_manage/edb_data_sh.go
  15. 22 22
      models/data_manage/edb_data_shfe.go
  16. 11 10
      models/data_manage/edb_data_ths.go
  17. 13 12
      models/data_manage/edb_data_wind.go
  18. 7 7
      models/data_manage/edb_data_ys.go
  19. 21 21
      models/data_manage/edb_data_zz.go
  20. 48 47
      models/data_manage/edb_info.go
  21. 25 24
      models/data_manage/edb_info_calculate_mapping.go
  22. 14 13
      models/data_manage/edb_info_relation.go
  23. 5 4
      models/data_manage/edb_info_update_log.go
  24. 1 1
      models/data_manage/edb_source.go
  25. 11 11
      models/data_manage/edb_update_log.go
  26. 24 28
      models/data_manage/factor_edb_series_chart_mapping.go
  27. 24 28
      models/data_manage/factor_edb_series_mapping.go
  28. 11 11
      models/data_manage/meeting_probabilities.go
  29. 5 5
      models/data_manage/ppt_v2_save_log.go
  30. 4 3
      models/data_manage/report_save_log.go
  31. 68 80
      models/data_manage/trade_position_analysis.go
  32. 43 17
      models/data_manage/trade_position_analysis_guangzhou.go
  33. 7 6
      models/data_manage/user_record.go

+ 5 - 4
models/data_manage/edb_classify.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 type EdbClassify struct {
-	ClassifyID         int64 `orm:"column(classify_id);pk"`
+	ClassifyID         int64 `orm:"column(classify_id);pk" gorm:"primaryKey"`
 	ClassifyType       uint32
 	ClassifyName       string
 	ParentID           int64
@@ -32,13 +33,13 @@ type EdbClassify struct {
 // @return item []*EdbInfoUpdateLog
 // @return err error
 func GetAllEdbClassifyListByCondition(condition string, pars []interface{}) (item []*EdbClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_classify WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY classify_id ASC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 
 	return
 }

+ 1 - 1
models/data_manage/edb_data_base.go

@@ -377,7 +377,7 @@ func GetAddSql(edbInfoId, edbCode, dataTime, timestampStr, value string) (addSql
 }
 
 type EdbDataBase struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string

+ 15 - 14
models/data_manage/edb_data_calculate.go

@@ -1,40 +1,41 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 func GetEdbDataCalculateByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_calculate WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataCalculate(edbInfoId int64, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_calculate SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }
 
 func AddEdbDataCalculateBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 // DeleteEdbDataCalculateBySql 根据删除sql删除指标数据
 func DeleteEdbDataCalculateBySql(deleteStr string, edbInfoId int) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(deleteStr, edbInfoId).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(deleteStr, edbInfoId).Error
 	return
 }
 
 type EdbInfoCalculateDetail struct {
-	EdbInfoCalculateId int       `orm:"column(edb_info_calculate_id);pk"`
+	EdbInfoCalculateId int       `orm:"column(edb_info_calculate_id);pk" gorm:"primaryKey"`
 	EdbInfoId          int       `description:"指标id"`
 	EdbCode            string    `description:"指标编码"`
 	FromEdbInfoId      int       `description:"计算指标id"`
@@ -51,22 +52,22 @@ type EdbInfoCalculateDetail struct {
 }
 
 func GetEdbInfoCalculateDetail(edbInfoId int) (list []*EdbInfoCalculateDetail, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT a.*,b.start_date,b.end_date FROM edb_info_calculate_mapping AS a
 			INNER JOIN edb_info AS b ON a.from_edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id=? ORDER BY sort ASC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&list)
+	err = o.Raw(sql, edbInfoId).Find(&list).Error
 	return
 }
 
 func GetEdbInfoCalculateMap(edbInfoId, source int) (list []*EdbInfoCalculateDetail, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 
 	calculateTableName := GetEdbInfoCalculateTableName(source)
 	sql := ` SELECT a.*,b.start_date,b.end_date,b.edb_type FROM %s AS a
 			INNER JOIN edb_info AS b ON a.from_edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id=? ORDER BY sort ASC `
 	sql = fmt.Sprintf(sql, calculateTableName)
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&list)
+	err = o.Raw(sql, edbInfoId).Find(&list).Error
 	return
 }

+ 5 - 4
models/data_manage/edb_data_calculate_ljztbpj.go

@@ -1,13 +1,14 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 // EdbDataCalculateLjztbpj 累计值同比拼接数据结构体
 type EdbDataCalculateLjztbpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -20,8 +21,8 @@ type EdbDataCalculateLjztbpj struct {
 
 // GetAllEdbDataCalculateLjztbpjByEdbInfoId 根据指标id获取全部的数据
 func GetAllEdbDataCalculateLjztbpjByEdbInfoId(edbInfoId int) (items []*EdbDataCalculateLjztbpj, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_data_calculate_ljztbpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = o.Raw(sql, edbInfoId).Find(&items).Error
 	return
 }

+ 5 - 4
models/data_manage/edb_data_calculate_zjpj.go

@@ -1,13 +1,14 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 // EdbDataCalculateZjpj 直接拼接数据结构体
 type EdbDataCalculateZjpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -20,8 +21,8 @@ type EdbDataCalculateZjpj struct {
 
 // GetAllEdbDataCalculateZjpjByEdbInfoId 根据指标id获取全部的数据
 func GetAllEdbDataCalculateZjpjByEdbInfoId(edbInfoId int) (items []*EdbDataCalculateZjpj, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_data_calculate_zjpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = o.Raw(sql, edbInfoId).Find(&items).Error
 	return
 }

+ 22 - 22
models/data_manage/edb_data_cffex.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
@@ -15,7 +15,7 @@ type CffexData struct {
 }
 
 type BaseFromCffexDataSimple struct {
-	Id        int `orm:"column(base_from_trade_cffex_index_id);pk"`
+	Id        int `orm:"column(base_from_trade_cffex_index_id);pk" gorm:"primaryKey"`
 	DealCode  string
 	BuyCode   string
 	SoldCode  string
@@ -32,7 +32,7 @@ type BaseInfoFromCffex struct {
 }
 
 type BaseFromTradeCFFEXIndex struct {
-	BaseFromTradeCffexIndexId int `orm:"column(base_from_trade_cffex_index_id);pk"`
+	BaseFromTradeCffexIndexId int `orm:"column(base_from_trade_cffex_index_id);pk" gorm:"primaryKey"`
 	Rank                      int
 	DealShortName             string
 	DealName                  string
@@ -58,18 +58,18 @@ type BaseFromTradeCFFEXIndex struct {
 }
 
 func GetEdbDataCffexMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_cffex WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
+	err = o.Raw(sql, edbCode).Row().Scan(&minDate, &maxDate)
 	return
 }
 
 // RefreshEdbDataByCffex 刷新中金所指标数据
 func RefreshEdbDataByCffex(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -160,7 +160,7 @@ func RefreshEdbDataByCffex(edbInfoId int, edbCode, startDate, endDate string) (e
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}
@@ -170,48 +170,48 @@ func RefreshEdbDataByCffex(edbInfoId int, edbCode, startDate, endDate string) (e
 
 // GetBaseInfoFromCffexByIndexCode 获取指标信息
 func GetBaseInfoFromCffexByIndexCode(indexCode, suffix string) (list []*BaseInfoFromCffex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_cffex_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetCffexDataByTradeCode(condition string, pars []interface{}) (item []*BaseFromCffexDataSimple, err error) {
 	sql := ` SELECT * FROM base_from_trade_cffex_index WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func AddEdbDataCffexBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetBaseFromCffexDataAllByIndexCode(indexCode, suffix string) (list []*BaseFromTradeCFFEXIndex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_cffex_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetEdbDataCffexByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_cffex WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataCffex(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_cffex SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 21 - 21
models/data_manage/edb_data_dl.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
@@ -15,7 +15,7 @@ type DlData struct {
 }
 
 type BaseFromDlDataSimple struct {
-	Id        int `orm:"column(base_from_trade_dalian_index_id);pk"`
+	Id        int `orm:"column(base_from_trade_dalian_index_id);pk" gorm:"primaryKey"`
 	DealCode  string
 	BuyCode   string
 	SoldCode  string
@@ -32,18 +32,18 @@ type BaseInfoFromDl struct {
 }
 
 func GetEdbDataDlMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_dl WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
+	err = o.Raw(sql, edbCode).Row().Scan(&minDate, &maxDate)
 	return
 }
 
 // RefreshEdbDataByDl 刷新大商所指标数据
 func RefreshEdbDataByDl(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -134,7 +134,7 @@ func RefreshEdbDataByDl(edbInfoId int, edbCode, startDate, endDate string) (err
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}
@@ -144,48 +144,48 @@ func RefreshEdbDataByDl(edbInfoId int, edbCode, startDate, endDate string) (err
 
 // GetBaseInfoFromDalianByIndexCode 获取指标信息
 func GetBaseInfoFromDalianByIndexCode(indexCode, suffix string) (list []*BaseInfoFromDl, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_dalian_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetDlDataByTradeCode(condition string, pars []interface{}) (item []*BaseFromDlDataSimple, err error) {
 	sql := ` SELECT * FROM base_from_trade_dalian_index WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func AddEdbDataDlBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetBaseFromDalianDataAllByIndexCode(indexCode, suffix string) (list []*BaseFromTradeDalianIndex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_dalian_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetEdbDataDlByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_dl WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataDl(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_dl SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 17 - 17
models/data_manage/edb_data_gl.go

@@ -1,17 +1,17 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
 )
 
 func AddEdbDataGlBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
@@ -22,43 +22,43 @@ type GlData struct {
 
 func GetGlDataByTradeCode(condition string, pars []interface{}) (item []*GlData, err error) {
 	//sql := ` SELECT * FROM mb_index_main_data WHERE 1=1 AND DATA_VALUE is not null `
-	//o := orm.NewOrm()
+	//o := global.DbMap[utils.DbNameIndex]
 	//if condition != "" {
 	//	sql += condition
 	//}
 	//sql += ` ORDER BY PUBLISH_TIME DESC `
 	condition += " AND IS_DELETE=0 "
 	sql1 := ` SELECT * FROM mb_index_main_data WHERE 1=1 AND DATA_VALUE is not null `
-	o := orm.NewOrmUsingDB("gl")
+	o := global.DbMap[utils.DbNameGL]
 	if condition != "" {
 		sql1 += condition
 	}
 	sql := `select * from (` + sql1 + ` having 1 order by PUBLISH_TIME DESC ) tmp group by DATA_DATE ORDER BY PUBLISH_TIME DESC `
 
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars...).Find(&item).Error
 	return
 }
 
 func GetEdbDataGlByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_gl WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataGl(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_gl SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }
 
 // 刷新钢联指标数据
 func RefreshEdbDataByGl(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -98,7 +98,7 @@ func RefreshEdbDataByGl(edbInfoId int, edbCode, startDate, endDate string) (err
 	dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_GL, utils.DATA_SUB_SOURCE_EDB)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = o.Raw(sql, edbInfoId).Find(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -132,7 +132,7 @@ func RefreshEdbDataByGl(edbInfoId int, edbCode, startDate, endDate string) (err
 				if existVal != item.InputValue {
 					sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = tx.Raw(sql, item.InputValue, edbInfoId, v.DataTime).Exec()
+					err = tx.Exec(sql, item.InputValue, edbInfoId, v.DataTime).Error
 					if err != nil {
 						return err
 					}
@@ -143,7 +143,7 @@ func RefreshEdbDataByGl(edbInfoId int, edbCode, startDate, endDate string) (err
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}

+ 14 - 13
models/data_manage/edb_data_lt.go

@@ -2,15 +2,16 @@ package data_manage
 
 import (
 	"encoding/json"
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
-	"github.com/rdlucklib/rdluck_tools/http"
 	"time"
+
+	"github.com/rdlucklib/rdluck_tools/http"
 )
 
 type EdbDataLt struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -23,37 +24,37 @@ type EdbDataLt struct {
 
 // AddEdbDataLtBySql 执行添加数据的sql
 func AddEdbDataLtBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 // ModifyEdbDataLt 修改路透社数据
 func ModifyEdbDataLt(edbInfoId int64, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_lt SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }
 
 func GetEdbDataLtMaxOrMinDate(edbCode string) (min_date, max_date string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_lt WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&min_date, &max_date)
+	err = o.Raw(sql, edbCode).Row().Scan(&min_date, &max_date)
 	return
 }
 
 func GetEdbDataLtByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_lt WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func GetEdbDataLtByCode(edbCode string, size int) (items []*EdbInfoSearchData, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_data_lt WHERE edb_code=? ORDER BY data_time DESC LIMIT ? `
-	_, err = o.Raw(sql, edbCode, size).QueryRows(&items)
+	err = o.Raw(sql, edbCode, size).Find(&items).Error
 	return
 }
 

+ 11 - 10
models/data_manage/edb_data_lz.go

@@ -1,7 +1,8 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 )
 
 type lzSurveyData struct {
@@ -10,7 +11,7 @@ type lzSurveyData struct {
 }
 
 type LongzhongSurveyData struct {
-	SurveyDataId         int `orm:"column(survey_data_id);pk"`
+	SurveyDataId         int `orm:"column(survey_data_id);pk" gorm:"primaryKey"`
 	SurveyProductId      int
 	ProjectQuotaId       int64
 	BreedId              string
@@ -47,32 +48,32 @@ func GetLzSurveyDataByTradeCode(condition string, pars []interface{}) (item []*l
 	sql := ` SELECT  a.* FROM longzhong_survey_data AS a
 				INNER JOIN longzhong_survey_product AS b ON a.survey_product_id=b.survey_product_id
 				WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY a.data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func GetLzSurveyDataExistByTradeCode(surveyProductId int) (items []*LongzhongSurveyData, err error) {
 	sql := ` SELECT  * FROM longzhong_survey_data WHERE 1=1 AND survey_product_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, surveyProductId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Raw(sql, surveyProductId).Find(&items).Error
 	return
 }
 
 func GetEdbDataLzByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_lz WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataLz(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_lz SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 17 - 17
models/data_manage/edb_data_manual.go

@@ -1,29 +1,29 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
 )
 
 func AddEdbDataManualBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetEdbDataManualMaxOrMinDate(edbCode string) (min_date, max_date string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_manual WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&min_date, &max_date)
+	err = o.Raw(sql, edbCode).Row().Scan(&min_date, &max_date)
 	return
 }
 
 type ManualEdbdata struct {
-	TradeCode  string    `orm:"column(TRADE_CODE);pk" description:"指标编码"`
+	TradeCode  string    `orm:"column(TRADE_CODE);pk" gorm:"primaryKey" description:"指标编码"`
 	Dt         string    `orm:"column(DT)" description:"日期"`
 	Close      float64   `orm:"column(CLOSE)" description:"值"`
 	ModifyTime time.Time `orm:"column(modify_time)" description:"修改时间"`
@@ -31,36 +31,36 @@ type ManualEdbdata struct {
 
 func GetEdbdataManualByTradeCode(condition string, pars []interface{}) (item []*ManualEdbdata, err error) {
 	sql := ` SELECT  * FROM edbdata WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY DT DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func GetEdbDataManualByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_manual WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataManual(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_manual SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }
 
 // 刷新手工指标数据
 func RefreshManual(item *EdbInfoList) (err error) {
 	//edbInfoId int, edbCode, startDate, endDate string
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -144,7 +144,7 @@ func RefreshManual(item *EdbInfoList) (err error) {
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}

+ 13 - 12
models/data_manage/edb_data_pb.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 type EdbDataPb struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -20,35 +21,35 @@ type EdbDataPb struct {
 }
 
 func AddEdbDataPb(items []*EdbDataPb) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(1, items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func ModifyEdbDataPb(edbInfoId int64, edbCode, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_pb SET edb_info_id=?,value=?,status=1,modify_time=NOW() WHERE edb_code=? AND data_time=? `
-	_, err = o.Raw(sql, edbInfoId, value, edbCode, dataTime).Exec()
+	err = o.Exec(sql, edbInfoId, value, edbCode, dataTime).Error
 	return
 }
 
 func ModifyEdbDataPbStatus(edbInfoId int64, edbCode string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_pb SET edb_info_id=?, status=1,modify_time=NOW() WHERE edb_code=? `
-	_, err = o.Raw(sql, edbInfoId, edbCode).Exec()
+	err = o.Exec(sql, edbInfoId, edbCode).Error
 	return
 }
 
 func GetEdbDataPbCount(edbCode, dataTime string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_pb WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, dataTime).QueryRow(&count)
+	err = o.Raw(sql, edbCode, dataTime).Scan(&count).Error
 	return
 }
 
 func GetEdbDataPbMaxOrMinDate(edbInfoId int) (min_date, max_date string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_pb WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&min_date, &max_date)
+	err = o.Raw(sql, edbInfoId).Row().Scan(&min_date, &max_date)
 	return
 }

+ 4 - 3
models/data_manage/edb_data_quarter.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 )
 
 func GetEdbDataQuarterCount(edbInfoId int) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	hsql := `SELECT COUNT(1) AS count FROM edb_data_quarter WHERE edb_info_id=? `
-	err = o.Raw(hsql, edbInfoId).QueryRow(&count)
+	err = o.Raw(hsql, edbInfoId).Scan(&count).Error
 	return
 }

+ 22 - 22
models/data_manage/edb_data_sh.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
@@ -15,7 +15,7 @@ type ShData struct {
 }
 
 type BaseFromShDataSimple struct {
-	Id        int `orm:"column(base_from_trade_shanghai_index_id);pk"`
+	Id        int `orm:"column(base_from_trade_shanghai_index_id);pk" gorm:"primaryKey"`
 	DealCode  string
 	BuyCode   string
 	SoldCode  string
@@ -32,7 +32,7 @@ type BaseInfoFromSh struct {
 }
 
 type BaseFromTradeShIndex struct {
-	BaseFromTradeShIndexId int `orm:"column(base_from_trade_shanghai_index_id);pk"`
+	BaseFromTradeShIndexId int `orm:"column(base_from_trade_shanghai_index_id);pk" gorm:"primaryKey"`
 	Rank                   int
 	DealShortName          string
 	DealName               string
@@ -58,18 +58,18 @@ type BaseFromTradeShIndex struct {
 }
 
 func GetEdbDataShMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_sh WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
+	err = o.Raw(sql, edbCode).Row().Scan(&minDate, &maxDate)
 	return
 }
 
 // RefreshEdbDataBySh 刷新上期所指标数据
 func RefreshEdbDataBySh(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -160,7 +160,7 @@ func RefreshEdbDataBySh(edbInfoId int, edbCode, startDate, endDate string) (err
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}
@@ -170,48 +170,48 @@ func RefreshEdbDataBySh(edbInfoId int, edbCode, startDate, endDate string) (err
 
 // GetBaseInfoFromShByIndexCode 获取指标信息
 func GetBaseInfoFromShByIndexCode(indexCode, suffix string) (list []*BaseInfoFromSh, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_shanghai_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetShDataByTradeCode(condition string, pars []interface{}) (item []*BaseFromShDataSimple, err error) {
 	sql := ` SELECT * FROM base_from_trade_shanghai_index WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func AddEdbDataShBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetBaseFromShDataAllByIndexCode(indexCode, suffix string) (list []*BaseFromTradeShIndex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_shanghai_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetEdbDataShByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_sh WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataSh(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_sh SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 22 - 22
models/data_manage/edb_data_shfe.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
@@ -15,7 +15,7 @@ type ShfeData struct {
 }
 
 type BaseFromShfeDataSimple struct {
-	Id        int `orm:"column(base_from_trade_ine_index_id);pk"`
+	Id        int `orm:"column(base_from_trade_ine_index_id);pk" gorm:"primaryKey"`
 	DealCode  string
 	BuyCode   string
 	SoldCode  string
@@ -32,7 +32,7 @@ type BaseInfoFromShfe struct {
 }
 
 type BaseFromTradeShfeIndex struct {
-	BaseFromTradeShfeIndexId int `orm:"column(base_from_trade_ine_index_id);pk"`
+	BaseFromTradeShfeIndexId int `orm:"column(base_from_trade_ine_index_id);pk" gorm:"primaryKey"`
 	Rank                     int
 	DealShortName            string
 	DealName                 string
@@ -58,18 +58,18 @@ type BaseFromTradeShfeIndex struct {
 }
 
 func GetEdbDataShfeMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_ine WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
+	err = o.Raw(sql, edbCode).Row().Scan(&minDate, &maxDate)
 	return
 }
 
 // RefreshEdbDataByShfe 刷新上期能源指标数据
 func RefreshEdbDataByShfe(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -160,7 +160,7 @@ func RefreshEdbDataByShfe(edbInfoId int, edbCode, startDate, endDate string) (er
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}
@@ -170,48 +170,48 @@ func RefreshEdbDataByShfe(edbInfoId int, edbCode, startDate, endDate string) (er
 
 // GetBaseInfoFromShfeByIndexCode 获取指标信息
 func GetBaseInfoFromShfeByIndexCode(indexCode, suffix string) (list []*BaseInfoFromShfe, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_ine_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetShfeDataByTradeCode(condition string, pars []interface{}) (item []*BaseFromShfeDataSimple, err error) {
 	sql := ` SELECT * FROM base_from_trade_ine_index WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func AddEdbDataShfeBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetBaseFromShfeDataAllByIndexCode(indexCode, suffix string) (list []*BaseFromTradeShfeIndex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_ine_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetEdbDataShfeByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_ine WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataShfe(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_ine SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 11 - 10
models/data_manage/edb_data_ths.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 type EdbDataThs struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -18,28 +19,28 @@ type EdbDataThs struct {
 }
 
 func AddEdbDataThs(items []*EdbDataThs) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(1, items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func ModifyEdbDataThs(edbInfoId int64, edbCode, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_ths SET edb_info_id=?,value=?,status=1,modify_time=NOW() WHERE edb_code=? AND data_time=? `
-	_, err = o.Raw(sql, edbInfoId, value, edbCode, dataTime).Exec()
+	err = o.Exec(sql, edbInfoId, value, edbCode, dataTime).Error
 	return
 }
 
 func GetEdbDataThsCount(ebdCode, dataTime string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_ths WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, ebdCode, dataTime).QueryRow(&count)
+	err = o.Raw(sql, ebdCode, dataTime).Scan(&count).Error
 	return
 }
 
 func GetEdbDataThsMaxOrMinDate(edbInfoId int) (min_date, max_date string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_ths WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&min_date, &max_date)
+	err = o.Raw(sql, edbInfoId).Row().Scan(&min_date, &max_date)
 	return
 }

+ 13 - 12
models/data_manage/edb_data_wind.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 type EdbDataWind struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -18,35 +19,35 @@ type EdbDataWind struct {
 }
 
 func AddEdbDataWind(items []*EdbDataWind) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(1, items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func ModifyEdbDataWind(edbInfoId int64, edbCode, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_wind SET edb_info_id=?,value=?,status=1,modify_time=NOW() WHERE edb_code=? AND data_time=? `
-	_, err = o.Raw(sql, edbInfoId, value, edbCode, dataTime).Exec()
+	err = o.Exec(sql, edbInfoId, value, edbCode, dataTime).Error
 	return
 }
 
 func ModifyEdbDataWindStatus(edbInfoId int64, edbCode string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_wind SET edb_info_id=?, status=1,modify_time=NOW() WHERE edb_code=? `
-	_, err = o.Raw(sql, edbInfoId, edbCode).Exec()
+	err = o.Exec(sql, edbInfoId, edbCode).Error
 	return
 }
 
 func GetEdbDataWindCount(edbCode, dataTime string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_wind WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, dataTime).QueryRow(&count)
+	err = o.Raw(sql, edbCode, dataTime).Scan(&count).Error
 	return
 }
 
 func GetEdbDataWindMaxOrMinDate(edbInfoId int) (min_date, max_date string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS min_date,MAX(data_time) AS max_date FROM edb_data_wind WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&min_date, &max_date)
+	err = o.Raw(sql, edbInfoId).Row().Scan(&min_date, &max_date)
 	return
 }

+ 7 - 7
models/data_manage/edb_data_ys.go

@@ -10,9 +10,9 @@ import (
 	"encoding/hex"
 	"encoding/json"
 	"errors"
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"io/ioutil"
 	"net/http"
 	"net/url"
@@ -21,7 +21,7 @@ import (
 )
 
 type EdbDataYs struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `orm:"column(edb_data_id);pk" gorm:"primaryKey"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -33,15 +33,15 @@ type EdbDataYs struct {
 }
 
 func AddEdbDataSmm(items []*EdbDataYs) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(1, items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func ModifyEdbDataSmm(edbCode, dataTime string, value float64) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_ys SET value=?,status=1,modify_time=NOW() WHERE edb_code=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbCode, dataTime).Exec()
+	err = o.Exec(sql, value, edbCode, dataTime).Error
 	return
 }
 
@@ -244,7 +244,7 @@ func SyncSmmIndexDataBase() {
 									dataItem.CreateTime = time.Now()
 									dataItem.ModifyTime = time.Now()
 									dataItem.DataTimestamp = timestamp
-									_, err = data_manage.AddBaseFromSmmData(dataItem)
+									err = data_manage.AddBaseFromSmmData(dataItem)
 									if err != nil && !strings.Contains(err.Error(), "idx_index_code_date") {
 										fmt.Println("AddBaseFromSmmData Err:" + err.Error())
 										return

+ 21 - 21
models/data_manage/edb_data_zz.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"strings"
 	"time"
@@ -15,7 +15,7 @@ type ZzData struct {
 }
 
 type BaseFromZzDataSimple struct {
-	Id        int `orm:"column(base_from_trade_zhengzhou_index_id);pk"`
+	Id        int `orm:"column(base_from_trade_zhengzhou_index_id);pk" gorm:"primaryKey"`
 	DealCode  string
 	BuyCode   string
 	SoldCode  string
@@ -32,18 +32,18 @@ type BaseInfoFromZz struct {
 }
 
 func GetEdbDataZzMaxOrMinDate(edbCode string) (minDate, maxDate string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT MIN(data_time) AS minDate,MAX(data_time) AS maxDate FROM edb_data_zz WHERE edb_code=? `
-	err = o.Raw(sql, edbCode).QueryRow(&minDate, &maxDate)
+	err = o.Raw(sql, edbCode).Row().Scan(&minDate, &maxDate)
 	return
 }
 
 // RefreshEdbDataByZz 刷新郑商所指标数据
 func RefreshEdbDataByZz(edbInfoId int, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return err
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
@@ -134,7 +134,7 @@ func RefreshEdbDataByZz(edbInfoId int, edbCode, startDate, endDate string) (err
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = tx.Raw(addSql).Exec()
+		err = tx.Exec(addSql, pars...).Error
 		if err != nil {
 			return err
 		}
@@ -144,48 +144,48 @@ func RefreshEdbDataByZz(edbInfoId int, edbCode, startDate, endDate string) (err
 
 // GetBaseInfoFromZhengzhouByIndexCode 获取指标信息
 func GetBaseInfoFromZhengzhouByIndexCode(indexCode, suffix string) (list []*BaseInfoFromZz, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_zhengzhou_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetZzDataByTradeCode(condition string, pars []interface{}) (item []*BaseFromZzDataSimple, err error) {
 	sql := ` SELECT * FROM base_from_trade_zhengzhou_index WHERE 1=1 `
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func AddEdbDataZzBySql(sqlStr string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Raw(sqlStr).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sqlStr).Error
 	return
 }
 
 func GetBaseFromZhengzhouDataAllByIndexCode(indexCode, suffix string) (list []*BaseFromTradeZhengzhouIndex, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM base_from_trade_zhengzhou_index WHERE %s_code=? `
 	sql = fmt.Sprintf(sql, suffix)
-	_, err = o.Raw(sql, indexCode).QueryRows(&list)
+	err = o.Raw(sql, indexCode).Find(&list).Error
 	return
 }
 
 func GetEdbDataZzByCodeAndDate(edbCode string, startDate string) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM edb_data_zz WHERE edb_code=? AND data_time=? `
-	err = o.Raw(sql, edbCode, startDate).QueryRow(&count)
+	err = o.Raw(sql, edbCode, startDate).Scan(&count).Error
 	return
 }
 
 func ModifyEdbDataZz(edbInfoId int64, dataTime, value string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_data_zz SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
-	_, err = o.Raw(sql, value, edbInfoId, dataTime).Exec()
+	err = o.Exec(sql, value, edbInfoId, dataTime).Error
 	return
 }

+ 48 - 47
models/data_manage/edb_info.go

@@ -2,15 +2,15 @@ package data_manage
 
 import (
 	"errors"
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"time"
 )
 
 type EdbInfo struct {
-	EdbInfoId        int    `orm:"column(edb_info_id);pk"`
+	EdbInfoId        int    `orm:"column(edb_info_id);pk" gorm:"primaryKey"`
 	SourceName       string `description:"来源名称"`
 	Source           int    `description:"来源id"`
 	EdbCode          string `description:"指标编码"`
@@ -35,7 +35,7 @@ type EdbInfo struct {
 }
 
 type EdbInfoList struct {
-	EdbInfoId        int       `orm:"column(edb_info_id);pk"`
+	EdbInfoId        int       `orm:"column(edb_info_id);pk" gorm:"primaryKey"`
 	SourceName       string    `description:"来源名称"`
 	Source           int       `description:"来源id"`
 	SubSource        int       `description:"子数据来源:0:经济数据库,1:日期序列"`
@@ -65,7 +65,7 @@ type EdbInfoSearchDataV1 struct {
 }
 
 func GetEdbInfoByCondition(condition string, pars []interface{}, order int) (item []*EdbInfoList, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE 1=1 `
 	if condition != "" {
 		sql += condition
@@ -75,14 +75,14 @@ func GetEdbInfoByCondition(condition string, pars []interface{}, order int) (ite
 	} else {
 		sql += ` ORDER BY edb_info_id ASC `
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func ModifyEdbDataInfoDate(edbInfoId int, maxDate string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_info SET end_date=?,modify_time=NOW() WHERE edb_info_id=? `
-	_, err = o.Raw(sql, maxDate, edbInfoId).Exec()
+	err = o.Exec(sql, maxDate, edbInfoId).Error
 	return
 }
 
@@ -95,7 +95,7 @@ type EdbInfoMaxAndMinInfo struct {
 }
 
 func GetEdbInfoMaxAndMinInfo(source, subSource int, edbCode string) (item *EdbInfoMaxAndMinInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ``
 	tableName := GetEdbDataTableName(source, subSource)
 	if tableName == "" {
@@ -104,26 +104,26 @@ func GetEdbInfoMaxAndMinInfo(source, subSource int, edbCode string) (item *EdbIn
 	}
 	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 %s WHERE edb_code=? `
 	sql = fmt.Sprintf(sql, tableName)
-	err = o.Raw(sql, edbCode).QueryRow(&item)
+	err = o.Raw(sql, edbCode).First(&item).Error
 
 	var latest_value float64
 	sql = ` SELECT value AS latest_value FROM %s WHERE edb_code=? ORDER BY data_time DESC LIMIT 1 `
 	sql = fmt.Sprintf(sql, tableName)
-	err = o.Raw(sql, edbCode).QueryRow(&latest_value)
+	err = o.Raw(sql, edbCode).Scan(&latest_value).Error
 	item.LatestValue = latest_value
 	return
 }
 
 func ModifyEdbInfoMaxAndMinInfo(edbInfoId int, item *EdbInfoMaxAndMinInfo) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_info SET start_date=?,end_date=?,min_value=?,max_value=?,is_update=2,latest_date=?,latest_value=?,modify_time=NOW() WHERE edb_info_id=? `
-	_, err = o.Raw(sql, item.MinDate, item.MaxDate, item.MinValue, item.MaxValue, item.MaxDate, item.LatestValue, edbInfoId).Exec()
+	err = o.Exec(sql, item.MinDate, item.MaxDate, item.MinValue, item.MaxValue, item.MaxDate, item.LatestValue, edbInfoId).Error
 	return
 }
 
 //order:1升序,其余值为降序
 func GetEdbDataListAll(condition string, pars []interface{}, source, subSource, order int) (item []*EdbInfoSearchData, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ``
 	tableName := GetEdbDataTableName(source, subSource)
 	sql = ` SELECT * FROM %s WHERE 1=1 `
@@ -137,12 +137,12 @@ func GetEdbDataListAll(condition string, pars []interface{}, source, subSource,
 	} else {
 		sql += ` ORDER BY data_time DESC `
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func GetEdbDataListAllV1(condition string, pars []interface{}, source, subSource, order int) (item []*EdbInfoSearchDataV1, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ``
 	tableName := GetEdbDataTableName(source, subSource)
 	sql = ` SELECT * FROM %s WHERE 1=1 `
@@ -156,39 +156,39 @@ func GetEdbDataListAllV1(condition string, pars []interface{}, source, subSource
 	} else {
 		sql += ` ORDER BY data_time DESC `
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func GetEdbInfoById(edbInfoId int) (item *EdbInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	err = o.Raw(sql, edbInfoId).First(&item).Error
 	return
 }
 
 func GetQuarterEdbInfo() (item []*EdbInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT c.* FROM chart_info AS a
 			INNER JOIN chart_edb_mapping AS b ON a.chart_info_id=b.chart_info_id
 			INNER JOIN edb_info AS c ON b.edb_info_id=c.edb_info_id
 			WHERE a.chart_type=2
 			GROUP BY b.edb_info_id
 			ORDER BY b.edb_info_id ASC  `
-	_, err = o.Raw(sql).QueryRows(&item)
+	err = o.Raw(sql).Find(&item).Error
 	return
 }
 
 func ResetEdbInfoIsUpdate() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_info SET is_update=1  `
-	_, err = o.Raw(sql).Exec()
+	err = o.Exec(sql).Error
 	return
 }
 
 // GetEdbInfoCalculateListByCondition 获取指标关系列表
 func GetEdbInfoCalculateListByCondition(condition string, pars []interface{}) (items []*EdbInfoCalculateMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	//calculateTableName := GetEdbInfoCalculateTableName(source)
 	//if calculateTableName == "" {
 	//	err = errors.New("无效的表名")
@@ -200,7 +200,7 @@ func GetEdbInfoCalculateListByCondition(condition string, pars []interface{}) (i
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars).Find(&items).Error
 	return
 }
 
@@ -209,13 +209,13 @@ func DeleteEdbDataByIdAndSource(edbDataId, source, subSource int) (err error) {
 	tableName := GetEdbDataTableName(source, subSource)
 	sql = fmt.Sprintf(sql, tableName)
 
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, edbDataId).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sql, edbDataId).Error
 	return
 }
 
 type EdbInfoClassify struct {
-	EdbInfoId       int    `orm:"column(edb_info_id);pk"`
+	EdbInfoId       int    `orm:"column(edb_info_id);pk" gorm:"primaryKey"`
 	SourceName      string `description:"来源名称"`
 	Source          int    `description:"来源id"`
 	EdbCode         string `description:"指标编码"`
@@ -236,13 +236,13 @@ type EdbInfoClassify struct {
 // @return item []*EdbInfoUpdateLog
 // @return err error
 func GetAllEdbInfoClassifyListByCondition(condition string, pars []interface{}) (item []*EdbInfoClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY edb_info_id ASC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 
 	return
 }
@@ -256,9 +256,9 @@ func GetAllEdbInfoClassifyListByCondition(condition string, pars []interface{})
 // @return item *EdbInfo
 // @return err error
 func GetEdbInfoItemByCodeAndSource(source int, edbCode string) (item *EdbInfoItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE edb_code=? AND source = ?`
-	err = o.Raw(sql, source, edbCode).QueryRow(&item)
+	err = o.Raw(sql, source, edbCode).First(&item).Error
 
 	return
 }
@@ -272,7 +272,7 @@ func GetEdbInfoItemByCodeAndSource(source int, edbCode string) (item *EdbInfoIte
 // @return modifyTime string
 // @return err error
 func GetEdbInfoMaxModifyTime(source, subSource int, edbCode string) (modifyTime string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	tableName := GetEdbDataTableName(source, subSource)
 	if tableName == "" {
 		err = errors.New("无效的表名称:source:" + strconv.Itoa(source))
@@ -281,29 +281,29 @@ func GetEdbInfoMaxModifyTime(source, subSource int, edbCode string) (modifyTime
 
 	sql := ` SELECT MAX(modify_time) AS modify_time FROM %s WHERE edb_code=? `
 	sql = fmt.Sprintf(sql, tableName)
-	err = o.Raw(sql, edbCode).QueryRow(&modifyTime)
+	err = o.Raw(sql, edbCode).Scan(&modifyTime).Error
 
 	return
 }
 
 func GetEdbInfoPageByCondition(condition string, pars []interface{}, startPage, pageSize int) (item []*EdbInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startPage, pageSize).QueryRows(&item)
+	err = o.Raw(sql, pars, startPage, pageSize).Find(&item).Error
 	return
 }
 
 func GetEdbInfoCountByCondition(condition string, pars []interface{}) (total int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT count(*) FROM edb_info WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&total)
+	err = o.Raw(sql, pars).Scan(&total).Error
 	return
 }
 
@@ -312,21 +312,22 @@ func ModifyEdbUpdateStatus(edbIdList []int, indexCodeList []string, calculateEdb
 	if idNum <= 0 {
 		return
 	}
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
+			_ = tx.Rollback()
 			return
 		}
-		_ = o.Commit()
+		_ = tx.Commit()
 	}()
 
 	// 更改指标的更新状态
 	sql := ` UPDATE edb_info SET no_update = 1 WHERE source in (?, ?) AND edb_info_id IN (` + utils.GetOrmInReplace(idNum) + `) AND  no_update = 0`
-	_, err = o.Raw(sql, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, utils.DATA_SOURCE_WIND, edbIdList).Exec()
+	err = tx.Exec(sql, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, utils.DATA_SOURCE_WIND, edbIdList).Error
 	if err != nil {
 		return
 	}
@@ -335,7 +336,7 @@ func ModifyEdbUpdateStatus(edbIdList []int, indexCodeList []string, calculateEdb
 	if len(indexCodeList) > 0 {
 		// 更改数据源的更新状态
 		sql = ` UPDATE base_from_mysteel_chemical_index SET is_stop = 1 WHERE index_code IN (` + utils.GetOrmInReplace(len(indexCodeList)) + `) and is_stop=0`
-		_, err = o.Raw(sql, indexCodeList).Exec()
+		err = tx.Exec(sql, indexCodeList).Error
 		if err != nil {
 			return
 		}
@@ -345,7 +346,7 @@ func ModifyEdbUpdateStatus(edbIdList []int, indexCodeList []string, calculateEdb
 	if len(calculateEdbInfoIds) > 0 {
 		// 批量更新相关联的指标ID
 		sql = ` UPDATE edb_info SET no_update = 1 WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) AND  no_update = 0`
-		_, err = o.Raw(sql, calculateEdbInfoIds).Exec()
+		err = tx.Exec(sql, calculateEdbInfoIds).Error
 		if err != nil {
 			return
 		}
@@ -359,8 +360,8 @@ func GetEdbInfoByIdList(edbInfoIdList []int) (items []*EdbInfo, err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info WHERE edb_info_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, edbInfoIdList).QueryRows(&items)
+	err = o.Raw(sql, edbInfoIdList).Find(&items).Error
 	return
 }

+ 25 - 24
models/data_manage/edb_info_calculate_mapping.go

@@ -1,14 +1,14 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 type EdbInfoCalculateMapping struct {
-	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk"`
+	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk" gorm:"primaryKey"`
 	EdbInfoId                 int       `description:"计算指标id"`
 	Source                    int       `description:"计算指标来源"`
 	SourceName                string    `description:"计算指标来源名称"`
@@ -25,17 +25,18 @@ type EdbInfoCalculateMapping struct {
 }
 
 func AddEdbInfoCalculateMappingMulti(items []*EdbInfoCalculateMapping) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(1, items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func FixEdbInfoCalculateMapping() {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
 		return
 	}
+	var err error
 	defer func() {
 		if err != nil {
 			tx.Rollback()
@@ -45,7 +46,7 @@ func FixEdbInfoCalculateMapping() {
 	}()
 	edbInfoList := make([]*EdbInfoList, 0)
 	sql := `SELECT * FROM edb_info WHERE edb_type=2 `
-	_, err = o.Raw(sql).QueryRows(&edbInfoList)
+	err = o.Raw(sql).Find(&edbInfoList).Error
 	if err != nil {
 		return
 	}
@@ -56,7 +57,7 @@ func FixEdbInfoCalculateMapping() {
 		sql := ` SELECT * FROM %s
 			WHERE edb_info_id=? ORDER BY sort ASC `
 		sql = fmt.Sprintf(sql, calculateTableName)
-		_, err = tx.Raw(sql, v.EdbInfoId).QueryRows(&calculateList)
+		err = tx.Raw(sql, v.EdbInfoId).Find(&calculateList).Error
 		if err != nil {
 			fmt.Println("query calculate err:" + err.Error())
 			return
@@ -77,13 +78,13 @@ func FixEdbInfoCalculateMapping() {
 			calculateMappingItem.FromTag = cv.FromTag
 			calculateMappingItem.Source = v.Source
 			calculateMappingItem.SourceName = v.SourceName
-			tx.Insert(calculateMappingItem)
+			tx.Create(calculateMappingItem) 
 		}
 	}
 }
 
 type EdbInfoCalculateMappingView struct {
-	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk"`
+	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk" gorm:"primaryKey"`
 	EdbInfoId                 int       `description:"计算指标id"`
 	Source                    int       `description:"计算指标来源"`
 	SourceName                string    `description:"计算指标来源名称"`
@@ -105,19 +106,19 @@ type EdbInfoCalculateMappingView struct {
 }
 
 func GetEdbInfoCalculateMappingDetail(edbInfoId int) (item *EdbInfoCalculateMappingView, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT a.*,b.start_date,b.end_date,b.calculate_formula,b.move_type,b.move_frequency FROM edb_info_calculate_mapping AS a
 			INNER JOIN edb_info AS b ON a.edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	err = o.Raw(sql, edbInfoId).First(&item).Error
 	return
 }
 
 // GetAllCalculateEdbIdsByEdbInfoIds 所依赖计算指标
 func GetAllCalculateEdbIdsByEdbInfoIds(edbInfoIds []int) (edbIds []int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	msql := ` SELECT edb_info_id FROM edb_info_calculate_mapping WHERE from_edb_info_id in (` + utils.GetOrmInReplace(len(edbInfoIds)) + `)  GROUP BY edb_info_id `
-	_, err = o.Raw(msql, edbInfoIds).QueryRows(&edbIds)
+	err = o.Raw(msql, edbInfoIds).Scan(&edbIds).Error
 	if err != nil {
 		return
 	}
@@ -127,7 +128,7 @@ func GetAllCalculateEdbIdsByEdbInfoIds(edbInfoIds []int) (edbIds []int, err erro
 // EdbInfoCalculateMappingInfo
 // @Description: 计算指标与基础指标关系表
 type EdbInfoCalculateMappingInfo struct {
-	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk"`
+	EdbInfoCalculateMappingId int       `orm:"column(edb_info_calculate_mapping_id);pk" gorm:"primaryKey"`
 	EdbInfoId                 int       `description:"计算指标id"`
 	Source                    int       `description:"计算指标来源"`
 	SourceName                string    `description:"计算指标来源名称"`
@@ -151,41 +152,41 @@ type EdbInfoCalculateMappingInfo struct {
 
 // GetEdbInfoCalculateMappingListByEdbInfoId 根据生成的指标id获取来源的指标id列表
 func GetEdbInfoCalculateMappingListByEdbInfoId(edbInfoId int) (items []*EdbInfoCalculateMappingInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT a.*,b.edb_type as from_edb_type,b.edb_info_type as from_edb_info_type, b.unique_code AS from_unique_code, b.classify_id AS from_classify_id,b.no_update FROM edb_info_calculate_mapping AS a
 			INNER JOIN edb_info AS b ON a.from_edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id=? `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = o.Raw(sql, edbInfoId).Find(&items).Error
 	return
 }
 
 // GetEdbInfoCalculateMappingListByEdbInfoIds 根据生成的指标id获取来源的指标id列表
 func GetEdbInfoCalculateMappingListByEdbInfoIds(edbInfoIds []int) (items []*EdbInfoCalculateMappingInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT a.*,b.edb_type as from_edb_type,b.edb_info_type as from_edb_info_type, b.unique_code AS from_unique_code, b.classify_id AS from_classify_id,b.no_update FROM edb_info_calculate_mapping AS a
 			INNER JOIN edb_info AS b ON a.from_edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id in (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) `
-	_, err = o.Raw(sql, edbInfoIds).QueryRows(&items)
+	err = o.Raw(sql, edbInfoIds).Find(&items).Error
 	return
 }
 
 func GetEdbInfoCalculateMappingCountByCondition(condition string, pars []interface{}) (total int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT count(*) FROM edb_info_calculate_mapping WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&total)
+	err = o.Raw(sql, pars).Scan(&total).Error
 	return
 }
 
 func GetEdbInfoCalculateMappingPageByCondition(condition string, pars []interface{}, startPage, pageSize int) (item []*EdbInfoCalculateMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info_calculate_mapping WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startPage, pageSize).QueryRows(&item)
+	err = o.Raw(sql, pars, startPage, pageSize).Find(&item).Error
 	return
 }

+ 14 - 13
models/data_manage/edb_info_relation.go

@@ -1,13 +1,13 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 type EdbInfoRelation struct {
-	EdbInfoRelationId  int       `orm:"column(edb_info_relation_id);pk"`
+	EdbInfoRelationId  int       `orm:"column(edb_info_relation_id);pk" gorm:"primaryKey"`
 	EdbInfoId          int       `description:"指标id"`
 	Source             int       `description:"来源:1:同花顺,2:wind,3:彭博,4:指标运算,5:累计值转月,6:同比值,7:同差值,8:N数值移动平均计算,9:手工指标,10:隆众"`
 	EdbName            string    `description:"指标名称"`
@@ -30,16 +30,17 @@ func (e *EdbInfoRelation) TableName() string {
 }
 
 func AddEdbInfoRelationMulti(relationList []*EdbInfoRelation) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if tx.Error != nil {
+		return tx.Error
 	}
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
+			_ = tx.Rollback()
 			return
 		}
-		_ = o.Commit()
+		_ = tx.Commit()
 	}()
 
 	relationCodesMap := make(map[string]struct{}, 0)
@@ -49,7 +50,7 @@ func AddEdbInfoRelationMulti(relationList []*EdbInfoRelation) (err error) {
 				relationCodesMap[relation.RelationCode] = struct{}{}
 			}
 		}
-		_, err = o.InsertMulti(len(relationList), relationList)
+		err = tx.CreateInBatches(relationList, utils.MultiAddNum).Error
 		if err != nil {
 			return
 		}
@@ -67,7 +68,7 @@ SET e1.parent_relation_id = e2.edb_info_relation_id
 WHERE  
     e1.relation_type = 1   
     AND e2.relation_type = 0 AND e1.parent_relation_id !=e2.edb_info_relation_id AND e1.relation_code in (` + utils.GetOrmInReplace(len(relationCodes)) + `)`
-			_, err = o.Raw(sql, relationCodes).Exec()
+			err = tx.Exec(sql, relationCodes).Error
 			if err != nil {
 				return
 			}
@@ -78,9 +79,9 @@ WHERE
 
 // GetEdbInfoRelationByEdbInfoIds 查询引用的指标ID
 func GetEdbInfoRelationByEdbInfoIds(edbInfoIds []int) (edbIds []int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	msql := ` SELECT edb_info_id FROM edb_info_relation WHERE edb_info_id in (` + utils.GetOrmInReplace(len(edbInfoIds)) + `)  GROUP BY edb_info_id `
-	_, err = o.Raw(msql, edbInfoIds).QueryRows(&edbIds)
+	err = o.Raw(msql, edbInfoIds).Scan(&edbIds).Error
 	if err != nil {
 		return
 	}
@@ -89,8 +90,8 @@ func GetEdbInfoRelationByEdbInfoIds(edbInfoIds []int) (edbIds []int, err error)
 
 // GetEdbInfoRelationByReferObjectIds 查询引用的指标ID
 func GetEdbInfoRelationByReferObjectIds(referObjectIds []int, referObjectType int) (items []*EdbInfoRelation, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	msql := ` SELECT * FROM edb_info_relation WHERE refer_object_id in (` + utils.GetOrmInReplace(len(referObjectIds)) + `) AND refer_object_type=? AND relation_type=0`
-	_, err = o.Raw(msql, referObjectIds, referObjectType).QueryRows(&items)
+	err = o.Raw(msql, referObjectIds, referObjectType).Find(&items).Error
 	return
 }

+ 5 - 4
models/data_manage/edb_info_update_log.go

@@ -1,12 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 type EdbInfoUpdateLog struct {
-	Id                     int       `orm:"column(id);pk"`
+	Id                     int       `orm:"column(id);pk" gorm:"primaryKey"`
 	EdbInfoId              int       `description:"指标id"`
 	SourceName             string    `description:"来源名称"`
 	Source                 int       `description:"来源id"`
@@ -39,13 +40,13 @@ type EdbInfoUpdateLog struct {
 }
 
 func GetEdbInfoUpdateLogByCondition(condition string, pars []interface{}) (item []*EdbInfoUpdateLog, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_info_update_log WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY id ASC limit 0,10  `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 
 	return
 }

+ 1 - 1
models/data_manage/edb_source.go

@@ -17,7 +17,7 @@ var (
 
 // EdbSource 指标来源表
 type EdbSource struct {
-	EdbSourceId      int    `orm:"column(edb_source_id);pk"`
+	EdbSourceId      int    `orm:"column(edb_source_id);pk" gorm:"primaryKey"`
 	SourceName       string `description:"指标来源名称"`
 	TableName        string `description:"数据表名"`
 	EdbAddMethod     string `description:"指标新增接口"`

+ 11 - 11
models/data_manage/edb_update_log.go

@@ -1,13 +1,13 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 type EdbUpdateLog struct {
-	Id          int64     `json:"id" orm:"column(id);pk"`
+	Id          int64     `json:"id" orm:"column(id);pk" gorm:"primaryKey"`
 	OpDbName    string    `json:"op_db_name"`    // 库名
 	OpTableName string    `json:"op_table_name"` // 表名
 	OpType      string    `json:"op_type"`       // 变更类型
@@ -27,9 +27,9 @@ type EdbUpdateLog struct {
 // @return maxId int
 // @return err error
 func GetEdbUpdateLogMaxId() (maxId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT id FROM edb_update_log WHERE 1=1 ORDER BY id desc limit 1 `
-	err = o.Raw(sql).QueryRow(&maxId)
+	err = o.Raw(sql).Scan(&maxId).Error
 
 	return
 }
@@ -41,9 +41,9 @@ func GetEdbUpdateLogMaxId() (maxId int64, err error) {
 // @return maxId int64
 // @return err error
 func GetEdbUpdateLogMaxHandleId() (maxId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT id FROM edb_update_log WHERE 1=1 AND is_handle = 1 ORDER BY id desc limit 1 `
-	err = o.Raw(sql).QueryRow(&maxId)
+	err = o.Raw(sql).Scan(&maxId).Error
 
 	return
 }
@@ -57,13 +57,13 @@ func GetEdbUpdateLogMaxHandleId() (maxId int64, err error) {
 // @return item []*EdbUpdateLog
 // @return err error
 func GetEdbUpdateLogByCondition(condition string, pars []interface{}) (item []*EdbUpdateLog, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_update_log WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY id ASC limit 500 `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars).Find(&item).Error
 
 	return
 }
@@ -79,9 +79,9 @@ func HandleUpdateLogByIds(idList []int64, modifyTime string) (err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE edb_update_log set is_handle=1 ,modify_time = ?  WHERE id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, modifyTime, idList).Exec()
+	err = o.Exec(sql, modifyTime, idList).Error
 
 	return
 }
@@ -137,7 +137,7 @@ type EdbInfoItem struct {
 }
 
 type EdbData struct {
-	EdbDataId int32  `orm:"column(edb_data_id);pk" json:"edb_data_id"`
+	EdbDataId int32  `orm:"column(edb_data_id);pk" gorm:"primaryKey" json:"edb_data_id"`
 	EdbInfoId int32  `json:"edb_info_id"` // 指标id
 	EdbCode   string `json:"edb_code"`    // 指标编码
 	//DataTime      time.Time `json:"data_time"`      // 数据日期

+ 24 - 28
models/data_manage/factor_edb_series_chart_mapping.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -14,7 +14,7 @@ const (
 
 // FactorEdbSeriesChartMapping 因子指标系列-图表关联
 type FactorEdbSeriesChartMapping struct {
-	FactorEdbSeriesChartMappingId int       `orm:"column(factor_edb_series_chart_mapping_id);pk"`
+	FactorEdbSeriesChartMappingId int       `orm:"column(factor_edb_series_chart_mapping_id);pk" gorm:"primaryKey"`
 	ChartInfoId                   int       `description:"图表ID"`
 	Source                        int       `description:"图表来源, 同chart_info表source"`
 	CalculateType                 int       `description:"计算方式: 1-相关性"`
@@ -62,12 +62,8 @@ func (m *FactorEdbSeriesChartMapping) Cols() MultipleFactorSeriesChartMappingCol
 }
 
 func (m *FactorEdbSeriesChartMapping) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.FactorEdbSeriesChartMappingId = int(id)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(m).Error
 	return
 }
 
@@ -75,21 +71,21 @@ func (m *FactorEdbSeriesChartMapping) CreateMulti(items []*FactorEdbSeriesChartM
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) Remove() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	_, err = o.Raw(sql, m.FactorEdbSeriesChartMappingId).Exec()
+	err = o.Exec(sql, m.FactorEdbSeriesChartMappingId).Error
 	return
 }
 
@@ -97,39 +93,39 @@ func (m *FactorEdbSeriesChartMapping) MultiRemove(ids []int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s IN (%s)`, m.TableName(), m.Cols().PrimaryId, utils.GetOrmInReplace(len(ids)))
-	_, err = o.Raw(sql, ids).Exec()
+	err = o.Exec(sql, ids).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) GetItemById(id int) (item *FactorEdbSeriesChartMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *FactorEdbSeriesChartMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*FactorEdbSeriesChartMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -139,12 +135,12 @@ func (m *FactorEdbSeriesChartMapping) GetItemsByCondition(condition string, pars
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *FactorEdbSeriesChartMapping) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*FactorEdbSeriesChartMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -154,15 +150,15 @@ func (m *FactorEdbSeriesChartMapping) GetPageItemsByCondition(condition string,
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = o.Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
 // GetDistinctSeriesIdByChartId 获取图表关联的系列ID
 func (m *FactorEdbSeriesChartMapping) GetDistinctSeriesIdByChartId(chartId int) (seriesIds []int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT DISTINCT %s FROM %s WHERE %s = ?`, m.Cols().FactorEdbSeriesId, m.TableName(), m.Cols().ChartInfoId)
-	_, err = o.Raw(sql, chartId).QueryRows(&seriesIds)
+	err = o.Raw(sql, chartId).Scan(&seriesIds).Error
 	return
 }
 

+ 24 - 28
models/data_manage/factor_edb_series_mapping.go

@@ -1,16 +1,16 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
 
 // FactorEdbSeriesMapping 因子指标系列-指标关联表
 type FactorEdbSeriesMapping struct {
-	FactorEdbSeriesMappingId int       `orm:"column(factor_edb_series_mapping_id);pk"`
+	FactorEdbSeriesMappingId int       `orm:"column(factor_edb_series_mapping_id);pk" gorm:"primaryKey"`
 	FactorEdbSeriesId        int       `description:"因子指标系列ID"`
 	EdbInfoId                int       `description:"指标ID"`
 	EdbCode                  string    `description:"指标编码"`
@@ -43,12 +43,8 @@ func (m *FactorEdbSeriesMapping) Cols() FactorEdbSeriesMappingCols {
 }
 
 func (m *FactorEdbSeriesMapping) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.FactorEdbSeriesMappingId = int(id)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(m).Error
 	return
 }
 
@@ -56,21 +52,21 @@ func (m *FactorEdbSeriesMapping) CreateMulti(items []*FactorEdbSeriesMapping) (e
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) Remove() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	_, err = o.Raw(sql, m.FactorEdbSeriesMappingId).Exec()
+	err = o.Exec(sql, m.FactorEdbSeriesMappingId).Error
 	return
 }
 
@@ -78,9 +74,9 @@ func (m *FactorEdbSeriesMapping) MultiRemove(ids []int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s IN (%s)`, m.TableName(), m.Cols().PrimaryId, utils.GetOrmInReplace(len(ids)))
-	_, err = o.Raw(sql, ids).Exec()
+	err = o.Exec(sql, ids).Error
 	return
 }
 
@@ -88,39 +84,39 @@ func (m *FactorEdbSeriesMapping) RemoveByCondition(condition string, pars []inte
 	if condition == "" {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s`, m.TableName(), condition)
-	_, err = o.Raw(sql, pars).Exec()
+	err = o.Exec(sql, pars).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) GetItemById(id int) (item *FactorEdbSeriesMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *FactorEdbSeriesMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*FactorEdbSeriesMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -130,12 +126,12 @@ func (m *FactorEdbSeriesMapping) GetItemsByCondition(condition string, pars []in
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *FactorEdbSeriesMapping) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*FactorEdbSeriesMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -145,7 +141,7 @@ func (m *FactorEdbSeriesMapping) GetPageItemsByCondition(condition string, pars
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = o.Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 

+ 11 - 11
models/data_manage/meeting_probabilities.go

@@ -1,13 +1,14 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 	"time"
 )
 
 // MeetingProbabilities excel表格详情表
 type MeetingProbabilities struct {
-	MeetingInfoId int       `orm:"column(meeting_info_id);pk"`
+	MeetingInfoId int       `orm:"column(meeting_info_id);pk" gorm:"primaryKey"`
 	Content       string    `description:"表格内容"`
 	ExcelImage    string    `description:"表格图片"`
 	DateTime      string    `description:"数据日期"`
@@ -26,21 +27,20 @@ type MeetingProbabilitiesResp struct {
 
 // AddMeetingProbabilities 新增表格
 func AddMeetingProbabilities(meetingInfo *MeetingProbabilities) (newId int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	// 表格信息入库
-	lastId, err := o.Insert(meetingInfo)
+	err = o.Create(meetingInfo).Error
 	if err != nil {
 		return
 	}
-	meetingInfo.MeetingInfoId = int(lastId)
-	newId = int(lastId)
+	newId = meetingInfo.MeetingInfoId
 	return
 }
 
 func GetMeetingProbabilitiesAll(dateStr string) (list []*MeetingProbabilities, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM meeting_probabilities WHERE date_time>=?`
-	_, err = o.Raw(sql, dateStr).QueryRows(&list)
+	err = o.Raw(sql, dateStr).Find(&list).Error
 	return
 }
 
@@ -102,8 +102,8 @@ type AddExcelInfoReq struct {
 }
 
 func GetMeetingProbabilitiesMaxDate() (max_date time.Time, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT max(a.date_time)as max_date FROM meeting_probabilities as a `
-	err = o.Raw(sql).QueryRow(&max_date)
+	err = o.Raw(sql).Scan(&max_date).Error
 	return
-}
+}

+ 5 - 5
models/data_manage/ppt_v2_save_log.go

@@ -1,13 +1,13 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 )
 
 func DeletePPTLogByDate(date string) (err error) {
 	sql := `DELETE FROM ppt_v2_save_log WHERE create_time<? `
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, date).Exec()
-
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sql, date).Error
 	return
-}
+}

+ 4 - 3
models/data_manage/report_save_log.go

@@ -1,13 +1,14 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 )
 
 func DeleteReportLogByDate(date string) (err error) {
 	sql := `DELETE FROM report_save_log WHERE create_time<? `
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, date).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec(sql, date).Error
 
 	return
 }

+ 68 - 80
models/data_manage/trade_position_analysis.go

@@ -1,16 +1,16 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 	"unsafe"
 )
 
 // 持仓榜单表
 type TradePositionTop struct {
-	Id            uint64    `orm:"column(id);pk"`
+	Id            uint64    `orm:"column(id);pk" gorm:"primaryKey"`
 	ClassifyName  string    //分类名称
 	ClassifyType  string    //分类名称下的类型
 	DataTime      string    //数据日期
@@ -49,14 +49,14 @@ type TradePositionGuangzhouTop struct {
 }
 
 func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	if exchange == "dalian" {
 		list := make([]*TradePositionDalianTop, 0)
 		for _, v := range items {
 			tmp := (*TradePositionDalianTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	} else if exchange == "zhengzhou" {
 		list := make([]*TradePositionZhengzhouTop, 0)
@@ -64,7 +64,7 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 			tmp := (*TradePositionZhengzhouTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	} else if exchange == "cffex" {
 		list := make([]*TradePositionCffexTop, 0)
@@ -72,7 +72,7 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 			tmp := (*TradePositionCffexTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	} else if exchange == "shanghai" {
 		list := make([]*TradePositionShanghaiTop, 0)
@@ -80,7 +80,7 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 			tmp := (*TradePositionShanghaiTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	} else if exchange == "ine" {
 		list := make([]*TradePositionIneTop, 0)
@@ -88,7 +88,7 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 			tmp := (*TradePositionIneTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	} else if exchange == "guangzhou" {
 		list := make([]*TradePositionGuangzhouTop, 0)
@@ -96,7 +96,7 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 			tmp := (*TradePositionGuangzhouTop)(unsafe.Pointer(v))
 			list = append(list, tmp)
 		}
-		_, err = o.InsertMulti(len(list), list)
+		err = o.CreateInBatches(list, utils.MultiAddNum).Error
 		return
 	}
 
@@ -104,37 +104,37 @@ func InsertMultiTradePositionTop(exchange string, items []*TradePositionTop) (er
 }
 
 func GetTradePositionTopByExchangeDataTime(exchange string, startDate, endDate string) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? and deal_type in (1,2) ORDER BY classify_name, classify_type, deal_type, data_time, deal_value desc"
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate).Find(&list).Error
 	return
 }
 
 func GetTradePositionTopByExchangeDataTimeByClassify(exchange string, startDate, endDate string, classifyNames, classifyTypes []string) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM trade_position_` + exchange + `_top where data_time >= ? and data_time <= ? and deal_type in (1,2) and classify_name in (` + utils.GetOrmInReplace(len(classifyNames)) + `)  and classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `) ORDER BY classify_name, classify_type, deal_type, data_time, deal_value desc`
-	_, err = o.Raw(sql, startDate, endDate, classifyNames, classifyTypes).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate, classifyNames, classifyTypes).Find(&list).Error
 	return
 }
 
 func GetTradePositionTopCountByExchangeDataTime(exchange string, startDate, endDate string) (count int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT count(*) FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? and deal_type in (1,2) ORDER BY classify_name, classify_type, deal_type, data_time, deal_value desc"
-	err = o.Raw(sql, startDate, endDate).QueryRow(&count)
+	err = o.Raw(sql, startDate, endDate).Scan(&count).Error
 	return
 }
 
 func GetTradePositionTopByExchangeSourceType(exchange string, dataTime string, sourceType int) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM trade_position_" + exchange + "_top where data_time= ? and source_type = ? ORDER BY classify_name, classify_type, deal_type, deal_value desc"
-	_, err = o.Raw(sql, dataTime, sourceType).QueryRows(&list)
+	err = o.Raw(sql, dataTime, sourceType).Find(&list).Error
 	return
 }
 
 func GetTradePositionTopByExchangeSourceTypeClassify(exchange string, dataTime string, sourceType int, classifyNames, classifyTypes []string) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM trade_position_` + exchange + `_top where data_time= ? and source_type = ? and classify_name in (` + utils.GetOrmInReplace(len(classifyNames)) + `)  and classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `) ORDER BY classify_name, classify_type, deal_type, deal_value desc`
-	_, err = o.Raw(sql, dataTime, sourceType, classifyNames, classifyTypes).QueryRows(&list)
+	err = o.Raw(sql, dataTime, sourceType, classifyNames, classifyTypes).Find(&list).Error
 	return
 }
 
@@ -181,16 +181,10 @@ type UpdateChangeVal struct {
 }
 
 func MultiUpdatePositionTop(exchange string, updates []UpdateDealValueChange) (err error) {
-	o := orm.NewOrm()
-	p, err := o.Raw("UPDATE trade_position_" + exchange + "_top SET deal_value=?, deal_change=?, source_type=?, modify_time=? WHERE id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
+	o := global.DbMap[utils.DbNameIndex]
+	sql := "UPDATE trade_position_" + exchange + "_top SET deal_value=?, deal_change=?, source_type=?, modify_time=? WHERE id = ?"
 	for _, v := range updates {
-		_, err = p.Exec(v.DealValue, v.DealChange, v.SourceType, v.ModifyTime, v.Id)
+		err = o.Exec(sql, v.DealValue, v.DealChange, v.SourceType, v.ModifyTime, v.Id).Error
 		if err != nil {
 			return
 		}
@@ -199,75 +193,75 @@ func MultiUpdatePositionTop(exchange string, updates []UpdateDealValueChange) (e
 }
 
 func DeletePositionTopByDataTime(exchange string, dataTime string, dealType int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "delete from trade_position_" + exchange + "_top WHERE data_time=? and deal_type=?"
-	_, err = o.Raw(sql, dataTime, dealType).Exec()
+	err = o.Exec(sql, dataTime, dealType).Error
 	return
 }
 
 func DeletePositionTopByDataTimeClassify(exchange string, dataTime string, dealType int, classifyNames, classifyTypes []string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `delete from trade_position_` + exchange + `_top WHERE data_time=? and deal_type=? and classify_name in (` + utils.GetOrmInReplace(len(classifyNames)) + `)  and classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `)`
-	_, err = o.Raw(sql, dataTime, dealType, classifyNames, classifyTypes).Exec()
+	err = o.Exec(sql, dataTime, dealType, classifyNames, classifyTypes).Error
 	return
 }
 
 func GetTradePositionTopByExchangeDataTimeType(exchange string, dataTime string, dealType int) (list []TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "select * from trade_position_" + exchange + "_top WHERE data_time=? and deal_type=?"
-	_, err = o.Raw(sql, dataTime, dealType).QueryRows(&list)
+	err = o.Raw(sql, dataTime, dealType).Find(&list).Error
 	return
 }
 
 func GetTradePositionTopByExchangeDataTimeTypeClassify(exchange string, dataTime string, dealType int, classifyNames, classifyTypes []string) (list []TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from trade_position_` + exchange + `_top WHERE data_time=? and deal_type=? and classify_name in (` + utils.GetOrmInReplace(len(classifyNames)) + `)  and classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `)`
-	_, err = o.Raw(sql, dataTime, dealType, classifyNames, classifyTypes).QueryRows(&list)
+	err = o.Raw(sql, dataTime, dealType, classifyNames, classifyTypes).Find(&list).Error
 	return
 }
 
 func MultiInsertTradeBaseDataToTop(exchange string, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	now := time.Now().Format(utils.FormatDateTime)
 	sql1 := "INSERT INTO trade_position_" + exchange + "_top(classify_name,classify_type,deal_short_name,deal_value,deal_change,data_time,deal_type,source_type,`rank`,create_time,modify_time) " +
 		"SELECT classify_name,classify_type,buy_short_name,buy_value,buy_change,data_time,1,0,`rank`,?,? FROM base_from_trade_" + exchange + "_index where `rank` <50 and buy_short_name !='' and buy_short_name !=' ' and data_time between ? and ?"
-	_, err = o.Raw(sql1, now, now, startDate, endDate).Exec()
+	err = o.Exec(sql1, now, now, startDate, endDate).Error
 	if err != nil {
 		return
 	}
 	sql2 := "INSERT INTO trade_position_" + exchange + "_top(classify_name,classify_type,deal_short_name,deal_value,deal_change,data_time,deal_type,source_type,`rank`,create_time,modify_time) " +
 		"SELECT classify_name,classify_type,sold_short_name,sold_value,sold_change,data_time,2,0,`rank`,?,? FROM base_from_trade_" + exchange + "_index where `rank` <50 and sold_short_name !='' and sold_short_name !=' ' and data_time between ? and ?"
-	_, err = o.Raw(sql2, now, now, startDate, endDate).Exec()
+	err = o.Exec(sql2, now, now, startDate, endDate).Error
 	return
 }
 
 func MultiInsertTradeBaseDataToTopByClassify(exchange string, startDate, endDate string, classifyNames, classifyTypes []string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	now := time.Now().Format(utils.FormatDateTime)
 	sql1 := "INSERT INTO trade_position_" + exchange + "_top(classify_name,classify_type,deal_short_name,deal_value,deal_change,data_time,deal_type,source_type,`rank`,create_time,modify_time)" +
 		"SELECT classify_name,classify_type,buy_short_name,buy_value,buy_change,data_time,1,0,`rank`,?,? FROM base_from_trade_" + exchange + "_index where `rank` <50 and buy_short_name !='' and buy_short_name !=' ' and data_time between ? and ? and classify_name in (" + utils.GetOrmInReplace(len(classifyNames)) + ")  and classify_type in (" + utils.GetOrmInReplace(len(classifyTypes)) + ")"
-	_, err = o.Raw(sql1, now, now, startDate, endDate, classifyNames, classifyTypes).Exec()
+	err = o.Exec(sql1, now, now, startDate, endDate, classifyNames, classifyTypes).Error
 	if err != nil {
 		return
 	}
 	sql2 := "INSERT INTO trade_position_" + exchange + "_top(classify_name,classify_type,deal_short_name,deal_value,deal_change,data_time,deal_type,source_type,`rank`,create_time,modify_time)" +
 		"SELECT classify_name,classify_type,sold_short_name,sold_value,sold_change,data_time,2,0,`rank`,?,? FROM base_from_trade_" + exchange + "_index where `rank` <50 and sold_short_name !='' and sold_short_name !=' ' and data_time between ? and ? and classify_name in (" + utils.GetOrmInReplace(len(classifyNames)) + ")  and classify_type in (" + utils.GetOrmInReplace(len(classifyTypes)) + ")"
-	_, err = o.Raw(sql2, now, now, startDate, endDate, classifyNames, classifyTypes).Exec()
+	err = o.Exec(sql2, now, now, startDate, endDate, classifyNames, classifyTypes).Error
 	return
 }
 
 // GetTradePositionTopOriginDataTimes 获取榜单原始数据日期-正序
 func GetTradePositionTopOriginDataTimes(exchange string) (dates []string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT DISTINCT data_time FROM base_from_trade_%s_index ORDER BY data_time ASC`
 	sql = fmt.Sprintf(sql, exchange)
-	_, err = o.Raw(sql).QueryRows(&dates)
+	err = o.Raw(sql).Scan(&dates).Error
 	return
 }
 
 // BaseFromTradeClassify 交易所分类表
 type BaseFromTradeClassify struct {
-	Id           uint64    `orm:"column(id);pk"`
+	Id           uint64    `orm:"column(id);pk" gorm:"primaryKey"`
 	ClassifyName string    //分类名称
 	ClassifyType string    //分类名称下的类型
 	Exchange     string    //交易所
@@ -280,16 +274,16 @@ type BaseFromTradeClassify struct {
 func GetAllBaseFromTradeClassify() (list []*BaseFromTradeClassify, err error) {
 	sql := `SELECT * FROM base_from_trade_classify   `
 
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&list)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Raw(sql).Find(&list).Error
 
 	return
 }
 
 // Update 更新
 func (m *BaseFromTradeClassify) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(m).Error 
 	return
 }
 
@@ -298,8 +292,8 @@ func MultiAddBaseFromTradeClassify(items []*BaseFromTradeClassify) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
@@ -320,40 +314,34 @@ func GetExchangeClassify(exchange string) (list []TradeClassifyName, err error)
 	sql := `SELECT classify_name, classify_type,MAX(data_time) as data_time,MAX(modify_time) as modify_time FROM ` + tableName + ` GROUP BY classify_name, classify_type  `
 	sql += ` ORDER BY ` + orderStr
 
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&list)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Raw(sql).Find(&list).Error
 
 	return
 }
 
 // GetTradePositionTopCleanByExchangeDataTime 根据时间查询净多单和净空单的值
 func GetTradePositionTopCleanByExchangeDataTime(exchange string, startDate, endDate string) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? and deal_type in (3,4) ORDER BY classify_name, classify_type, deal_type, data_time, deal_value desc"
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate).Find(&list).Error
 	return
 }
 
 // GetTradePositionTopCleanByExchangeDataTimeClassify 根据时间查询净多单和净空单的值
 func GetTradePositionTopCleanByExchangeDataTimeClassify(exchange string, startDate, endDate string, classifyNames, classifyTypes []string) (list []*TradePositionTop, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM trade_position_` + exchange + `_top where data_time >= ? and data_time <= ? and deal_type in (3,4) and classify_name in (` + utils.GetOrmInReplace(len(classifyNames)) + `)  and classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `) ORDER BY classify_name, classify_type, deal_type, data_time, deal_value desc`
-	_, err = o.Raw(sql, startDate, endDate, classifyNames, classifyTypes).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate, classifyNames, classifyTypes).Find(&list).Error
 	return
 }
 
 // MultiUpdatePositionTopChangeVal 批量更新榜单里变化量的值
 func MultiUpdatePositionTopChangeVal(exchange string, updates []UpdateChangeVal) (err error) {
-	o := orm.NewOrm()
-	p, err := o.Raw("UPDATE trade_position_" + exchange + "_top SET deal_change=?, modify_time=? WHERE id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
+	o := global.DbMap[utils.DbNameIndex]
+	sql := "UPDATE trade_position_" + exchange + "_top SET deal_change=?, modify_time=? WHERE id = ?"
 	for _, v := range updates {
-		_, err = p.Exec(v.DealChange, v.ModifyTime, v.Id)
+		err = o.Exec(sql, v.DealChange, v.ModifyTime, v.Id).Error
 		if err != nil {
 			return
 		}
@@ -362,16 +350,16 @@ func MultiUpdatePositionTopChangeVal(exchange string, updates []UpdateChangeVal)
 }
 
 func GetTradePositionOriginClassifyCountByExchangeDataTime(exchange string, startDate, endDate string) (count int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT COUNT(DISTINCT classify_name, classify_type) FROM base_from_trade_" + exchange + "_index where `rank` <50 and (buy_short_name !='' or sold_short_name !='' ) and (buy_short_name !=' ' or sold_short_name !=' ' ) and data_time >= ? and data_time <= ?"
-	err = o.Raw(sql, startDate, endDate).QueryRow(&count)
+	err = o.Raw(sql, startDate, endDate).Scan(&count).Error
 	return
 }
 
 func GetTradePositionTopClassifyCountByExchangeDataTime(exchange string, startDate, endDate string) (count int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT COUNT(DISTINCT classify_name, classify_type)  FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? and deal_type in (1,2) "
-	err = o.Raw(sql, startDate, endDate).QueryRow(&count)
+	err = o.Raw(sql, startDate, endDate).Scan(&count).Error
 	return
 }
 
@@ -381,24 +369,24 @@ type TradePositionClassifyInfo struct {
 }
 
 func GetTradePositionOriginClassifyByExchangeDataTime(exchange string, startDate, endDate string) (list []TradePositionClassifyInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT DISTINCT classify_name, classify_type FROM base_from_trade_" + exchange + "_index where `rank` <50 and (buy_short_name !='' or sold_short_name !='' ) and (buy_short_name !=' ' or sold_short_name !=' ' ) and data_time >= ? and data_time <= ?"
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate).Find(&list).Error
 	return
 }
 
 func GetTradePositionTopClassifyByExchangeDataTime(exchange string, startDate, endDate string) (list []TradePositionClassifyInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT DISTINCT classify_name, classify_type  FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? and deal_type in (1,2) "
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate).Find(&list).Error
 	return
 }
 
 // DeleteTradePositionTopAllByExchangeDataTime 删除计算数据
 func DeleteTradePositionTopAllByExchangeDataTime(exchange string, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "DELETE FROM trade_position_" + exchange + "_top where data_time >= ? and data_time <= ? "
-	_, err = o.Raw(sql, startDate, endDate).Exec()
+	err = o.Exec(sql, startDate, endDate).Error
 	return
 }
 
@@ -407,16 +395,16 @@ type GetFirstBaseFromTradeIndeDate struct {
 }
 
 func GetFirstBaseFromTradeIndexByDate(exchange string) (item *GetFirstBaseFromTradeIndeDate, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM base_from_trade_" + exchange + "_index where `rank` < 50 order by data_time asc"
-	err = o.Raw(sql).QueryRow(&item)
+	err = o.Raw(sql).First(&item).Error
 	return
 }
 
 // 获取持仓分析的最新数据
 func GetTradePositionTopLastedDataTime(exchange string) (data_time time.Time, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT max(data_time) FROM trade_position_" + exchange + "_top"
-	err = o.Raw(sql).QueryRow(&data_time)
+	err = o.Raw(sql).Scan(&data_time).Error
 	return
 }

+ 43 - 17
models/data_manage/trade_position_analysis_guangzhou.go

@@ -1,13 +1,13 @@
 package data_manage
 
 import (
+	"eta/eta_task/global"
 	"eta/eta_task/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 func MultiInsertTradeGuangzhouDataToTop(exchange string, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	now := time.Now().Format(utils.FormatDateTime)
 
 	//新增买单榜单
@@ -23,7 +23,7 @@ WHERE
 	and c.base_from_trade_guangzhou_classify_id in (7,8)
 	and c.index_name like "%持买单量%"
 	and c.index_name not like "%日成交持仓排名%"`
-	_, err = o.Raw(sql1, now, now, startDate, endDate).Exec()
+	err = o.Exec(sql1, now, now, startDate, endDate).Error
 	if err != nil {
 		return
 	}
@@ -40,7 +40,7 @@ WHERE
 	and c.base_from_trade_guangzhou_classify_id in (7,8)
 	and c.index_name like "%持卖单量%"
 	and c.index_name not like "%日成交持仓排名%"`
-	_, err = o.Raw(sql2, now, now, startDate, endDate).Exec()
+	err = o.Exec(sql2, now, now, startDate, endDate).Error
 	if err != nil {
 		return
 	}
@@ -67,14 +67,14 @@ ORDER BY
 	AND s.data_time = t.data_time AND s.deal_type = t.deal_type
 SET s.rank = t.row_number where s.data_time between ? and ?;`
 
-	_, err = o.Raw(sql3, startDate, endDate, startDate, endDate).Exec()
+	err = o.Exec(sql3, startDate, endDate, startDate, endDate).Error
 
 	return
 }
 
 // GetTradePositionTopOriginGuangzhouDataTimes 获取榜单原始数据日期-正序
 func GetTradePositionTopOriginGuangzhouDataTimes(exchange string) (dates []string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT
 	DISTINCT a.data_time
 FROM
@@ -86,12 +86,12 @@ WHERE
 	AND c.index_name NOT LIKE "%日成交持仓排名%" 
 ORDER BY
 	a.data_time asc`
-	_, err = o.Raw(sql).QueryRows(&dates)
+	err = o.Raw(sql).Scan(&dates).Error
 	return
 }
 
 func GetTradePositionOriginGuangzhouClassifyCountByExchangeDataTime(exchange string, startDate, endDate string) (count int64, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT
 	count(DISTINCT n.classify_code, n.contract ) 
 FROM
@@ -105,12 +105,12 @@ WHERE
 	AND c.index_name NOT LIKE "%日成交持仓排名%" 
 ORDER BY
 	a.value DESC`
-	err = o.Raw(sql, startDate, endDate).QueryRow(&count)
+	err = o.Raw(sql, startDate, endDate).Scan(&count).Error
 	return
 }
 
 func GetFirstBaseFromTradeGuangzhouIndexByDate(exchange string) (item *GetFirstBaseFromTradeIndeDate, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT
 	a.data_time
 FROM
@@ -122,19 +122,19 @@ WHERE
 	AND c.index_name NOT LIKE "%日成交持仓排名%" 
 ORDER BY
 	a.data_time asc`
-	err = o.Raw(sql).QueryRow(&item)
+	err = o.Raw(sql).First(&item).Error
 	return
 }
 
 func GetTradePositionOriginClassifyGuangzhouByExchangeDataTime(exchange, startDate, endDate string) (list []TradePositionClassifyInfo, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT DISTINCT classify_code as classify_name, contract as classify_type FROM base_from_trade_guangzhou_contract where  trade_date >= ? and trade_date <= ?`
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&list)
+	err = o.Raw(sql, startDate, endDate).Scan(&list).Error
 	return
 }
 
 func MultiInsertTradeBaseDataToTopGuangzhouByClassify(exchange string, startDate, endDate string, classifyNames, classifyTypes []string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameIndex]
 	now := time.Now().Format(utils.FormatDateTime)
 
 	//新增买单榜单
@@ -151,7 +151,7 @@ WHERE
     and n.classify_code in (` + utils.GetOrmInReplace(len(classifyNames)) + `) and n.contract in (` + utils.GetOrmInReplace(len(classifyTypes)) + `)
 	and c.index_name like "%持买单量%"
 	and c.index_name not like "%日成交持仓排名%"`
-	_, err = o.Raw(sql1, now, now, startDate, endDate, classifyNames, classifyTypes).Exec()
+	err = o.Exec(sql1, now, now, startDate, endDate, classifyNames, classifyTypes).Error
 	if err != nil {
 		return
 	}
@@ -169,7 +169,7 @@ WHERE
   	and n.classify_code in (` + utils.GetOrmInReplace(len(classifyNames)) + `) and n.contract in (` + utils.GetOrmInReplace(len(classifyTypes)) + `)
 	and c.index_name like "%持卖单量%"
 	and c.index_name not like "%日成交持仓排名%"`
-	_, err = o.Raw(sql2, now, now, startDate, endDate, classifyNames, classifyTypes).Exec()
+	err = o.Exec(sql2, now, now, startDate, endDate, classifyNames, classifyTypes).Error
 	if err != nil {
 		return
 	}
@@ -196,7 +196,33 @@ ORDER BY
 	AND s.data_time = t.data_time AND s.deal_type = t.deal_type
 SET s.rank = t.row_number where s.data_time between ? and ? and s.classify_type in (` + utils.GetOrmInReplace(len(classifyTypes)) + `);`
 
-	_, err = o.Raw(sql3, startDate, endDate, classifyTypes, startDate, endDate, classifyTypes).Exec()
+
+//  todo AI 建议
+
+	// sql3 := `UPDATE trade_position_guangzhou_top s 
+	// SET s.rank = t.row_number
+	// FROM (
+	// 	SELECT 
+	// 		classify_type,
+	// 		deal_short_name,
+	// 		data_time,
+	// 		deal_type,
+	// 		ROW_NUMBER() OVER (
+	// 			PARTITION BY data_time, deal_type, classify_type 
+	// 			ORDER BY deal_value DESC
+	// 		) as row_number
+	// 	FROM trade_position_guangzhou_top
+	// 	WHERE data_time BETWEEN ? AND ? 
+	// 	AND classify_type IN (` + utils.GetOrmInReplace(len(classifyTypes)) + `)
+	// ) t
+	// WHERE s.classify_type = t.classify_type 
+	// AND s.deal_short_name = t.deal_short_name 
+	// AND s.data_time = t.data_time 
+	// AND s.deal_type = t.deal_type
+	// AND s.data_time BETWEEN ? AND ? 
+	// AND s.classify_type IN (` + utils.GetOrmInReplace(len(classifyTypes)) + `)`
+
+	err = o.Exec(sql3, startDate, endDate, classifyTypes, startDate, endDate, classifyTypes).Error
 
 	return
 }

+ 7 - 6
models/data_manage/user_record.go

@@ -1,20 +1,21 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_task/global"
+	"eta/eta_task/utils"
 )
 
-func GetUnSubUserOpenid(openIdstr string) (items []string, err error){
+func GetUnSubUserOpenid(openIdstr string) (items []string, err error) {
 	sql := `SELECT open_id FROM user_record 
           WHERE open_id IS NOT NULL AND subscribe=0 AND create_platform=1 `
 	sql += ` AND open_id in (` + openIdstr + `) `
-	_, err = orm.NewOrm().Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
-func UpdateSubStatus(unSubIds string) (err error){
+func UpdateSubStatus(unSubIds string) (err error) {
 	sql := "UPDATE user_record SET subscribe=1,subscribe_time=NOW() WHERE create_platform=1 "
 	sql += ` AND open_id in (` + unSubIds + `) `
-	_, err = orm.NewOrm().Raw(sql).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql).Error
 	return
-}
+}