Browse Source

gorm连接

xyxie 5 months ago
parent
commit
7c1f8625a9
72 changed files with 1551 additions and 2247 deletions
  1. 103 0
      global/dm.go
  2. 17 0
      global/global.go
  3. 13 12
      models/business_conf.go
  4. 18 26
      models/ccf_stock_excel.go
  5. 3 4
      models/chart.go
  6. 6 6
      models/chart_edb_mapping.go
  7. 6 6
      models/db.go
  8. 2 94
      models/dm_db.go
  9. 1 1
      models/edb_adjust_conf.go
  10. 14 15
      models/edb_classify.go
  11. 22 23
      models/edb_data_base.go
  12. 17 32
      models/edb_data_business.go
  13. 23 38
      models/edb_data_calculate_avg.go
  14. 31 49
      models/edb_data_calculate_bp.go
  15. 23 38
      models/edb_data_calculate_cjjx.go
  16. 21 35
      models/edb_data_calculate_correlation.go
  17. 23 37
      models/edb_data_calculate_hbz.go
  18. 23 38
      models/edb_data_calculate_hcz.go
  19. 23 36
      models/edb_data_calculate_jp.go
  20. 20 35
      models/edb_data_calculate_kszs.go
  21. 22 37
      models/edb_data_calculate_ljz.go
  22. 23 37
      models/edb_data_calculate_ljznczj.go
  23. 35 51
      models/edb_data_calculate_ljztbpj.go
  24. 22 37
      models/edb_data_calculate_ljzzj.go
  25. 24 39
      models/edb_data_calculate_ljzzy.go
  26. 23 37
      models/edb_data_calculate_nh.go
  27. 38 53
      models/edb_data_calculate_nhcc.go
  28. 22 29
      models/edb_data_calculate_nszydbpjjs.go
  29. 24 39
      models/edb_data_calculate_percentile.go
  30. 20 35
      models/edb_data_calculate_qjjs.go
  31. 22 37
      models/edb_data_calculate_rjz.go
  32. 23 37
      models/edb_data_calculate_standard_deviation.go
  33. 23 40
      models/edb_data_calculate_sum.go
  34. 23 38
      models/edb_data_calculate_tbz.go
  35. 27 43
      models/edb_data_calculate_tcz.go
  36. 22 39
      models/edb_data_calculate_time_shift.go
  37. 24 39
      models/edb_data_calculate_zdyfx.go
  38. 33 49
      models/edb_data_calculate_zjpj.go
  39. 22 37
      models/edb_data_calculate_zsxy.go
  40. 8 7
      models/edb_data_insert_config.go
  41. 24 30
      models/edb_data_ly.go
  42. 1 1
      models/edb_data_table.go
  43. 27 39
      models/edb_data_ths_hf.go
  44. 26 39
      models/edb_data_trade_analysis.go
  45. 8 7
      models/edb_info.go
  46. 19 16
      models/edb_source.go
  47. 17 24
      models/predict_edb.go
  48. 41 56
      models/predict_edb_data_base.go
  49. 18 28
      models/predict_edb_data_calculate_bp.go
  50. 21 30
      models/predict_edb_data_calculate_cjjx.go
  51. 19 28
      models/predict_edb_data_calculate_hbz.go
  52. 20 29
      models/predict_edb_data_calculate_hcz.go
  53. 18 27
      models/predict_edb_data_calculate_jp.go
  54. 17 27
      models/predict_edb_data_calculate_kszs.go
  55. 23 38
      models/predict_edb_data_calculate_ljz.go
  56. 23 38
      models/predict_edb_data_calculate_ljznczj.go
  57. 29 39
      models/predict_edb_data_calculate_ljztbpj.go
  58. 24 38
      models/predict_edb_data_calculate_ljzzj.go
  59. 20 29
      models/predict_edb_data_calculate_ljzzy.go
  60. 19 28
      models/predict_edb_data_calculate_nh.go
  61. 36 43
      models/predict_edb_data_calculate_nhcc.go
  62. 19 29
      models/predict_edb_data_calculate_nszydbpjjs.go
  63. 23 37
      models/predict_edb_data_calculate_percentile.go
  64. 21 35
      models/predict_edb_data_calculate_qjjs.go
  65. 22 37
      models/predict_edb_data_calculate_standard_deviation.go
  66. 31 52
      models/predict_edb_data_calculate_tbz.go
  67. 21 32
      models/predict_edb_data_calculate_tcz.go
  68. 20 29
      models/predict_edb_data_calculate_time_shift.go
  69. 27 35
      models/predict_edb_data_calculate_zjpj.go
  70. 23 37
      models/predict_edb_data_calculate_zsxy.go
  71. 4 4
      models/predict_edb_rule_data.go
  72. 1 1
      services/base_from_jiayue.go

+ 103 - 0
global/dm.go

@@ -0,0 +1,103 @@
+package global
+
+import (
+	_ "dm"
+	dm "dmgorm2"
+	"eta_gn/eta_index_lib/utils"
+	"fmt"
+	"gorm.io/gorm"
+	"gorm.io/gorm/logger"
+	"gorm.io/gorm/schema"
+	"io"
+	"log"
+	"os"
+	"time"
+
+	_ "github.com/go-sql-driver/mysql"
+)
+
+// InitDm
+// @Description: 达梦数据库初始化
+func InitDm() {
+	dmSqlMap := make(map[string]*gorm.DB)
+
+	//开启日志
+	logWriter := io.MultiWriter(utils.Binlog) //binlog日志,记录到文件中去
+	if utils.RunMode == `dev` {               // 测试环境,默认输出在控制台,不需要的话,可以注释if里面下面的这行
+		logWriter = io.MultiWriter(utils.Binlog, os.Stdout)
+	}
+	newLogger := logger.New(log.New(logWriter, "\r\n", log.LstdFlags), logger.Config{
+		SlowThreshold:             200 * time.Millisecond, //慢sql :200ms
+		LogLevel:                  logger.Info,            //记录的日志类型,info代表所有信息都记录
+		IgnoreRecordNotFoundError: true,                   //是否忽略找不到数据错误信息(只是日志记录记录成err还是普通的输出的区别,并不影响业务代码中的:找不到数据行error)
+		Colorful:                  true,                   //是否颜色输出
+	})
+
+	// 默认库
+	connectDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_index\"", "default", newLogger, dmSqlMap, true)
+	// 手工数据库
+	connectDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_manual_index\"", "edb", newLogger, dmSqlMap, false)
+	// eta主库
+	connectDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_master\"", "master", newLogger, dmSqlMap, false)
+	// 钢联库
+	connectDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_gl\"", "gl", newLogger, dmSqlMap, false)
+
+	/*initDm(utils.MYSQL_URL, "default", newLogger, dmSqlMap, true)
+	initDm(utils.MYSQL_URL_EDB, "edb", newLogger, dmSqlMap, true)
+	initDm(utils.MYSQL_URL_MASTER, "master", newLogger, dmSqlMap, true)
+	initDm(utils.MYSQL_URL_GL, "gl", newLogger, dmSqlMap, true)*/
+
+	//全局赋值数据库链接
+	DmSQL = dmSqlMap
+
+}
+
+// connectDm
+// @Description: 达梦数据库连接
+// @param dsn
+// @param aliasName
+// @param newLogger
+// @param dmSqlMap
+// @param isDefault
+func connectDm(dsn, aliasName string, newLogger logger.Interface, dmSqlMap map[string]*gorm.DB, isDefault bool) {
+	//fmt.Println("dsn:", dsn, "  ==  ;aliasName:", aliasName)
+	if dsn == `` {
+		return
+	}
+	//dsn := "dm://SYSDBA:SYSDBA001@8.136.199.33:30236?schema=\"eta_master\""
+	//dsn := "dm://ETA:Han6258199118%60@localhost:5236?schema=ECOLOGY_TARGET"
+	db, err := gorm.Open(dm.Open(dsn), &gorm.Config{
+		Logger: newLogger,
+		NamingStrategy: schema.NamingStrategy{
+			SingularTable: true, // 表示使用单数表名,启用该选项后,GORM 将不会对表名进行复数化处理
+		},
+	})
+	if err != nil {
+		//global.LOG.Errorf("mysql 启动异常,数据库:default;Err:", err)
+		panic(fmt.Errorf("mysql 启动异常,数据库:%s;Err:%s", aliasName, err))
+	}
+
+	//创建连接池
+	sqlDB, err := db.DB()
+	if err != nil {
+		//global.LOG.Errorf("mysql 创建连接池失败,数据库:default;Err:", err)
+		panic(fmt.Errorf("mysql 创建连接池失败,数据库:%s;Err:%s", aliasName, err))
+	}
+
+	dmSqlMap[aliasName] = db
+
+	//默认数据库连接
+	if isDefault {
+		DEFAULT_DmSQL = db
+	}
+
+	// SetMaxIdleConns 设置空闲连接池中连接的最大数量
+	sqlDB.SetMaxIdleConns(50)
+
+	// SetMaxOpenConns 设置打开数据库连接的最大数量。
+	sqlDB.SetMaxOpenConns(100)
+
+	// SetConnMaxLifetime 设置了连接可复用的最大时间。
+	sqlDB.SetConnMaxLifetime(10 * time.Minute)
+
+}

+ 17 - 0
global/global.go

@@ -0,0 +1,17 @@
+package global
+
+import (
+	_ "dm"
+	_ "github.com/go-sql-driver/mysql"
+	"gorm.io/gorm"
+)
+
+var (
+	DmSQL         map[string]*gorm.DB //数据库连接配置
+	DEFAULT_DmSQL *gorm.DB            //默认数据库连接配置
+)
+
+func init() {
+	// 初始化达梦连接
+	InitDm()
+}

+ 13 - 12
models/business_conf.go

@@ -1,6 +1,7 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
 	"html"
@@ -85,7 +86,7 @@ func (m *BusinessConf) PrimaryId() string {
 }
 
 func (m *BusinessConf) Create() (err error) {
-	err = DmSQL["master"].Model(m).Create(m).Error
+	err = global.DmSQL["master"].Create(m).Error
 	if err != nil {
 		return
 	}
@@ -96,37 +97,37 @@ func (m *BusinessConf) CreateMulti(items []*BusinessConf) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	err = DmSQL["master"].Model(m).CreateInBatches(items, len(items)).Error
+	err = global.DmSQL["master"].CreateInBatches(items, 500).Error
 	return
 }
 
 func (m *BusinessConf) Update(cols []string) (err error) {
-	err = DmSQL["master"].Model(m).Select(cols).Updates(m).Error
+	err = global.DmSQL["master"].Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *BusinessConf) Del() (err error) {
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = DmSQL["master"].Exec(sql, m.Id).Error
+	err = global.DmSQL["master"].Exec(sql, m.Id).Error
 	return
 }
 
 func (m *BusinessConf) GetItemById(id int) (item *BusinessConf, err error) {
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = DmSQL["master"].Model(m).Raw(sql, id).First(&item).Error
+	err = global.DmSQL["master"].Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *BusinessConf) GetItemByCondition(condition string, pars []interface{}) (item *BusinessConf, err error) {
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s LIMIT 1`, m.TableName(), condition)
-	err = DmSQL["master"].Model(m).Raw(sql, pars).First(&item).Error
+	err = global.DmSQL["master"].Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *BusinessConf) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
 
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = DmSQL["master"].Model(m).Raw(sql, pars).First(&count).Error
+	err = global.DmSQL["master"].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
@@ -141,7 +142,7 @@ func (m *BusinessConf) GetItemsByCondition(condition string, pars []interface{},
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	err = DmSQL["master"].Model(m).Raw(sql, pars).Scan(&items).Error
+	err = global.DmSQL["master"].Raw(sql, pars).Scan(&items).Error
 	return
 }
 
@@ -156,7 +157,7 @@ func (m *BusinessConf) GetPageItemsByCondition(condition string, pars []interfac
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	err = DmSQL["master"].Model(m).Raw(sql, pars, startSize, pageSize).Scan(&items).Error
+	err = global.DmSQL["master"].Raw(sql, pars, startSize, pageSize).Scan(&items).Error
 	return
 }
 
@@ -167,7 +168,7 @@ func GetBusinessConf() (list map[string]string, err error) {
 	var items []*BusinessConf
 
 	sql := `SELECT * FROM business_conf`
-	err = DmSQL["master"].Model(&BusinessConf{}).Raw(sql).Scan(&items).Error
+	err = global.DmSQL["master"].Raw(sql).Scan(&items).Error
 	if err != nil {
 		return
 	}
@@ -192,7 +193,7 @@ type BusinessConfUpdate struct {
 func UpdateBusinessConfMulti(items []BusinessConfUpdate) (err error) {
 	sql := "UPDATE business_conf SET conf_val = ? WHERE conf_key = ?"
 	for _, v := range items {
-		err = DmSQL["master"].Model(&BusinessConf{}).Exec(sql, v.ConfVal, v.ConfKey).Error
+		err = global.DmSQL["master"].Exec(sql, v.ConfVal, v.ConfKey).Error
 		if err != nil {
 			return
 		}
@@ -202,7 +203,7 @@ func UpdateBusinessConfMulti(items []BusinessConfUpdate) (err error) {
 
 func GetBusinessConfByKey(key string) (item *BusinessConf, err error) {
 	sql := fmt.Sprintf(`SELECT * FROM business_conf WHERE conf_key = ? LIMIT 1`)
-	err = DmSQL["master"].Model(&BusinessConf{}).Raw(sql, key).Scan(&item).Error
+	err = global.DmSQL["master"].Raw(sql, key).First(&item).Error
 	return
 }
 

+ 18 - 26
models/ccf_stock_excel.go

@@ -1,16 +1,16 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
 
 // CCFStockExcel CCF化纤装置表格
 type CCFStockExcel struct {
-	CcfStockExcelId int       `orm:"column(ccf_stock_excel_id);pk"`
+	CcfStockExcelId int       `gorm:"primaryKey;autoIncrement;column:ccf_stock_excel_id"`
 	ClassifyId      int       `description:"分类ID"`
 	ExcelDate       time.Time `description:"表格日期"`
 	ExcelContent    string    `description:"表格HTML"`
@@ -50,12 +50,7 @@ func (m *CCFStockExcel) PrimaryId() string {
 }
 
 func (m *CCFStockExcel) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.CcfStockExcelId = int(id)
+	err = global.DEFAULT_DmSQL.Create(m).Error
 	return
 }
 
@@ -63,21 +58,18 @@ func (m *CCFStockExcel) CreateMulti(items []*CCFStockExcel) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	err = global.DEFAULT_DmSQL.CreateInBatches(items, 500).Error
 	return
 }
 
 func (m *CCFStockExcel) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	err = global.DEFAULT_DmSQL.Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *CCFStockExcel) Del() (err error) {
-	o := orm.NewOrm()
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.CcfStockExcelId).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, m.CcfStockExcelId).Error
 	return
 }
 
@@ -85,39 +77,39 @@ func (m *CCFStockExcel) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s IN (%s)`, m.TableName(), m.PrimaryId(), utils.GetOrmInReplace(len(menuIds)))
-	_, err = o.Raw(sql, menuIds).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *CCFStockExcel) GetItemById(id int) (item *CCFStockExcel, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *CCFStockExcel) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *CCFStockExcel, err error) {
-	o := orm.NewOrm()
+
 	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 = global.DEFAULT_DmSQL.Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *CCFStockExcel) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *CCFStockExcel) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*CCFStockExcel, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -127,12 +119,12 @@ func (m *CCFStockExcel) GetItemsByCondition(condition string, pars []interface{}
 		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 = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 func (m *CCFStockExcel) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*CCFStockExcel, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -142,6 +134,6 @@ func (m *CCFStockExcel) GetPageItemsByCondition(condition string, pars []interfa
 		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 = global.DEFAULT_DmSQL.Raw(sql, pars, startSize, pageSize).Scan(&items).Error
 	return
 }

+ 3 - 4
models/chart.go

@@ -2,9 +2,9 @@ package models
 
 import (
 	"encoding/json"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -41,7 +41,7 @@ func GetChartInfoDataKey(chartInfoId int) string {
 }
 
 type ChartInfo struct {
-	ChartInfoId     int    `orm:"column(chart_info_id);pk"`
+	ChartInfoId     int    `gorm:"primaryKey;autoIncrement;column:chart_info_id"`
 	ChartName       string `description:"来源名称"`
 	ChartNameEn     string `description:"英文图表名称"`
 	ChartClassifyId int    `description:"图表分类id"`
@@ -73,8 +73,7 @@ type ChartInfo struct {
 
 // GetChartInfoById 通过id获取图表信息
 func GetChartInfoById(chartInfoId int) (item *ChartInfo, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM chart_info WHERE chart_info_id=? `
-	err = o.Raw(sql, chartInfoId).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, chartInfoId).First(&item).Error
 	return
 }

+ 6 - 6
models/chart_edb_mapping.go

@@ -1,12 +1,12 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_index_lib/global"
 	"time"
 )
 
 type ChartEdbMapping struct {
-	ChartEdbMappingId int       `orm:"column(chart_edb_mapping_id);pk"`
+	ChartEdbMappingId int       `gorm:"primaryKey;autoIncrement;column:chart_edb_mapping_id"`
 	ChartInfoId       int       `description:"图表id"`
 	EdbInfoId         int       `description:"指标id"`
 	CreateTime        time.Time `description:"创建时间"`
@@ -27,21 +27,21 @@ type ChartEdbMapping struct {
 
 // GetChartEdbMappingListByEdbInfoId 根据指标id获取关联图表列表
 func GetChartEdbMappingListByEdbInfoId(edbInfoId int) (list []*ChartEdbMapping, err error) {
-	o := orm.NewOrm()
+
 	sql := ` SELECT *
              FROM chart_edb_mapping AS a
 			 WHERE edb_info_id=? 
              ORDER BY chart_edb_mapping_id ASC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&list)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId).Scan(&list).Error
 	return
 }
 
 // GetGroupChartEdbMappingListByEdbInfoId 根据指标id和来源分组获取关联图表列表
 func GetGroupChartEdbMappingListByEdbInfoId(edbInfoId, source int) (list []*ChartEdbMapping, err error) {
-	o := orm.NewOrm()
+
 	sql := ` SELECT *
              FROM chart_edb_mapping AS a
 			 WHERE edb_info_id=? AND source = ?  GROUP BY chart_info_id `
-	_, err = o.Raw(sql, edbInfoId, source).QueryRows(&list)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId, source).Scan(&list).Error
 	return
 }

+ 6 - 6
models/db.go

@@ -100,7 +100,7 @@ func init() {
 	initFactorEdbSeries()
 
 	// 初始化部分数据表变量(直接init会有顺序问题=_=!)
-	afterInitTable()
+	//afterInitTable()
 }
 
 // initFutureGood 注册期货数据 数据表
@@ -224,13 +224,13 @@ func initFactorEdbSeries() {
 // @Description: 初始化表结构的的后置操作
 // @author: Roc
 // @datetime 2024-07-01 13:31:09
-func afterInitTable() {
+/*func afterInitTable() {
 	// 初始化指标来源配置
-	//InitEdbSource()
+	InitEdbSource()
 
 	// 初始化是否启用mongo配置
-	//InitUseMongoConf()
+	InitUseMongoConf()
 
 	// 初始化Smm有色指标数据获取方式
-	//InitSmmDataMethodConf()
-}
+	InitSmmDataMethodConf()
+}*/

+ 2 - 94
models/dm_db.go

@@ -2,106 +2,14 @@ package models
 
 import (
 	_ "dm"
-	dm "dmgorm2"
-	"eta_gn/eta_index_lib/utils"
-	"fmt"
-	"gorm.io/gorm"
-	"gorm.io/gorm/logger"
-	"io"
-	"log"
-	"os"
-	"time"
-
 	_ "github.com/go-sql-driver/mysql"
 )
 
-var (
-	DmSQL         map[string]*gorm.DB //数据库连接配置
-	DEFAULT_DmSQL *gorm.DB            //默认数据库连接配置
-)
-
-// 达梦数据库初始化
-func init() {
-	dmSqlMap := make(map[string]*gorm.DB)
-
-	//开启日志
-	logWriter := io.MultiWriter(utils.Binlog) //binlog日志,记录到文件中去
-	if utils.RunMode == `debug` {             // 测试环境,默认输出在控制台,不需要的话,可以注释if里面下面的这行
-		logWriter = io.MultiWriter(utils.Binlog, os.Stdout)
-	}
-	newLogger := logger.New(log.New(logWriter, "\r\n", log.LstdFlags), logger.Config{
-		SlowThreshold:             200 * time.Millisecond, //慢sql :200ms
-		LogLevel:                  logger.Info,            //记录的日志类型,info代表所有信息都记录
-		IgnoreRecordNotFoundError: true,                   //是否忽略找不到数据错误信息(只是日志记录记录成err还是普通的输出的区别,并不影响业务代码中的:找不到数据行error)
-		Colorful:                  true,                   //是否颜色输出
-	})
-
-	// 默认库
-	initDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_index\"", "default", newLogger, dmSqlMap, true)
-	// 手工数据库
-	initDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_manual_index\"", "edb", newLogger, dmSqlMap, false)
-	// 指标库
-	initDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_master\"", "master", newLogger, dmSqlMap, false)
-	// 钢联库
-	initDm("dm://SYSDBA:SYSDBA001@8.136.199.33:30238?schema=\"eta_gl\"", "gl", newLogger, dmSqlMap, false)
-
-	/*initDm(utils.MYSQL_URL, "default", newLogger, dmSqlMap, true)
-	initDm(utils.MYSQL_URL_EDB, "edb", newLogger, dmSqlMap, true)
-	initDm(utils.MYSQL_URL_MASTER, "master", newLogger, dmSqlMap, true)
-	initDm(utils.MYSQL_URL_GL, "gl", newLogger, dmSqlMap, true)*/
-
-	//全局赋值数据库链接
-	DmSQL = dmSqlMap
-
-	// 初始化部分数据表变量(直接init会有顺序问题=_=!)
-	//afterInitTable()
-}
-
-// 达梦数据库连接
-func initDm(dsn, aliasName string, newLogger logger.Interface, dmSqlMap map[string]*gorm.DB, isDefault bool) {
-	if dsn == `` {
-		return
-	}
-	//dsn := "dm://SYSDBA:SYSDBA001@8.136.199.33:30236?schema=\"eta_master\""
-	//dsn := "dm://ETA:Han6258199118%60@localhost:5236?schema=ECOLOGY_TARGET"
-	db, err := gorm.Open(dm.Open(dsn), &gorm.Config{
-		Logger: newLogger,
-	})
-	if err != nil {
-		//global.LOG.Errorf("mysql 启动异常,数据库:default;Err:", err)
-		panic(fmt.Errorf("mysql 启动异常,数据库:%s;Err:%s", aliasName, err))
-	}
-
-	//创建连接池
-	sqlDB, err := db.DB()
-	if err != nil {
-		//global.LOG.Errorf("mysql 创建连接池失败,数据库:default;Err:", err)
-		panic(fmt.Errorf("mysql 创建连接池失败,数据库:%s;Err:%s", aliasName, err))
-	}
-
-	dmSqlMap[aliasName] = db
-
-	//默认数据库连接
-	if isDefault {
-		DEFAULT_DmSQL = db
-	}
-
-	// SetMaxIdleConns 设置空闲连接池中连接的最大数量
-	sqlDB.SetMaxIdleConns(50)
-
-	// SetMaxOpenConns 设置打开数据库连接的最大数量。
-	sqlDB.SetMaxOpenConns(100)
-
-	// SetConnMaxLifetime 设置了连接可复用的最大时间。
-	sqlDB.SetConnMaxLifetime(10 * time.Minute)
-
-}
-
 // afterInitTable
 // @Description: 初始化表结构的的后置操作
 // @author: Roc
 // @datetime 2024-07-01 13:31:09
-/*func afterInitTable() {
+func init() {
 	InitEdbSource()
 
 	// 初始化是否启用mongo配置
@@ -109,4 +17,4 @@ func initDm(dsn, aliasName string, newLogger logger.Interface, dmSqlMap map[stri
 
 	// 初始化Smm有色指标数据获取方式
 	InitSmmDataMethodConf()
-}*/
+}

+ 1 - 1
models/edb_adjust_conf.go

@@ -6,7 +6,7 @@ import (
 
 // EdbAdjustConf 计算指标于基础指标,关系表
 type EdbAdjustConf struct {
-	EdbInfoId     int       `orm:"column(edb_info_id);pk" description:"计算指标id"`
+	EdbInfoId     int       `gorm:"primaryKey;autoIncrement;column:edb_info_id" description:"计算指标id"`
 	SourceEndDate time.Time `description:"来源指标的实际数据日期"`
 	ModifyTime    time.Time `description:"修改时间"`
 	CreateTime    time.Time `description:"创建时间"`

+ 14 - 15
models/edb_classify.go

@@ -2,14 +2,14 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"strconv"
 	"time"
 )
 
 type EdbClassify struct {
-	ClassifyId      int       `orm:"column(classify_id);pk"`
+	ClassifyId      int       `gorm:"primaryKey;autoIncrement;column:classify_id"`
 	ClassifyType    uint8     `description:"分类类型,0:普通指标分类,1:预测指标分类"`
 	ClassifyName    string    `description:"分类名称"`
 	ParentId        int       `description:"父级id"`
@@ -25,38 +25,37 @@ type EdbClassify struct {
 }
 
 func AddEdbClassify(item *EdbClassify) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	err = global.DEFAULT_DmSQL.Create(item).Error
+	lastId = int64(item.ClassifyId)
 	return
 }
 
 // Update 更新分类基础信息
 func (edbClassify *EdbClassify) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(edbClassify, cols...)
+	err = global.DEFAULT_DmSQL.Model(edbClassify).Select(cols).Updates(edbClassify).Error
 	return
 }
 
 func GetEdbClassifyById(classifyId int) (item *EdbClassify, err error) {
-	o := orm.NewOrm()
+
 	sql := `SELECT * FROM edb_classify WHERE classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, classifyId).First(&item).Error
 	return
 }
 
 type EdbClassifySimplify struct {
-	ClassifyId   int    `description:"分类id"`
+	ClassifyId   int    `gorm:"primaryKey;autoIncrement;column:classify_id" description:"分类id"`
 	ClassifyName string `description:"分类名称"`
 	ParentId     int
 }
 
 // 递归获取所有目录
 func GetClassifyAllByClassifyId(classifyId int) (resultList []*EdbClassifySimplify, err error) {
-	o := orm.NewOrm()
+
 	for {
 		sql := ` SELECT * FROM edb_classify AS a WHERE a.classify_id=? order by sort asc,classify_id asc`
 		item := new(EdbClassifySimplify)
-		err = o.Raw(sql, classifyId).QueryRow(&item)
+		err = global.DEFAULT_DmSQL.Raw(sql, classifyId).First(&item).Error
 		if err != nil {
 			break
 		}
@@ -72,17 +71,17 @@ func GetClassifyAllByClassifyId(classifyId int) (resultList []*EdbClassifySimpli
 
 // 判断分类名称是否存在
 func GetEdbClassifyCount(classifyName string, parentId int, classifyType uint8) (item *EdbClassify, err error) {
-	o := orm.NewOrm()
+
 	sql := `SELECT * FROM edb_classify WHERE parent_id=? AND classify_name=? AND classify_type = ? `
-	err = o.Raw(sql, parentId, classifyName, classifyType).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, parentId, classifyName, classifyType).First(&item).Error
 	return
 }
 
 // GetEdbClassifyMaxSort 获取分类下最大的排序数
 func GetEdbClassifyMaxSort(parentId int, classifyType uint8) (sort int, err error) {
-	o := orm.NewOrm()
+
 	sql := `SELECT Max(sort) AS sort FROM edb_classify WHERE parent_id=? AND classify_type=? `
-	err = o.Raw(sql, parentId, classifyType).QueryRow(&sort)
+	err = global.DEFAULT_DmSQL.Raw(sql, parentId, classifyType).First(&sort).Error
 	return
 }
 

+ 22 - 23
models/edb_data_base.go

@@ -1,9 +1,10 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
 	"strings"
 	"time"
 )
@@ -20,7 +21,7 @@ type EdbDataItem struct {
 }
 
 type EdbData struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -51,12 +52,12 @@ type AddEdbInfoReq struct {
 
 // GetEdbInfoCountByCondition 获取指标数量
 func GetEdbInfoCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+
 	sql := ` SELECT COUNT(1) AS count FROM edb_info WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
@@ -64,7 +65,6 @@ func GetEdbInfoCountByCondition(condition string, pars []interface{}) (count int
 func GetEdbDataAllByEdbCode(edbCode string, source, subSource, limit int) (items []*EdbInfoSearchData, err error) {
 	var pars []interface{}
 	pars = append(pars, edbCode)
-	o := orm.NewOrm()
 
 	tableName := GetEdbDataTableName(source, subSource)
 	sql := ` SELECT * FROM %s WHERE edb_code=? ORDER BY data_time DESC`
@@ -73,12 +73,12 @@ func GetEdbDataAllByEdbCode(edbCode string, source, subSource, limit int) (items
 		pars = append(pars, limit)
 	}
 	sql = fmt.Sprintf(sql, tableName)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 func GetEdbDataByCondition(source, subSource int, condition string, pars []interface{}) (items []*EdbInfoSearchData, err error) {
-	o := orm.NewOrm()
+
 	tableName := GetEdbDataTableName(source, subSource)
 	sql := ` SELECT * FROM %s WHERE 1=1 `
 	if condition != "" {
@@ -86,26 +86,26 @@ func GetEdbDataByCondition(source, subSource int, condition string, pars []inter
 	}
 	sql += ` ORDER BY data_time DESC `
 	sql = fmt.Sprintf(sql, tableName)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 // GetEdbDataByDate 根据数据日期获取指标数据
 func GetEdbDataByDate(source, subSource int, edbCode, dataTime string) (item *EdbInfoSearchData, err error) {
-	o := orm.NewOrm()
+
 	tableName := GetEdbDataTableName(source, subSource)
 	sql := ` SELECT * FROM %s WHERE 1=1 AND edb_code = ? AND data_time =? ORDER BY data_time DESC `
 	sql = fmt.Sprintf(sql, tableName)
-	err = o.Raw(sql, edbCode, dataTime).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbCode, dataTime).First(&item).Error
 	return
 }
 
 func ModifyEdbDataById(source, subSource, edbDataId int, value string) (err error) {
-	o := orm.NewOrm()
+
 	tableName := GetEdbDataTableName(source, subSource)
 	sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_data_id=? `
 	sql = fmt.Sprintf(sql, tableName)
-	_, err = o.Raw(sql, value, edbDataId).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, value, edbDataId).Error
 	return
 }
 
@@ -114,8 +114,7 @@ func DeleteEdbDataById(source, subSource, edbDataId int) (err error) {
 	tableName := GetEdbDataTableName(source, subSource)
 	sql = fmt.Sprintf(sql, tableName)
 
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, edbDataId).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, edbDataId).Error
 	return
 }
 
@@ -128,30 +127,30 @@ type RefreshEdbInfoReq struct {
 
 // GetAllEdbDataList 获取所有的指标数据列表
 func GetAllEdbDataList(edbInfoId, source, subSource int) (existDataList []*EdbData, err error) {
-	o := orm.NewOrm()
+
 	dataTableName := GetEdbDataTableName(source, subSource)
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? order by data_time asc`
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	return
 }
 
 // GetAllEdbDataListByTo 获取所有的指标数据列表
-func GetAllEdbDataListByTo(to orm.TxOrmer, edbInfoId, source, subSource int) (existDataList []*EdbData, err error) {
+func GetAllEdbDataListByTo(to *gorm.DB, edbInfoId, source, subSource int) (existDataList []*EdbData, err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? order by data_time asc`
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	return
 }
 
 // GetFinalLastByTo 获取所有的指标数据列表
-func GetFinalLastByTo(to orm.TxOrmer, edbInfoId, source, subSource int, latestDate string) (finalLast EdbInfoSearchData, err error) {
+func GetFinalLastByTo(to *gorm.DB, edbInfoId, source, subSource int, latestDate string) (finalLast EdbInfoSearchData, err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := fmt.Sprintf(` SELECT data_time , value FROM %s WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `, dataTableName)
-	err = to.Raw(sql, edbInfoId, latestDate).QueryRow(&finalLast)
+	err = to.Raw(sql, edbInfoId, latestDate).First(&finalLast).Error
 	if err != nil && err.Error() != utils.ErrNoRow() {
 		return
 	}
@@ -160,7 +159,7 @@ func GetFinalLastByTo(to orm.TxOrmer, edbInfoId, source, subSource int, latestDa
 
 // 新版本
 type EdbDataV1 struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -179,7 +178,7 @@ type EdbDataList struct {
 	Value         float64 `description:"数据值"`
 }
 
-func DelEdbDataByMysql(to orm.TxOrmer, edbInfoId int, tableName string, removeDateList []string) (err error) {
+func DelEdbDataByMysql(to *gorm.DB, edbInfoId int, tableName string, removeDateList []string) (err error) {
 	if len(removeDateList) <= 0 {
 		return
 	}
@@ -187,7 +186,7 @@ func DelEdbDataByMysql(to orm.TxOrmer, edbInfoId int, tableName string, removeDa
 	removeDateStr := strings.Join(removeDateList, `","`)
 	removeDateStr = `"` + removeDateStr + `"`
 	sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-	_, err = to.Raw(sql, edbInfoId).Exec()
+	err = to.Exec(sql, edbInfoId).Error
 	return
 }
 

+ 17 - 32
models/edb_data_business.go

@@ -1,13 +1,13 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/models/mgo"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
 	"go.mongodb.org/mongo-driver/bson"
-	"reflect"
+	"gorm.io/gorm"
 	"strings"
 	"time"
 )
@@ -61,17 +61,12 @@ type RefreshBaseParams struct {
 // @return err error
 // @return errMsg string
 func (obj Business) Add(params AddBaseParams, businessIndexItem *BaseFromBusinessIndex) (edbInfo *EdbInfo, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -96,12 +91,11 @@ func (obj Business) Add(params AddBaseParams, businessIndexItem *BaseFromBusines
 	edbInfo.SubSource = businessIndexItem.Source
 	edbInfo.SubSourceName = businessIndexItem.SourceName
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(params.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	// 更新数据
 	err = obj.refresh(to, edbInfo, "")
@@ -121,17 +115,12 @@ func (obj Business) Add(params AddBaseParams, businessIndexItem *BaseFromBusines
 func (obj Business) Edit(params EditBaseParams, businessIndexItem *BaseFromBusinessIndex) (err error, errMsg string) {
 	edbInfo := params.EdbInfo
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -148,7 +137,7 @@ func (obj Business) Edit(params EditBaseParams, businessIndexItem *BaseFromBusin
 	edbInfo.SubSource = businessIndexItem.Source
 	edbInfo.SubSourceName = businessIndexItem.SourceName
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn", "SubSource", "SubSourceName")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn", "SubSource", "SubSourceName"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -161,16 +150,12 @@ func (obj Business) Edit(params EditBaseParams, businessIndexItem *BaseFromBusin
 
 // Refresh 刷新
 func (obj Business) Refresh(params RefreshBaseParams) (err error, errMsg string) {
-	to, err := orm.NewOrm().Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -195,7 +180,7 @@ func (obj Business) GetEdbType() int {
 	return utils.DEFAULT_EDB_TYPE
 }
 
-func (obj Business) refresh(to orm.TxOrmer, edbInfo *EdbInfo, startDate string) (err error) {
+func (obj Business) refresh(to *gorm.DB, edbInfo *EdbInfo, startDate string) (err error) {
 	if utils.UseMongo {
 		return obj.refreshByMongo(edbInfo, startDate)
 	} else {
@@ -363,7 +348,7 @@ func (obj Business) refreshByMongo(edbInfo *EdbInfo, startDate string) (err erro
 	return
 }
 
-func (obj Business) refreshByMysql(to orm.TxOrmer, edbInfo *EdbInfo, startDate string) (err error) {
+func (obj Business) refreshByMysql(to *gorm.DB, edbInfo *EdbInfo, startDate string) (err error) {
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := fmt.Sprint(edbInfo.EdbInfoId)
 
@@ -465,7 +450,7 @@ func (obj Business) refreshByMysql(to orm.TxOrmer, edbInfo *EdbInfo, startDate s
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
 
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除自有数据的明细数据失败,Err:" + err.Error())
 				return
@@ -475,7 +460,7 @@ func (obj Business) refreshByMysql(to orm.TxOrmer, edbInfo *EdbInfo, startDate s
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println("RefreshAllCalculate add Err", err.Error())
 			return

+ 23 - 38
models/edb_data_calculate_avg.go

@@ -3,11 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
-	"reflect"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -20,17 +20,12 @@ type CalculateAvg struct {
 func (obj CalculateAvg) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err error, errMsg string) {
 	req := params.Req
 	edbCode := params.EdbCode
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("CalculateAvg.Add,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -59,12 +54,11 @@ func (obj CalculateAvg) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 	edbInfo.Extra = req.Extra
 	edbInfo.EdbNameEn = req.EdbName
 	edbInfo.UnitEn = req.Unit
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	tagMap := make(map[string]int)
@@ -97,7 +91,7 @@ func (obj CalculateAvg) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -111,17 +105,12 @@ func (obj CalculateAvg) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 func (obj CalculateAvg) Edit(params EditCalculateBatchParams) (err error, errMsg string) {
 	req := params.Req
 	edbInfo := params.EdbInfo
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("CalculateAvg.Edit,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -147,7 +136,7 @@ func (obj CalculateAvg) Edit(params EditCalculateBatchParams) (err error, errMsg
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Extra", "EmptyType", "MaxEmptyType", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Extra", "EmptyType", "MaxEmptyType", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -184,7 +173,7 @@ func (obj CalculateAvg) Edit(params EditCalculateBatchParams) (err error, errMsg
 	}
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -192,7 +181,7 @@ func (obj CalculateAvg) Edit(params EditCalculateBatchParams) (err error, errMsg
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -228,7 +217,7 @@ func (obj CalculateAvg) Edit(params EditCalculateBatchParams) (err error, errMsg
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -252,17 +241,13 @@ func (obj CalculateAvg) Refresh(params RefreshParams) (err error, errMsg string)
 		fromEdbInfo, _ := GetEdbInfoById(v.FromEdbInfoId)
 		relationEdbInfoList = append(relationEdbInfoList, fromEdbInfo)
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println(reflect.TypeOf(obj).Name() + ",Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -272,7 +257,7 @@ func (obj CalculateAvg) Refresh(params RefreshParams) (err error, errMsg string)
 	return
 }
 
-func (obj CalculateAvg) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int) (err error) {
+func (obj CalculateAvg) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int) (err error) {
 
 	//to orm.TxOrmer, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int
 	realSaveDataMap := make(map[string]map[int]float64)
@@ -374,7 +359,7 @@ func (obj CalculateAvg) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return err
 	}
@@ -419,7 +404,7 @@ func (obj CalculateAvg) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 			if existStr != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, sk).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, sk).Error
 				if err != nil {
 					return err
 				}
@@ -429,7 +414,7 @@ func (obj CalculateAvg) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println("RefreshAllCalculate add Err", err.Error())
 			return
@@ -446,7 +431,7 @@ func (obj CalculateAvg) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 		//如果拼接指标变更了,那么需要删除所有的指标数据
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除计算失败的计算指标数据失败,Err:" + err.Error())
 			return

+ 31 - 49
models/edb_data_calculate_bp.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateBp 升频
 func AddCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -47,12 +43,13 @@ func AddCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		edbInfo.EdbType = 2
 		edbInfo.EmptyType = req.EmptyType
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+		newEdbInfoId := edbInfo.EdbInfoId
+		edbInfo.EdbInfoId = newEdbInfoId
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -70,7 +67,7 @@ func AddCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = edbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -84,7 +81,7 @@ func AddCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -98,17 +95,12 @@ func AddCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 
 // EditCalculateBp 修改升频数据
 func EditCalculateBp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -123,7 +115,7 @@ func EditCalculateBp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
 	edbInfo.EmptyType = req.EmptyType
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn", "EmptyType")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn", "EmptyType"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -145,14 +137,14 @@ func EditCalculateBp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
 	}
 	//清空原有数据
 	sql = ` DELETE FROM edb_data_calculate_bp WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -175,7 +167,7 @@ func EditCalculateBp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -189,17 +181,12 @@ func EditCalculateBp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 
 // RefreshAllCalculateBpBak 刷新所有升频数据
 func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -232,7 +219,7 @@ func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *Edb
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -278,7 +265,7 @@ func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *Edb
 					if existVal != valStr {
 						sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 						sql = fmt.Sprintf(sql, dataTableName)
-						_, err = to.Raw(sql, valStr, edbInfoId, needDay).Exec()
+						err = to.Exec(sql, valStr, edbInfoId, needDay).Error
 						if err != nil {
 							return err
 						}
@@ -299,7 +286,7 @@ func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *Edb
 				if existVal != valStr {
 					sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = to.Raw(sql, valStr, edbInfoId, currentItem.DataTime).Exec()
+					err = to.Exec(sql, valStr, edbInfoId, currentItem.DataTime).Error
 					if err != nil {
 						return err
 					}
@@ -311,7 +298,7 @@ func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *Edb
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}
@@ -320,17 +307,12 @@ func RefreshAllCalculateBpBak(edbInfoId, source, subSource int, fromEdbInfo *Edb
 }
 
 func RefreshAllCalculateBp(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, emptyType int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -341,7 +323,7 @@ func RefreshAllCalculateBp(edbInfoId, source, subSource int, fromEdbInfo *EdbInf
 }
 
 // refreshAllCalculateBp 刷新升频数据
-func refreshAllCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, order int, emptyType int) (err error) {
+func refreshAllCalculateBp(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, order int, emptyType int) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -379,7 +361,7 @@ func refreshAllCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 		//如果没有来源指标数据,那么已经入库的计算指标数据需要全部删除
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ?`, tableName)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除所有的升频指标数据失败,Err:" + err.Error())
 			return
@@ -486,7 +468,7 @@ func refreshAllCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 		//如果拼接指标变更了,那么需要删除所有的指标数据
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(len(removeDateList))+`) `, tableName)
-		_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+		err = to.Exec(sql, edbInfoId, removeDateList).Error
 		if err != nil {
 			err = fmt.Errorf("删除不存在的升频指标数据失败,Err:" + err.Error())
 			return
@@ -495,7 +477,7 @@ func refreshAllCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 	return
 }

+ 23 - 38
models/edb_data_calculate_cjjx.go

@@ -2,11 +2,12 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/nosixtools/solarlunar"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -14,17 +15,12 @@ import (
 
 // AddCalculateCjjx 超季节性
 func AddCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateCjjx,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("req.EdbInfoId:", req.EdbInfoId)
@@ -50,12 +46,11 @@ func AddCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, e
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
 
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -74,7 +69,7 @@ func AddCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, e
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = edbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -88,7 +83,7 @@ func AddCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, e
 		fmt.Println("dataTableName:", dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -102,17 +97,12 @@ func AddCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, e
 
 // EditCalculateCjjx 超季节性
 func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *EdbInfo, formulaInt int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateCjjx,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -134,7 +124,7 @@ func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -159,7 +149,7 @@ func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *
 	if count <= 0 {
 		// 需要删除原先的 计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -183,7 +173,7 @@ func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *
 				ModifyTime:                time.Now(),
 				FromSubSource:             fromEdbInfo.SubSource,
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -193,7 +183,7 @@ func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -206,17 +196,12 @@ func EditCalculateCjjx(req *EdbInfoCalculateBatchEditReq, edbInfo, fromEdbInfo *
 
 // RefreshAllCalculateCjjx 刷新全部超季节性数据
 func RefreshAllCalculateCjjx(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateCjjx,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -227,7 +212,7 @@ func RefreshAllCalculateCjjx(edbInfoId, source, subSource int, fromEdbInfo *EdbI
 }
 
 // refreshAllCalculateCjjx 刷新全部超季节性数据
-func refreshAllCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (err error) {
+func refreshAllCalculateCjjx(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (err error) {
 	if err != nil {
 		return
 	}
@@ -258,7 +243,7 @@ func refreshAllCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, f
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -369,7 +354,7 @@ func refreshAllCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, f
 				if existStr != val {
 					sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+					err = to.Exec(sql, val, edbInfoId, av).Error
 					if err != nil {
 						return err
 					}
@@ -390,7 +375,7 @@ func refreshAllCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, f
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			tableName := GetEdbDataTableName(source, subSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, tableName)
-			_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的超季节性指标数据失败,Err:" + err.Error())
 				return
@@ -400,7 +385,7 @@ func refreshAllCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, f
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 21 - 35
models/edb_data_calculate_correlation.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -14,17 +15,12 @@ import (
 
 // AddCalculateCorrelation 扩散指数
 func AddCalculateCorrelation(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateCorrelation,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -51,12 +47,11 @@ func AddCalculateCorrelation(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueC
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = 2
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	var edbInfoA, edbInfoB *EdbInfo
 	//关联关系
@@ -104,7 +99,7 @@ func AddCalculateCorrelation(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueC
 		return
 	}
 
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -117,17 +112,12 @@ func AddCalculateCorrelation(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueC
 
 // EditCalculateCorrelation 修改扩散指数数据
 func EditCalculateCorrelation(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq) (err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateCorrelation,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -141,14 +131,15 @@ func EditCalculateCorrelation(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditRe
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	//err = to.Model(edbInfo).Select([]string{ "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -156,7 +147,7 @@ func EditCalculateCorrelation(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditRe
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -207,7 +198,7 @@ func EditCalculateCorrelation(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditRe
 		err = errors.New(errMsg)
 		return
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -245,17 +236,12 @@ func RefreshAllCalculateCorrelation(edbInfo *EdbInfo) (err error, errMsg string)
 		err = errors.New(errMsg)
 		return
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateCorrelation,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -281,7 +267,7 @@ type EdbCalculateFormula struct {
 }
 
 // refreshAllCalculateCorrelation 刷新扩散指数数据
-func refreshAllCalculateCorrelation(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfoA, edbInfoB *EdbInfo, edbCode, calculateFormula string) (err error, errMsg string) {
+func refreshAllCalculateCorrelation(to *gorm.DB, edbInfoId, source, subSource int, edbInfoA, edbInfoB *EdbInfo, edbCode, calculateFormula string) (err error, errMsg string) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_CORRELATION, utils.DATA_SUB_SOURCE_EDB)
 
@@ -359,7 +345,7 @@ func refreshAllCalculateCorrelation(to orm.TxOrmer, edbInfoId, source, subSource
 
 		if isAdd {
 			addSql = strings.TrimRight(addSql, ",")
-			_, err = to.Raw(addSql).Exec()
+			err = to.Exec(addSql).Error
 		}
 
 		// 移除不存在的日期数据
@@ -371,7 +357,7 @@ func refreshAllCalculateCorrelation(to orm.TxOrmer, edbInfoId, source, subSource
 			removeDateStr := strings.Join(removeDateList, `","`)
 			removeDateStr = `"` + removeDateStr + `"`
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-			_, err = to.Raw(sql, edbInfoId).Exec()
+			err = to.Exec(sql, edbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除扩散指数指标数据失败,Err:" + err.Error())
 				return

+ 23 - 37
models/edb_data_calculate_hbz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateHbz 新增环比值指标
 func AddCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateHbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -46,12 +42,12 @@ func AddCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -69,7 +65,7 @@ func AddCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = edbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -82,7 +78,7 @@ func AddCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_HBZ, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -96,17 +92,12 @@ func AddCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 
 // EditCalculateHbz 环比值
 func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo, formulaInt int, oldCalculateFormula string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateHbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -120,7 +111,7 @@ func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -143,7 +134,7 @@ func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	//删除,计算指标关联的,基础指标的关联关系
 	if count <= 0 {
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -166,7 +157,7 @@ func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 				ModifyTime:                time.Now(),
 				FromSubSource:             edbInfo.SubSource,
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -174,7 +165,7 @@ func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	}
 	//清空原有数据
 	sql := ` DELETE FROM edb_data_calculate_hbz WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -187,17 +178,12 @@ func EditCalculateHbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 // RefreshAllCalculateHbz 刷新所有环比值数据
 func RefreshAllCalculateHbz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateHbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -207,7 +193,7 @@ func RefreshAllCalculateHbz(edbInfoId, source, subSource int, fromEdbInfo *EdbIn
 }
 
 // refreshAllCalculateHbz 刷新所有环比值数据
-func refreshAllCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
+func refreshAllCalculateHbz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -230,7 +216,7 @@ func refreshAllCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -267,7 +253,7 @@ func refreshAllCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 							if existStr != val {
 								sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = to.Raw(sql, val, edbInfoId, currentItem.DataTime).Exec()
+								err = to.Exec(sql, val, edbInfoId, currentItem.DataTime).Error
 								if err != nil {
 									return err
 								}
@@ -281,7 +267,7 @@ func refreshAllCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 23 - 38
models/edb_data_calculate_hcz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateHcz 新增环差值指标
 func AddCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateHcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -46,12 +42,11 @@ func AddCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -70,7 +65,7 @@ func AddCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -83,7 +78,7 @@ func AddCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_HCZ, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -97,17 +92,12 @@ func AddCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 
 // EditCalculateHcz 修改环差值指标
 func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo, formulaInt int, oldCalculateFormula string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateHcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -121,7 +111,7 @@ func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -144,7 +134,7 @@ func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	//删除,计算指标关联的,基础指标的关联关系
 	if count <= 0 {
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -167,7 +157,7 @@ func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 				ModifyTime:                time.Now(),
 				FromSubSource:             fromEdbInfo.SubSource,
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -175,7 +165,7 @@ func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	}
 	//清空原有数据
 	sql := ` DELETE FROM edb_data_calculate_hcz WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -188,17 +178,12 @@ func EditCalculateHcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 // RefreshAllCalculateHcz 刷新所有环差值数据
 func RefreshAllCalculateHcz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateHcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -208,7 +193,7 @@ func RefreshAllCalculateHcz(edbInfoId, source, subSource int, fromEdbInfo *EdbIn
 }
 
 // refreshAllCalculateHcz 刷新所有环差值数据
-func refreshAllCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
+func refreshAllCalculateHcz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
 	//计算数据
@@ -237,7 +222,7 @@ func refreshAllCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	//	existPars = append(existPars, startDate)
 	//}
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId, existPars).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId, existPars).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -281,7 +266,7 @@ func refreshAllCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 							if existStr != val {
 								sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = to.Raw(sql, val, edbInfoId, currentItem.DataTime).Exec()
+								err = to.Exec(sql, val, edbInfoId, currentItem.DataTime).Error
 								if err != nil {
 									return err
 								}
@@ -295,7 +280,7 @@ func refreshAllCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}
@@ -313,7 +298,7 @@ func refreshAllCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除计算失败的计算指标数据失败,Err:" + err.Error())
 			return

+ 23 - 36
models/edb_data_calculate_jp.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -40,17 +41,12 @@ func CheckFrequency(fromEdbFrequency, edbFrequency string) (ok bool) {
 
 // AddCalculateJp 降频
 func AddCalculateJp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateJp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -73,12 +69,12 @@ func AddCalculateJp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -96,7 +92,7 @@ func AddCalculateJp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -110,7 +106,7 @@ func AddCalculateJp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -124,17 +120,12 @@ func AddCalculateJp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 
 // EditCalculateJp 修改降频数据
 func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateJp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -148,7 +139,8 @@ func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	//err = to.Model(edbInfo).Select([]string{ "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -170,7 +162,7 @@ func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -178,7 +170,7 @@ func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -201,7 +193,7 @@ func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -214,17 +206,12 @@ func EditCalculateJp(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 }
 
 func RefreshAllCalculateJp(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateJp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -235,7 +222,7 @@ func RefreshAllCalculateJp(edbInfoId, source, subSource int, fromEdbInfo *EdbInf
 }
 
 // refreshAllCalculateJp 刷新降频数据
-func refreshAllCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (err error) {
+func refreshAllCalculateJp(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
 	//计算数据
@@ -461,7 +448,7 @@ func refreshAllCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -473,7 +460,7 @@ func refreshAllCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return

+ 20 - 35
models/edb_data_calculate_kszs.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -14,17 +15,12 @@ import (
 
 // AddCalculateKszs 扩散指数
 func AddCalculateKszs(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -51,12 +47,11 @@ func AddCalculateKszs(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode str
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = 2
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	tagMap := make(map[string]int)
@@ -89,7 +84,7 @@ func AddCalculateKszs(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode str
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -102,17 +97,12 @@ func AddCalculateKszs(req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode str
 
 // EditCalculateKszs 修改扩散指数数据
 func EditCalculateKszs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -126,14 +116,14 @@ func EditCalculateKszs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq) (err
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -141,7 +131,7 @@ func EditCalculateKszs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq) (err
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -177,7 +167,7 @@ func EditCalculateKszs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq) (err
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -200,17 +190,12 @@ func RefreshAllCalculateKszs(edbInfo *EdbInfo) (err error) {
 		fromEdbInfo, _ := GetEdbInfoById(v.FromEdbInfoId)
 		relationEdbInfoList = append(relationEdbInfoList, fromEdbInfo)
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -227,7 +212,7 @@ type KszsConfig struct {
 }
 
 // refreshAllCalculateKszs 刷新扩散指数数据
-func refreshAllCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource int, relationEdbInfoList []*EdbInfo, edbCode, calculateFormula string, tagMap map[string]int) (err error) {
+func refreshAllCalculateKszs(to *gorm.DB, edbInfoId, source, subSource int, relationEdbInfoList []*EdbInfo, edbCode, calculateFormula string, tagMap map[string]int) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_KSZS, utils.DATA_SUB_SOURCE_EDB)
 
@@ -374,7 +359,7 @@ func refreshAllCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource int, r
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -386,7 +371,7 @@ func refreshAllCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource int, r
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Raw(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除扩散指数指标数据失败,Err:" + err.Error())
 			return

+ 22 - 37
models/edb_data_calculate_ljz.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -34,17 +35,12 @@ func (obj Ljz) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err error,
 		err = errors.New(errMsg)
 		return
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -84,12 +80,11 @@ func (obj Ljz) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err error,
 		Extra:            req.Extra,
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -108,7 +103,7 @@ func (obj Ljz) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err error,
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -138,17 +133,12 @@ func (obj Ljz) Edit(params EditCalculateBatchParams) (err error, errMsg string)
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -167,7 +157,7 @@ func (obj Ljz) Edit(params EditCalculateBatchParams) (err error, errMsg string)
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "Extra", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "Extra", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -195,14 +185,14 @@ func (obj Ljz) Edit(params EditCalculateBatchParams) (err error, errMsg string)
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Raw(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Raw(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -226,7 +216,7 @@ func (obj Ljz) Edit(params EditCalculateBatchParams) (err error, errMsg string)
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -251,17 +241,12 @@ func (obj Ljz) Refresh(params RefreshParams) (err error, errMsg string) {
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -286,7 +271,7 @@ func (obj Ljz) GetEdbType() int {
 	return utils.CALCULATE_EDB_TYPE
 }
 
-func (obj Ljz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string, extra string) (err error) {
+func (obj Ljz) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string, extra string) (err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
@@ -652,7 +637,7 @@ func (obj Ljz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -690,7 +675,7 @@ func (obj Ljz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -718,7 +703,7 @@ func (obj Ljz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -729,7 +714,7 @@ func (obj Ljz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Raw(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 23 - 37
models/edb_data_calculate_ljznczj.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -33,17 +34,12 @@ func (obj LjzNczj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err er
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -82,12 +78,11 @@ func (obj LjzNczj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err er
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -106,7 +101,7 @@ func (obj LjzNczj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err er
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -136,19 +131,15 @@ func (obj LjzNczj) Edit(params EditCalculateBatchParams) (err error, errMsg stri
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
+
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 
 	var isRecalculate bool
@@ -164,7 +155,7 @@ func (obj LjzNczj) Edit(params EditCalculateBatchParams) (err error, errMsg stri
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -192,14 +183,14 @@ func (obj LjzNczj) Edit(params EditCalculateBatchParams) (err error, errMsg stri
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -223,7 +214,7 @@ func (obj LjzNczj) Edit(params EditCalculateBatchParams) (err error, errMsg stri
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -248,17 +239,12 @@ func (obj LjzNczj) Refresh(params RefreshParams) (err error, errMsg string) {
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -283,7 +269,7 @@ func (obj LjzNczj) GetEdbType() int {
 	return utils.CALCULATE_EDB_TYPE
 }
 
-func (obj LjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (err error) {
+func (obj LjzNczj) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
@@ -378,7 +364,7 @@ func (obj LjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edb
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -416,7 +402,7 @@ func (obj LjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edb
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -444,7 +430,7 @@ func (obj LjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edb
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -455,7 +441,7 @@ func (obj LjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edb
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 35 - 51
models/edb_data_calculate_ljztbpj.go

@@ -2,10 +2,12 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"sort"
 	"strings"
 	"time"
@@ -13,7 +15,7 @@ import (
 
 // EdbDataCalculateLjztbpj 累计值同比拼接数据结构体
 type EdbDataCalculateLjztbpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -26,17 +28,12 @@ type EdbDataCalculateLjztbpj struct {
 
 // AddCalculateLjztbpj 新增累计值同比拼接数据
 func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateLjztbpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//待拼接指标map
@@ -103,12 +100,12 @@ func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, second
 			EdbType:          2,
 			Sort:             GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE),
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
 		if err != nil {
@@ -133,14 +130,14 @@ func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, second
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
 
 		//删除指标关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id=? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	}
 
 	//关联关系
@@ -165,12 +162,12 @@ func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, second
 			ModifyTime:                time.Now(),
 			FromSubSource:             firstEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemA)
+		tmpErr := to.Create(existItemA).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemA.EdbInfoCalculateMappingId = int(insertId)
+
 	}
 
 	//同比值指标
@@ -192,12 +189,12 @@ func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, second
 			ModifyTime:                time.Now(),
 			FromSubSource:             secondEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemB)
+		tmpErr := to.Create(existItemB).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemB.EdbInfoCalculateMappingId = int(insertId)
+
 	}
 
 	// 添加数据
@@ -208,17 +205,12 @@ func AddCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, second
 
 // EditCalculateLjztbpj 编辑累计值同比拼接数据
 func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateLjztbpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -234,7 +226,7 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -272,7 +264,7 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 	if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 		//删除之前的A指标关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-		_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除拼接日期之前的指标关联关系失败,Err:" + err.Error())
 			return
@@ -297,12 +289,11 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 				ModifyTime:                time.Now(),
 				FromSubSource:             firstEdbInfo.SubSource,
 			}
-			insertId, tmpErr := to.Insert(existItemA)
+			tmpErr := to.Create(existItemA).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemA.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -312,7 +303,7 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 	if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 		//删除之前的B指标关联关系
 		sql = ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-		_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除拼接日期之后的指标关联关系失败,Err:" + err.Error())
 			return
@@ -338,12 +329,11 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 				FromSubSource:             secondEdbInfo.SubSource,
 			}
 
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -354,7 +344,7 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 		// 删除之前所有的指标数据
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql = fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除所有的累计值同比拼接指标数据失败,Err:" + err.Error())
 			return
@@ -380,7 +370,7 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 				return
 			}
 			edbInfo.CalculateFormula = lastDateTime.Format(utils.FormatDate)
-			_, err = to.Update(edbInfo, "CalculateFormula")
+			err = to.Model(edbInfo).Select([]string{"CalculateFormula"}).Updates(edbInfo).Error
 			if err != nil {
 				return
 			}
@@ -395,25 +385,19 @@ func EditCalculateLjztbpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbIn
 
 // GetAllEdbDataCalculateLjztbpjByEdbInfoId 根据指标id获取全部的数据
 func GetAllEdbDataCalculateLjztbpjByEdbInfoId(edbInfoId int) (items []*EdbDataCalculateLjztbpj, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_data_calculate_ljztbpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId).Scan(&items).Error
 	return
 }
 
 // RefreshAllCalculateLjztbpj 刷新所有 累计值同比拼接 数据
 func RefreshAllCalculateLjztbpj(edbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateLjztbpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -442,7 +426,7 @@ func RefreshAllCalculateLjztbpj(edbInfo *EdbInfo) (err error) {
 }
 
 // refreshAllCalculateLjztbpj 刷新所有 累计值同比拼接 数据
-func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping) (err error) {
+func refreshAllCalculateLjztbpj(to *gorm.DB, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping) (err error) {
 	//查询当前指标现有的数据
 	var condition string
 	var pars []interface{}
@@ -452,7 +436,7 @@ func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, ex
 	//根据指标id获取全部的数据
 	var dataList []*EdbDataCalculateLjztbpj
 	sql := ` SELECT * FROM edb_data_calculate_ljztbpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return err
 	}
@@ -491,7 +475,7 @@ func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, ex
 				if edbData.Value != v.Value {
 					//更新指标数据
 					edbData.Value = v.Value
-					_, _ = to.Update(edbData, "Value")
+					_ = to.Model(edbData).Select([]string{"Value"}).Updates(edbData).Error
 				}
 			} else {
 				pjDataMap[v.DataTime] = v.Value
@@ -620,7 +604,7 @@ func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, ex
 
 		//数据入库
 		if len(addDataList) > 0 {
-			_, tmpErr := to.InsertMulti(len(addDataList), addDataList)
+			tmpErr := to.CreateInBatches(addDataList, 500).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
@@ -637,7 +621,7 @@ func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, ex
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除不存在的累计值同比拼接指标数据失败,Err:" + err.Error())
 				return
@@ -651,7 +635,7 @@ func refreshAllCalculateLjztbpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, ex
 		for edbDate, edbDataValue := range updateEdbDataMap {
 			sql := fmt.Sprintf(` UPDATE  %s set value = ?,modify_time=now() WHERE edb_info_id = ? and data_time = ? `, tableName)
 
-			_, err = to.Raw(sql, edbDataValue, edbInfo.EdbInfoId, edbDate).Exec()
+			err = to.Exec(sql, edbDataValue, edbInfo.EdbInfoId, edbDate).Error
 			if err != nil {
 				err = errors.New("更新现有的累计值同比拼接指标数据失败,Err:" + err.Error())
 				return

+ 22 - 37
models/edb_data_calculate_ljzzj.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -26,17 +27,12 @@ func (obj Ljzzj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err erro
 		err = errors.New(errMsg)
 		return
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -59,12 +55,11 @@ func (obj Ljzzj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err erro
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -83,7 +78,7 @@ func (obj Ljzzj) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err erro
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -106,17 +101,12 @@ func (obj Ljzzj) Edit(params EditCalculateBatchParams) (err error, errMsg string
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -130,7 +120,7 @@ func (obj Ljzzj) Edit(params EditCalculateBatchParams) (err error, errMsg string
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -152,14 +142,14 @@ func (obj Ljzzj) Edit(params EditCalculateBatchParams) (err error, errMsg string
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -183,7 +173,7 @@ func (obj Ljzzj) Edit(params EditCalculateBatchParams) (err error, errMsg string
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -208,17 +198,12 @@ func (obj Ljzzj) Refresh(params RefreshParams) (err error, errMsg string) {
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -243,7 +228,7 @@ func (obj Ljzzj) GetEdbType() int {
 	return utils.CALCULATE_EDB_TYPE
 }
 
-func (obj Ljzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (err error) {
+func (obj Ljzzj) refresh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
@@ -283,7 +268,7 @@ func (obj Ljzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromE
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -375,7 +360,7 @@ func (obj Ljzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromE
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -384,7 +369,7 @@ func (obj Ljzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromE
 	return
 }
 
-func (obj Ljzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to orm.TxOrmer) (newSql string, isAdd bool, err error) {
+func (obj Ljzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to *gorm.DB) (newSql string, isAdd bool, err error) {
 	newSql = addSql
 	saveValue := utils.SubFloatToString(val, 4)
 	//判断数据是否存在
@@ -401,7 +386,7 @@ func (obj Ljzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTable
 		if existVal != saveValue {
 			sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 			sql = fmt.Sprintf(sql, dataTableName)
-			_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+			err = to.Exec(sql, saveValue, edbInfoId, date).Error
 		}
 	}
 	return

+ 24 - 39
models/edb_data_calculate_ljzzy.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateLjzzy 累计值转月
 func AddCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateLjzzy,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -47,12 +43,11 @@ func AddCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo,
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -71,7 +66,7 @@ func AddCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo,
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = edbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -84,7 +79,7 @@ func AddCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo,
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_LJZZY, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -98,17 +93,12 @@ func AddCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo,
 
 // EditCalculateLjzzy 编辑累计值转月数据
 func EditCalculateLjzzy(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateLjzzy,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -123,7 +113,7 @@ func EditCalculateLjzzy(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fro
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -145,14 +135,14 @@ func EditCalculateLjzzy(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fro
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM edb_data_calculate_ljzzy WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -176,7 +166,7 @@ func EditCalculateLjzzy(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fro
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -190,17 +180,12 @@ func EditCalculateLjzzy(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fro
 
 // RefreshAllCalculateLjzzy 刷新全部累计值转月数据
 func RefreshAllCalculateLjzzy(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateLjzzy,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -210,7 +195,7 @@ func RefreshAllCalculateLjzzy(edbInfoId, source, subSource int, fromEdbInfo *Edb
 	return
 }
 
-func refreshAllCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
+func refreshAllCalculateLjzzy(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -252,7 +237,7 @@ func refreshAllCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int,
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -346,7 +331,7 @@ func refreshAllCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int,
 				//	if existVal != saveValue {
 				//		sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				//		sql = fmt.Sprintf(sql, dataTableName)
-				//		_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+				//		err = to.Raw(sql, saveValue, edbInfoId, date).Error
 				//		if err != nil {
 				//			return err
 				//		}
@@ -365,7 +350,7 @@ func refreshAllCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int,
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println("RefreshAllCalculateLjzzy add Err", err.Error())
 			return
@@ -374,7 +359,7 @@ func refreshAllCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int,
 	return
 }
 
-func calculateLjzzy(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to orm.TxOrmer) (newSql string, isAdd bool, err error) {
+func calculateLjzzy(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to *gorm.DB) (newSql string, isAdd bool, err error) {
 	newSql = addSql
 	saveValue := utils.SubFloatToString(val, 4)
 	//判断数据是否存在
@@ -391,7 +376,7 @@ func calculateLjzzy(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, a
 		if existVal != saveValue {
 			sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 			sql = fmt.Sprintf(sql, dataTableName)
-			_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+			err = to.Exec(sql, saveValue, edbInfoId, date).Error
 		}
 	}
 	return

+ 23 - 37
models/edb_data_calculate_nh.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateNh 年化
 func AddCalculateNh(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateNh,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -46,12 +42,12 @@ func AddCalculateNh(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -69,7 +65,7 @@ func AddCalculateNh(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -83,7 +79,7 @@ func AddCalculateNh(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -97,17 +93,12 @@ func AddCalculateNh(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edb
 
 // EditCalculateNh 修改年化数据
 func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateNh,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -121,7 +112,7 @@ func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -143,7 +134,7 @@ func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -151,7 +142,7 @@ func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -174,7 +165,7 @@ func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -187,17 +178,12 @@ func EditCalculateNh(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEd
 }
 
 func RefreshAllCalculateNh(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateNh,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -208,7 +194,7 @@ func RefreshAllCalculateNh(edbInfoId, source, subSource int, fromEdbInfo *EdbInf
 }
 
 // refreshAllCalculateNh 刷新年化数据
-func refreshAllCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (err error) {
+func refreshAllCalculateNh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_NH, utils.DATA_SUB_SOURCE_EDB)
 
@@ -247,7 +233,7 @@ func refreshAllCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 	if lenFromDataList <= 0 {
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return
@@ -352,7 +338,7 @@ func refreshAllCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -364,7 +350,7 @@ func refreshAllCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource int, fro
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return

+ 38 - 53
models/edb_data_calculate_nhcc.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"math"
 	"strings"
 	"time"
@@ -13,7 +14,7 @@ import (
 
 // EdbDataCalculateNhcc 拟合残差数据结构体
 type EdbDataCalculateNhcc struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -32,17 +33,12 @@ type NhccDate struct {
 
 // AddCalculateNhcc 新增拟合残差数据
 func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, nhccDate NhccDate, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -68,12 +64,12 @@ func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			EdbType:          2,
 			Sort:             GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE),
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
 		if err != nil {
@@ -98,14 +94,14 @@ func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
 
 		//删除指标关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id=? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	}
 
 	//关联关系
@@ -131,12 +127,12 @@ func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			ModifyTime:                time.Now(),
 			FromSubSource:             firstEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemA)
+		tmpErr := to.Create(existItemA).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemA.EdbInfoCalculateMappingId = int(insertId)
+
 	}
 
 	//第二个指标
@@ -159,12 +155,12 @@ func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			ModifyTime:                time.Now(),
 			FromSubSource:             secondEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemB)
+		tmpErr := to.Create(existItemB).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemB.EdbInfoCalculateMappingId = int(insertId)
+
 	}
 
 	//拼接数据
@@ -175,17 +171,12 @@ func AddCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 
 // EditCalculateNhcc 编辑拟合残差数据
 func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo, nhccDate NhccDate) (err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -201,7 +192,7 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -240,7 +231,7 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 		if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 			//删除之前的A指标关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除指标A关联关系失败,Err:" + err.Error())
 				return
@@ -251,7 +242,7 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 		if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 			//删除之前的B指标关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除指标B关联关系失败,Err:" + err.Error())
 				return
@@ -283,12 +274,11 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 					ModifyTime:                time.Now(),
 					FromSubSource:             firstEdbInfo.SubSource,
 				}
-				insertId, tmpErr := to.Insert(existItemA)
+				tmpErr := to.Create(existItemA).Error
 				if tmpErr != nil {
 					err = tmpErr
 					return
 				}
-				existItemA.EdbInfoCalculateMappingId = int(insertId)
 
 				isNeedCalculateData = true
 			}
@@ -296,7 +286,7 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 			// 如果平移天数不一致的话,
 			existItemA.ModifyTime = time.Now()
 			existItemA.MoveValue = req.EdbInfoIdArr[0].MoveValue
-			_, err = to.Update(existItemA, "ModifyTime", "MoveValue")
+			err = to.Model(existItemA).Select([]string{"ModifyTime", "MoveValue"}).Updates(existItemA).Error
 			if err != nil {
 				return
 			}
@@ -327,19 +317,18 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 				ModifyTime:                time.Now(),
 				FromSubSource:             secondEdbInfo.SubSource,
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		} else if existItemB.MoveValue != req.EdbInfoIdArr[1].MoveValue {
 			// 如果平移天数不一致的话,
 			existItemB.ModifyTime = time.Now()
 			existItemB.MoveValue = req.EdbInfoIdArr[1].MoveValue
-			_, err = to.Update(existItemB, "ModifyTime", "MoveValue")
+			err = to.Model(existItemB).Select([]string{"ModifyTime", "MoveValue"}).Updates(existItemB).Error
 			if err != nil {
 				return
 			}
@@ -353,7 +342,7 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除历史数据失败,Err:" + err.Error())
 			return
@@ -367,14 +356,12 @@ func EditCalculateNhcc(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 
 // RefreshAllCalculateNhcc 刷新所有 拟合残差 数据
 func RefreshAllCalculateNhcc(edbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//查询关联指标信息
@@ -420,7 +407,7 @@ func RefreshAllCalculateNhcc(edbInfo *EdbInfo) (err error) {
 }
 
 // refreshAllCalculateNhcc 刷新所有 拟合残差 数据
-func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (err error, errMsg string) {
+func refreshAllCalculateNhcc(to *gorm.DB, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (err error, errMsg string) {
 	//查询当前指标现有的数据
 	var condition string
 	var pars []interface{}
@@ -429,7 +416,7 @@ func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 
 	var dataList []*EdbDataCalculateNhcc
 	sql := ` SELECT * FROM edb_data_calculate_nhcc WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return
 	}
@@ -605,7 +592,7 @@ func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 			// 如果有的话,还需要判断值是否一致,一致则不处理,不一致则修改
 			if existData.Value != val {
 				existData.Value = val
-				_, err = to.Update(existData, "Value")
+				_ = to.Model(existData).Select( []string{"Value"}).Updates(existData).Error
 				if err != nil {
 					return
 				}
@@ -624,7 +611,7 @@ func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, tableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的拟合残差指标数据失败,Err:" + err.Error())
 				return
@@ -640,7 +627,7 @@ func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 			tmpAddDataList = append(tmpAddDataList, v)
 			i++
 			if i >= 500 {
-				_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+				err = to.CreateInBatches(tmpAddDataList, 500).Error
 				if err != nil {
 					return
 				}
@@ -650,7 +637,7 @@ func refreshAllCalculateNhcc(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 		}
 
 		if len(tmpAddDataList) > 0 {
-			_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+			err = to.CreateInBatches(tmpAddDataList, 500).Error
 			if err != nil {
 				return
 			}
@@ -698,14 +685,12 @@ func CalculateComputeCorrelation(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 		}
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	// 获取相关数据
@@ -746,7 +731,7 @@ func CalculateComputeCorrelation(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 }
 
 // getNhccData 获取拟合残差需要的数据
-func getNhccData(to orm.TxOrmer, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (aDataList []EdbInfoSearchData, secondDataList []*EdbInfoSearchData, aDataMap, bDataMap map[string]float64, newNhccDate NhccDate, err error, errMsg string) {
+func getNhccData(to *gorm.DB, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (aDataList []EdbInfoSearchData, secondDataList []*EdbInfoSearchData, aDataMap, bDataMap map[string]float64, newNhccDate NhccDate, err error, errMsg string) {
 	newNhccDate = nhccDate
 	//第一个指标
 	aDataList = make([]EdbInfoSearchData, 0)

+ 22 - 29
models/edb_data_calculate_nszydbpjjs.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,14 +14,12 @@ import (
 
 // AddCalculateNszydpjjs N数值移动平均计算
 func AddCalculateNszydpjjs(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateNszydpjjs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -43,12 +42,11 @@ func AddCalculateNszydpjjs(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -67,7 +65,7 @@ func AddCalculateNszydpjjs(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -80,7 +78,7 @@ func AddCalculateNszydpjjs(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_NSZYDPJJS, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -93,14 +91,12 @@ func AddCalculateNszydpjjs(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 
 // EditCalculateNszydpjjs 修改N数值移动平均计算
 func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo, formulaInt int, oldCalculateFormula string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateNszydpjjs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -114,7 +110,7 @@ func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -140,7 +136,7 @@ func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 	if count <= 0 {
 		// 需要删除原先的 计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -164,7 +160,7 @@ func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 				ModifyTime:                time.Now(),
 				FromSubSource:             fromEdbInfo.SubSource,
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -172,7 +168,7 @@ func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 	}
 	//清空原有数据
 	sql := ` DELETE FROM edb_data_calculate_nszydpjjs WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -185,15 +181,12 @@ func EditCalculateNszydpjjs(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 
 // RefreshAllCalculateNszydpjjs 刷新全部N数值移动平均计算
 func RefreshAllCalculateNszydpjjs(edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshCalculateNszydpjjs Err:" + err.Error())
-			utils.FileLog.Info("RefreshCalculateNszydpjjs Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -203,7 +196,7 @@ func RefreshAllCalculateNszydpjjs(edbInfoId, source, subSource, formulaInt int,
 }
 
 // refreshAllCalculateNszydpjjs 更新全部N数值移动平均计算
-func refreshAllCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (err error) {
+func refreshAllCalculateNszydpjjs(to *gorm.DB, edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	fmt.Println(edbInfoIdStr)
 	fmt.Println("refreshAllCalculateNszydpjjs startDate:", startDate)
@@ -306,7 +299,7 @@ func refreshAllCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subSource,
 			if existStr != valStr {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, valStr, edbInfoId, av).Exec()
+				err = to.Exec(sql, valStr, edbInfoId, av).Error
 				if err != nil {
 					return err
 				}
@@ -323,7 +316,7 @@ func refreshAllCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subSource,
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
 				return
@@ -334,7 +327,7 @@ func refreshAllCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subSource,
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
 		utils.FileLog.Info("addSql:" + addSql)
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 24 - 39
models/edb_data_calculate_percentile.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -22,17 +23,12 @@ func (obj Percentile) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err
 	req := params.Req
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -55,12 +51,11 @@ func (obj Percentile) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -79,7 +74,7 @@ func (obj Percentile) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -97,17 +92,12 @@ func (obj Percentile) Edit(params EditCalculateBatchParams) (err error, errMsg s
 	edbInfo := params.EdbInfo
 	fromEdbInfo := params.FromEdbInfo
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -124,7 +114,7 @@ func (obj Percentile) Edit(params EditCalculateBatchParams) (err error, errMsg s
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -150,14 +140,14 @@ func (obj Percentile) Edit(params EditCalculateBatchParams) (err error, errMsg s
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -181,7 +171,7 @@ func (obj Percentile) Edit(params EditCalculateBatchParams) (err error, errMsg s
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -206,17 +196,12 @@ func (obj Percentile) Refresh(params RefreshParams) (err error, errMsg string) {
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -249,7 +234,7 @@ type PercentileConfig struct {
 }
 
 // refresh 刷新
-func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error, errMsg string) {
+func (obj Percentile) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error, errMsg string) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -270,7 +255,7 @@ func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edb
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -303,7 +288,7 @@ func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edb
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -331,7 +316,7 @@ func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edb
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -342,7 +327,7 @@ func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edb
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -352,7 +337,7 @@ func (obj Percentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edb
 	return
 }
 
-func (obj Percentile) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to orm.TxOrmer) (newSql string, isAdd bool, err error) {
+func (obj Percentile) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to *gorm.DB) (newSql string, isAdd bool, err error) {
 	newSql = addSql
 	saveValue := utils.SubFloatToString(val, 4)
 	//判断数据是否存在
@@ -369,7 +354,7 @@ func (obj Percentile) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, data
 		if existVal != saveValue {
 			sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 			sql = fmt.Sprintf(sql, dataTableName)
-			_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+			err = to.Exec(sql, saveValue, edbInfoId, date).Error
 		}
 	}
 	return

+ 20 - 35
models/edb_data_calculate_qjjs.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"math"
 	"strconv"
 	"strings"
@@ -87,17 +88,12 @@ func (obj CalculateRangeAnalysis) Add(params AddCalculateBatchParams) (edbInfo *
 	sysUserId := params.SysUserId
 	sysUserRealName := params.SysUserRealName
 	//req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName string
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -123,12 +119,11 @@ func (obj CalculateRangeAnalysis) Add(params AddCalculateBatchParams) (edbInfo *
 	edbInfo.EdbNameEn = req.EdbName
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	fromEdbInfo, e := GetEdbInfoById(req.FromEdbInfoId)
@@ -153,7 +148,7 @@ func (obj CalculateRangeAnalysis) Add(params AddCalculateBatchParams) (edbInfo *
 	calculateMappingItem.SourceName = edbInfo.SourceName
 	calculateMappingItem.FromSubSource = edbInfo.SubSource
 
-	_, err = to.Insert(calculateMappingItem)
+	err = to.Create(calculateMappingItem).Error
 	if err != nil {
 		return
 	}
@@ -167,17 +162,12 @@ func (obj CalculateRangeAnalysis) Add(params AddCalculateBatchParams) (edbInfo *
 func (obj CalculateRangeAnalysis) Edit(params EditCalculateBatchParams) (err error, errMsg string) {
 	edbInfo := params.EdbInfo
 	req := params.Req
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -191,14 +181,14 @@ func (obj CalculateRangeAnalysis) Edit(params EditCalculateBatchParams) (err err
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -206,7 +196,7 @@ func (obj CalculateRangeAnalysis) Edit(params EditCalculateBatchParams) (err err
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -233,7 +223,7 @@ func (obj CalculateRangeAnalysis) Edit(params EditCalculateBatchParams) (err err
 	calculateMappingItem.SourceName = edbInfo.SourceName
 	calculateMappingItem.FromSubSource = edbInfo.SubSource
 
-	_, err = to.Insert(calculateMappingItem)
+	err = to.Create(calculateMappingItem).Error
 	if err != nil {
 		return
 	}
@@ -262,17 +252,12 @@ func (obj CalculateRangeAnalysis) Refresh(params RefreshParams) (err error, errM
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -282,7 +267,7 @@ func (obj CalculateRangeAnalysis) Refresh(params RefreshParams) (err error, errM
 	return
 }
 
-func (obj CalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, calculateFormula string) (err error, errMsg string) {
+func (obj CalculateRangeAnalysis) refresh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, calculateFormula string) (err error, errMsg string) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(obj.GetSource(), utils.DATA_SUB_SOURCE_EDB)
 
@@ -350,7 +335,7 @@ func (obj CalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, source, sub
 
 		if isAdd {
 			addSql = strings.TrimRight(addSql, ",")
-			_, err = to.Raw(addSql).Exec()
+			err = to.Exec(addSql).Error
 		}
 
 		// 移除不存在的日期数据
@@ -362,7 +347,7 @@ func (obj CalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, source, sub
 			removeDateStr := strings.Join(removeDateList, `","`)
 			removeDateStr = `"` + removeDateStr + `"`
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-			_, err = to.Raw(sql, edbInfoId).Exec()
+			err = to.Exec(sql, edbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除扩散指数指标数据失败,Err:" + err.Error())
 				return

+ 22 - 37
models/edb_data_calculate_rjz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateRjz 日均值
 func AddCalculateRjz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateRjz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -46,12 +42,11 @@ func AddCalculateRjz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -70,7 +65,7 @@ func AddCalculateRjz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -84,7 +79,7 @@ func AddCalculateRjz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_RJZ, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -98,17 +93,12 @@ func AddCalculateRjz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 
 // EditCalculateRjz 日均值
 func EditCalculateRjz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateRjz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -121,7 +111,7 @@ func EditCalculateRjz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -143,13 +133,13 @@ func EditCalculateRjz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 	//清空原有数据
 	sql = ` DELETE FROM edb_data_calculate_rjz WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -172,7 +162,7 @@ func EditCalculateRjz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -186,17 +176,12 @@ func EditCalculateRjz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 // RefreshAllCalculateRjz 刷新所有日均值数据
 func RefreshAllCalculateRjz(edbInfoId, source int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateRjz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -206,7 +191,7 @@ func RefreshAllCalculateRjz(edbInfoId, source int, fromEdbInfo *EdbInfo, edbCode
 }
 
 // refreshAllCalculateRjz
-func refreshAllCalculateRjz(to orm.TxOrmer, edbInfoId, source int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
+func refreshAllCalculateRjz(to *gorm.DB, edbInfoId, source int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -231,7 +216,7 @@ func refreshAllCalculateRjz(to orm.TxOrmer, edbInfoId, source int, fromEdbInfo *
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -269,7 +254,7 @@ func refreshAllCalculateRjz(to orm.TxOrmer, edbInfoId, source int, fromEdbInfo *
 				if existStr != val {
 					sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+					err = to.Exec(sql, val, edbInfoId, av).Error
 					if err != nil {
 						return err
 					}
@@ -279,7 +264,7 @@ func refreshAllCalculateRjz(to orm.TxOrmer, edbInfoId, source int, fromEdbInfo *
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 23 - 37
models/edb_data_calculate_standard_deviation.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"reflect"
 	"strconv"
@@ -21,17 +23,12 @@ func (obj StandardDeviation) Add(params AddCalculateBatchParams) (edbInfo *EdbIn
 	req := params.Req
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -54,12 +51,11 @@ func (obj StandardDeviation) Add(params AddCalculateBatchParams) (edbInfo *EdbIn
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -78,7 +74,7 @@ func (obj StandardDeviation) Add(params AddCalculateBatchParams) (edbInfo *EdbIn
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = edbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -96,17 +92,12 @@ func (obj StandardDeviation) Edit(params EditCalculateBatchParams) (err error, e
 	edbInfo := params.EdbInfo
 	fromEdbInfo := params.FromEdbInfo
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -123,7 +114,7 @@ func (obj StandardDeviation) Edit(params EditCalculateBatchParams) (err error, e
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -149,14 +140,14 @@ func (obj StandardDeviation) Edit(params EditCalculateBatchParams) (err error, e
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -179,7 +170,7 @@ func (obj StandardDeviation) Edit(params EditCalculateBatchParams) (err error, e
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -204,17 +195,12 @@ func (obj StandardDeviation) Refresh(params RefreshParams) (err error, errMsg st
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -239,7 +225,7 @@ func (obj StandardDeviation) GetEdbType() int {
 	return utils.CALCULATE_EDB_TYPE
 }
 
-func (obj StandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error) {
+func (obj StandardDeviation) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -259,7 +245,7 @@ func (obj StandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -292,7 +278,7 @@ func (obj StandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -320,7 +306,7 @@ func (obj StandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -331,7 +317,7 @@ func (obj StandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 23 - 40
models/edb_data_calculate_sum.go

@@ -3,11 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
-	"reflect"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -20,18 +20,12 @@ type CalculateSum struct {
 func (obj CalculateSum) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, err error, errMsg string) {
 	req := params.Req
 	edbCode := params.EdbCode
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("CalculateSum.Add,Err:" + err.Error())
-			fmt.Println("CalculateSum.Add,ErrMsg:" + errMsg)
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -60,13 +54,12 @@ func (obj CalculateSum) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 	edbInfo.Extra = req.Extra
 	edbInfo.EdbNameEn = req.EdbName
 	edbInfo.UnitEn = req.Unit
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		errMsg = "新增失败"
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	tagMap := make(map[string]int)
@@ -100,7 +93,7 @@ func (obj CalculateSum) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		errMsg = "保存失败"
 		return
@@ -115,17 +108,12 @@ func (obj CalculateSum) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo, e
 func (obj CalculateSum) Edit(params EditCalculateBatchParams) (err error, errMsg string) {
 	req := params.Req
 	edbInfo := params.EdbInfo
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -151,7 +139,7 @@ func (obj CalculateSum) Edit(params EditCalculateBatchParams) (err error, errMsg
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Extra", "EmptyType", "MaxEmptyType", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Extra", "EmptyType", "MaxEmptyType", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -189,7 +177,7 @@ func (obj CalculateSum) Edit(params EditCalculateBatchParams) (err error, errMsg
 	}
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -197,7 +185,7 @@ func (obj CalculateSum) Edit(params EditCalculateBatchParams) (err error, errMsg
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -234,7 +222,7 @@ func (obj CalculateSum) Edit(params EditCalculateBatchParams) (err error, errMsg
 
 		tagMap[v.FromTag] = v.EdbInfoId
 	}
-	_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+	err = to.CreateInBatches(calculateMappingItemList, 500).Error
 	if err != nil {
 		return
 	}
@@ -258,17 +246,12 @@ func (obj CalculateSum) Refresh(params RefreshParams) (err error, errMsg string)
 		fromEdbInfo, _ := GetEdbInfoById(v.FromEdbInfoId)
 		relationEdbInfoList = append(relationEdbInfoList, fromEdbInfo)
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println(reflect.TypeOf(obj).Name() + ",Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -278,9 +261,9 @@ func (obj CalculateSum) Refresh(params RefreshParams) (err error, errMsg string)
 	return
 }
 
-func (obj CalculateSum) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int) (err error) {
+func (obj CalculateSum) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int) (err error) {
 
-	//to orm.TxOrmer, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int
+	//to *gorm.DB, edbInfoId, source, subSource int, edbInfoIdArr []*EdbInfo, edbCode, extra string, edbInfoTag map[string]int, emptyType int
 	realSaveDataMap := make(map[string]map[int]float64)
 	saveDataMap := make(map[string]map[int]float64)
 
@@ -380,7 +363,7 @@ func (obj CalculateSum) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&dataList)
+	err = to.Exec(sql, edbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return err
 	}
@@ -426,7 +409,7 @@ func (obj CalculateSum) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 			if existStr != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, sk).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, sk).Error
 				if err != nil {
 					return err
 				}
@@ -436,7 +419,7 @@ func (obj CalculateSum) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println("RefreshAllCalculate add Err", err.Error())
 			return
@@ -453,7 +436,7 @@ func (obj CalculateSum) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 		//如果拼接指标变更了,那么需要删除所有的指标数据
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除计算失败的计算指标数据失败,Err:" + err.Error())
 			return

+ 23 - 38
models/edb_data_calculate_tbz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateTbz 同比值
 func AddCalculateTbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateTbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -46,12 +42,11 @@ func AddCalculateTbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -70,7 +65,7 @@ func AddCalculateTbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -84,7 +79,7 @@ func AddCalculateTbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_CALCULATE_TBZ, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -98,17 +93,12 @@ func AddCalculateTbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 
 // EditCalculateTbz 同比值
 func EditCalculateTbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateTbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -121,7 +111,7 @@ func EditCalculateTbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -143,13 +133,13 @@ func EditCalculateTbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 	//清空原有数据
 	sql = ` DELETE FROM edb_data_calculate_tbz WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -172,7 +162,7 @@ func EditCalculateTbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -186,17 +176,12 @@ func EditCalculateTbz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 // RefreshAllCalculateTbz 刷新所有同比值数据
 func RefreshAllCalculateTbz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateTbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -206,7 +191,7 @@ func RefreshAllCalculateTbz(edbInfoId, source, subSource int, fromEdbInfo *EdbIn
 }
 
 // refreshAllCalculateTbz
-func refreshAllCalculateTbz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
+func refreshAllCalculateTbz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -241,7 +226,7 @@ func refreshAllCalculateTbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	//fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -278,7 +263,7 @@ func refreshAllCalculateTbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 			if existStr != val {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, val, edbInfoId, currentDateStr).Exec()
+				err = to.Exec(sql, val, edbInfoId, currentDateStr).Error
 				if err != nil {
 					return err
 				}
@@ -297,7 +282,7 @@ func refreshAllCalculateTbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
 
-			_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除自有数据的明细数据失败,Err:" + err.Error())
 				return
@@ -307,7 +292,7 @@ func refreshAllCalculateTbz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 27 - 43
models/edb_data_calculate_tcz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // AddCalculateTcz 同差值
 func AddCalculateTcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateTcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("req.EdbInfoId:", req.EdbInfoId)
@@ -47,12 +43,11 @@ func AddCalculateTcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -71,7 +66,7 @@ func AddCalculateTcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -85,7 +80,7 @@ func AddCalculateTcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 		fmt.Println("dataTableName:", dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -99,20 +94,14 @@ func AddCalculateTcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, ed
 
 // EditCalculateTcz 同差值
 func EditCalculateTcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateTcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
-
 	//修改指标信息
 	edbInfo.EdbName = req.EdbName
 	edbInfo.EdbNameSource = req.EdbName
@@ -122,7 +111,7 @@ func EditCalculateTcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -144,14 +133,14 @@ func EditCalculateTcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM edb_data_calculate_tcz WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -175,7 +164,7 @@ func EditCalculateTcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -189,17 +178,12 @@ func EditCalculateTcz(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromE
 
 // RefreshAllCalculateTcz 刷新全部同差值数据
 func RefreshAllCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateTcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -208,7 +192,7 @@ func RefreshAllCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo *EdbIn
 	return
 }
 
-func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
+func refreshAllCalculateTcz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -231,7 +215,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -273,7 +257,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 					if existStr != val {
 						sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 						sql = fmt.Sprintf(sql, dataTableName)
-						_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+						err = to.Exec(sql, val, edbInfoId, av).Error
 						if err != nil {
 							return err
 						}
@@ -303,7 +287,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 								if existStr != val {
 									sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 									sql = fmt.Sprintf(sql, dataTableName)
-									_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+									err = to.Exec(sql, val, edbInfoId, av).Error
 									if err != nil {
 										return err
 									}
@@ -330,7 +314,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 									if existStr != val {
 										sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 										sql = fmt.Sprintf(sql, dataTableName)
-										_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+										err = to.Exec(sql, val, edbInfoId, av).Error
 										if err != nil {
 											return err
 										}
@@ -358,7 +342,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 							if existStr != val {
 								sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+								err = to.Exec(sql, val, edbInfoId, av).Error
 								if err != nil {
 									return err
 								}
@@ -387,7 +371,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 								if existStr != val {
 									sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 									sql = fmt.Sprintf(sql, dataTableName)
-									_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+									err = to.Exec(sql, val, edbInfoId, av).Error
 									if err != nil {
 										return err
 									}
@@ -414,7 +398,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 									if existStr != val {
 										sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 										sql = fmt.Sprintf(sql, dataTableName)
-										_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+										err = to.Exec(sql, val, edbInfoId, av).Error
 										if err != nil {
 											return err
 										}
@@ -430,7 +414,7 @@ func refreshAllCalculateTcz(to orm.TxOrmer, edbInfoId, source, subSource int, fr
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 22 - 39
models/edb_data_calculate_time_shift.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,18 +14,12 @@ import (
 
 // AddCalculateTimeShift 时间移位
 func AddCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
-
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateTimeShift,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -49,12 +44,11 @@ func AddCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
 		edbInfo.MoveType = req.MoveType
 		edbInfo.MoveFrequency = req.MoveFrequency
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -72,7 +66,7 @@ func AddCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
 			calculateMappingItem.FromSubSource = edbInfo.SubSource
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -86,7 +80,7 @@ func AddCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -102,18 +96,12 @@ func AddCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbIn
 
 // EditCalculateTimeShift 修改时间移位
 func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq, fromEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
-
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateTimeShift,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	oldEdbInfo := *edbInfo //旧的指标信息
@@ -130,7 +118,7 @@ func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -152,7 +140,7 @@ func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 		if count <= 0 {
 			//删除,计算指标关联的,基础指标的关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 				return
@@ -176,7 +164,7 @@ func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 					ModifyTime:                time.Now(),
 					FromSubSource:             fromEdbInfo.SubSource,
 				}
-				_, err = to.Insert(calculateMappingItem)
+				err = to.Create(calculateMappingItem).Error
 				if err != nil {
 					return
 				}
@@ -185,7 +173,7 @@ func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 
 		//清空原有数据
 		sql := ` DELETE FROM edb_data_calculate_time_shift WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -199,17 +187,12 @@ func EditCalculateTimeShift(edbInfo *EdbInfo, req *EdbInfoCalculateBatchEditReq,
 
 // RefreshAllCalculateTimeShift 刷新所有时间移位数据
 func RefreshAllCalculateTimeShift(edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateTimeShift,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -220,7 +203,7 @@ func RefreshAllCalculateTimeShift(edbInfoId, source, subSource, formulaInt, move
 }
 
 // refreshAllCalculateTimeShift 刷新所有时间移位数据
-func refreshAllCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (err error) {
+func refreshAllCalculateTimeShift(to *gorm.DB, edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
 	//计算数据
@@ -266,7 +249,7 @@ func refreshAllCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subSource,
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -303,7 +286,7 @@ func refreshAllCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subSource,
 				if existStr != valStr {
 					sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = to.Raw(sql, valStr, edbInfoId, newDate.Format(utils.FormatDate)).Exec()
+					err = to.Exec(sql, valStr, edbInfoId, newDate.Format(utils.FormatDate)).Error
 					if err != nil {
 						return err
 					}
@@ -318,7 +301,7 @@ func refreshAllCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subSource,
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 24 - 39
models/edb_data_calculate_zdyfx.go

@@ -3,11 +3,12 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/models/excel"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -40,17 +41,12 @@ func (obj CustomAnalysis) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo,
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -73,12 +69,11 @@ func (obj CustomAnalysis) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo,
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -88,7 +83,7 @@ func (obj CustomAnalysis) Add(params AddCalculateBatchParams) (edbInfo *EdbInfo,
 		excelEdbMappingItem.ExcelInfoId = customAnalysisData.ExcelInfoId
 		excelEdbMappingItem.Source = 4
 		excelEdbMappingItem.EdbInfoId = edbInfo.EdbInfoId
-		_, err = to.Insert(excelEdbMappingItem)
+		err = to.Create(excelEdbMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -116,17 +111,12 @@ func (obj CustomAnalysis) Edit(params EditCalculateBatchParams) (err error, errM
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -140,7 +130,7 @@ func (obj CustomAnalysis) Edit(params EditCalculateBatchParams) (err error, errM
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -193,7 +183,7 @@ type UpdateEdbDataStr struct {
 	DataTime string `description:"数据对应的日期"`
 }
 
-func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []string, dataList []float64) (err error) {
+func (obj CustomAnalysis) refresh(to *gorm.DB, edbInfo *EdbInfo, dateList []string, dataList []float64) (err error) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -207,7 +197,7 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -225,13 +215,10 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 	updateEdbDataStrList := make([]UpdateEdbDataStr, 0)
 	updateSql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 	updateSql = fmt.Sprintf(updateSql, dataTableName)
-	p, err := to.Raw(updateSql).Prepare()
+	err = to.Exec(updateSql).Error
 	if err != nil {
 		return
 	}
-	defer func() {
-		_ = p.Close()
-	}()
 
 	for i, currDateStr := range dateList {
 		currVal := dataList[i] // 当前日期对应的值
@@ -260,7 +247,7 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 				})
 				//sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				//sql = fmt.Sprintf(sql, dataTableName)
-				//_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				//err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				//if err != nil {
 				//	return
 				//}
@@ -288,7 +275,7 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -300,7 +287,7 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 	// 添加指标数据
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -309,11 +296,14 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 
 	// 更新指标数据
 	if isUpdate {
+		// todo 测试
+		updateSql = ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
+		updateSql = fmt.Sprintf(updateSql, dataTableName)
 		for _, v := range updateEdbDataStrList {
 			if v.Value == "" || v.DataTime == "" {
 				continue
 			}
-			_, err = p.Exec(v.Value, edbInfoId, v.DataTime)
+			err = to.Exec(updateSql, v.Value, edbInfoId, v.DataTime).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " update data Err", err.Error())
 				return
@@ -326,17 +316,12 @@ func (obj CustomAnalysis) refresh(to orm.TxOrmer, edbInfo *EdbInfo, dateList []s
 
 // ResetData 数据重置
 func (obj CustomAnalysis) ResetData(edbInfo *EdbInfo, dateList []string, dataList []float64) (err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";ResetData,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 

+ 33 - 49
models/edb_data_calculate_zjpj.go

@@ -1,16 +1,18 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
+	"gorm.io/gorm"
 	"strings"
 	"time"
 )
 
 // EdbDataCalculateZjpj 直接拼接数据结构体
 type EdbDataCalculateZjpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -23,17 +25,12 @@ type EdbDataCalculateZjpj struct {
 
 // AddCalculateZjpj 新增直接拼接数据
 func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateZjpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -59,12 +56,12 @@ func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			EdbType:          2,
 			Sort:             GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE),
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
 		if err != nil {
@@ -89,14 +86,14 @@ func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 		fmt.Println("dataTableName:" + dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, req.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, req.EdbInfoId).Error
 		if err != nil {
 			return
 		}
 
 		//删除指标关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id=? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	}
 
 	//关联关系
@@ -121,12 +118,11 @@ func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			ModifyTime:                time.Now(),
 			FromSubSource:             firstEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemA)
+		tmpErr := to.Create(existItemA).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemA.EdbInfoCalculateMappingId = int(insertId)
 	}
 
 	//第二个指标
@@ -148,12 +144,11 @@ func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 			ModifyTime:                time.Now(),
 			FromSubSource:             secondEdbInfo.SubSource,
 		}
-		insertId, tmpErr := to.Insert(existItemB)
+		tmpErr := to.Create(existItemB).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		existItemB.EdbInfoCalculateMappingId = int(insertId)
 	}
 
 	//拼接数据
@@ -164,17 +159,12 @@ func AddCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdb
 
 // EditCalculateZjpj 编辑直接拼接数据
 func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateZjpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -190,7 +180,7 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -229,7 +219,7 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 		if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 			//删除之前的A指标关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除拼接日期之前的指标关联关系失败,Err:" + err.Error())
 				return
@@ -254,13 +244,11 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 					ModifyTime:                time.Now(),
 					FromSubSource:             firstEdbInfo.SubSource,
 				}
-				insertId, tmpErr := to.Insert(existItemA)
+				tmpErr := to.Create(existItemA).Error
 				if tmpErr != nil {
 					err = tmpErr
 					return
 				}
-				existItemA.EdbInfoCalculateMappingId = int(insertId)
-
 				isNeedCalculateData = true
 			}
 		}
@@ -272,7 +260,7 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 		if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 			//删除之前的B指标关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除拼接日期之后的指标关联关系失败,Err:" + err.Error())
 				return
@@ -296,12 +284,11 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 				ModifyTime:                time.Now(),
 				FromSubSource:             secondEdbInfo.SubSource,
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -313,7 +300,7 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除历史数据失败,Err:" + err.Error())
 			return
@@ -327,22 +314,19 @@ func EditCalculateZjpj(req *EdbInfoCalculateBatchEditReq, edbInfo, firstEdbInfo,
 
 // GetAllEdbDataCalculateZjpjByEdbInfoId 根据指标id获取全部的数据
 func GetAllEdbDataCalculateZjpjByEdbInfoId(edbInfoId int) (items []*EdbDataCalculateZjpj, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_data_calculate_zjpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId).Scan(&items).Error
 	return
 }
 
 // RefreshAllCalculateZjpj 刷新所有 直接拼接 数据
 func RefreshAllCalculateZjpj(edbInfo *EdbInfo) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateZjpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//查询关联指标信息
@@ -371,7 +355,7 @@ func RefreshAllCalculateZjpj(edbInfo *EdbInfo) (err error) {
 }
 
 // refreshAllCalculateZjpj 刷新所有 直接拼接 数据
-func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping) (err error) {
+func refreshAllCalculateZjpj(to *gorm.DB, edbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping) (err error) {
 	//查询当前指标现有的数据
 	var condition string
 	var pars []interface{}
@@ -380,7 +364,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 
 	var dataList []*EdbDataCalculateZjpj
 	sql := ` SELECT * FROM edb_data_calculate_zjpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return err
 	}
@@ -416,7 +400,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 				if edbData.Value != v.Value {
 					//更新指标数据
 					edbData.Value = v.Value
-					_, _ = to.Update(edbData, "Value")
+					_ = to.Model(edbData).Select([]string{"Value"}).Updates(edbData).Error
 				}
 			} else {
 				//时间戳
@@ -461,7 +445,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 					//更新指标数据
 					edbData.Value = v.Value
 					edbData.ModifyTime = time.Now()
-					_, tmpErr := to.Update(edbData, "Value", "ModifyTime")
+					tmpErr := to.Model(edbData).Select([]string{"Value", "ModifyTime"}).Updates(edbData).Error
 					if tmpErr != nil {
 						fmt.Println("tmpErr:", tmpErr)
 					}
@@ -499,7 +483,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的直接拼接指标数据失败,Err:" + err.Error())
 				return
@@ -515,7 +499,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 			tmpAddDataList = append(tmpAddDataList, v)
 			i++
 			if i >= 500 {
-				_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+				err = to.CreateInBatches(tmpAddDataList, 500).Error
 				if err != nil {
 					return
 				}
@@ -525,7 +509,7 @@ func refreshAllCalculateZjpj(to orm.TxOrmer, edbInfo *EdbInfo, existItemA, exist
 		}
 
 		if len(tmpAddDataList) > 0 {
-			_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+			err = to.CreateInBatches(tmpAddDataList, 500).Error
 			if err != nil {
 				return
 			}

+ 22 - 37
models/edb_data_calculate_zsxy.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -20,17 +21,12 @@ func (obj ExponentialSmoothing) Add(params AddCalculateBatchParams) (edbInfo *Ed
 	req := params.Req
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -53,12 +49,11 @@ func (obj ExponentialSmoothing) Add(params AddCalculateBatchParams) (edbInfo *Ed
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -77,7 +72,7 @@ func (obj ExponentialSmoothing) Add(params AddCalculateBatchParams) (edbInfo *Ed
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
 		calculateMappingItem.FromSubSource = fromEdbInfo.SubSource
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -94,17 +89,12 @@ func (obj ExponentialSmoothing) Edit(params EditCalculateBatchParams) (err error
 	edbInfo := params.EdbInfo
 	fromEdbInfo := params.FromEdbInfo
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -121,7 +111,7 @@ func (obj ExponentialSmoothing) Edit(params EditCalculateBatchParams) (err error
 	edbInfo.EdbNameEn = req.EdbNameEn
 	edbInfo.UnitEn = req.UnitEn
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -147,14 +137,14 @@ func (obj ExponentialSmoothing) Edit(params EditCalculateBatchParams) (err error
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -178,7 +168,7 @@ func (obj ExponentialSmoothing) Edit(params EditCalculateBatchParams) (err error
 			ModifyTime:                time.Now(),
 			FromSubSource:             fromEdbInfo.SubSource,
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -203,17 +193,12 @@ func (obj ExponentialSmoothing) Refresh(params RefreshParams) (err error, errMsg
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -238,7 +223,7 @@ func (obj ExponentialSmoothing) GetEdbType() int {
 	return utils.CALCULATE_EDB_TYPE
 }
 
-func (obj ExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error) {
+func (obj ExponentialSmoothing) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode string) (err error) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -253,7 +238,7 @@ func (obj ExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *Ed
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return err
 	}
@@ -286,7 +271,7 @@ func (obj ExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *Ed
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -314,7 +299,7 @@ func (obj ExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *Ed
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -325,7 +310,7 @@ func (obj ExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *Ed
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 8 - 7
models/edb_data_insert_config.go

@@ -1,7 +1,8 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_index_lib/global"
+	"gorm.io/gorm"
 	"time"
 )
 
@@ -17,23 +18,23 @@ type EdbDataInsertConfig struct {
 
 // GetEdbDataInsertConfigByEdbId 根据指标id 获取数据插入配置详情
 func GetEdbDataInsertConfigByEdbId(edbInfoId int) (item *EdbDataInsertConfig, err error) {
-	o := orm.NewOrm()
+
 	sql := ` SELECT * FROM edb_data_insert_config WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId).First(&item).Error
 	return
 }
 
 // DeleteEdbDataInsertConfigByEdbId 根据指标id 删除数据插入配置详情
 func DeleteEdbDataInsertConfigByEdbId(edbInfoId int) (err error) {
-	o := orm.NewOrm()
+
 	sql := ` DELETE FROM edb_data_insert_config WHERE edb_info_id=? `
-	_, err = o.Raw(sql, edbInfoId).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, edbInfoId).Error
 	return
 }
 
 // GetEdbDataInsertConfigByEdbIdWithTo 根据指标id 获取数据插入配置详情
-func GetEdbDataInsertConfigByEdbIdWithTo(to orm.TxOrmer, edbInfoId int) (item *EdbDataInsertConfig, err error) {
+func GetEdbDataInsertConfigByEdbIdWithTo(to *gorm.DB, edbInfoId int) (item *EdbDataInsertConfig, err error) {
 	sql := ` SELECT * FROM edb_data_insert_config WHERE edb_info_id=? `
-	err = to.Raw(sql, edbInfoId).QueryRow(&item)
+	err = to.Raw(sql, edbInfoId).First(&item).Error
 	return
 }

+ 24 - 30
models/edb_data_ly.go

@@ -2,68 +2,63 @@
 package models
 
 import (
-	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"strconv"
 	"strings"
 	"time"
 )
 
 type EdbDataLy struct {
-	edbDataId     int     `orm:"column(edb_data_id);pk"` // 数据ID
-	CreateTime    string  `orm:"column(create_time)"`    // 创建时间
-	ModifyTime    string  `orm:"column(modify_time)"`    // 修改时间
-	EdbInfoId     int     `orm:"column(edb_info_id)"`    // 指标id
-	EdbCode       string  `orm:"column(edb_code)"`       // 指标编码
-	DataTime      string  `orm:"column(data_time)"`      // 数据日期
-	Value         float64 `orm:"column(value)"`          // 数据值
-	DataTimestamp uint64  `orm:"column(data_timestamp)"` // 数据日期时间戳
+	edbDataId     int     `gorm:"primaryKey;autoIncrement;column:edb_data_id"` // 数据ID
+	CreateTime    string  `orm:"column(create_time)"`                          // 创建时间
+	ModifyTime    string  `orm:"column(modify_time)"`                          // 修改时间
+	EdbInfoId     int     `orm:"column(edb_info_id)"`                          // 指标id
+	EdbCode       string  `orm:"column(edb_code)"`                             // 指标编码
+	DataTime      string  `orm:"column(data_time)"`                            // 数据日期
+	Value         float64 `orm:"column(value)"`                                // 数据值
+	DataTimestamp uint64  `orm:"column(data_timestamp)"`                       // 数据日期时间戳
 }
 
-func init() {
+/*func init() {
 	orm.RegisterModel(new(EdbDataLy))
-}
+}*/
 
 func GetLyEdbDataByIndexCodeAndDataTime(indexCode string, dataTime string) (items []EdbDataLy, err error) {
-	o := orm.NewOrm()
+
 	sql := `SELECT * FROM edb_data_ly WHERE index_code=? AND data_time like ?`
-	_, err = o.Raw(sql, indexCode, dataTime+"%").QueryRows(&items)
-	if errors.Is(err, orm.ErrNoRows) {
-		return nil, nil
-	}
+	err = global.DEFAULT_DmSQL.Raw(sql, indexCode, dataTime+"%").Scan(&items).Error
+
 	return
 }
 
 func GetLyEdbDataByIndexCodeAndExactDataTime(indexCode string, dataTime string) (items []EdbDataLy, err error) {
-	o := orm.NewOrm()
+
 	sql := `SELECT * FROM edb_data_ly WHERE edb_code=? AND data_time=?`
-	_, err = o.Raw(sql, indexCode, dataTime).QueryRows(&items)
-	if errors.Is(err, orm.ErrNoRows) {
-		return nil, nil
-	}
+	err = global.DEFAULT_DmSQL.Raw(sql, indexCode, dataTime).Scan(&items).Error
+
 	return
 }
 
 // UpdateLyEdbDataById 更新指标库数据 须根据指标编码和日期更新 仅适合月度数据
 func UpdateLyEdbDataById(id int, value float64) (err error) {
-	o := orm.NewOrm()
+
 	sql := `UPDATE edb_data_ly SET value=? WHERE edb_data_id=?`
-	_, err = o.Raw(sql, value, id).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, value, id).Error
 	return
 }
 
 // 新增指标库数据
 func AddLyEdbDataList(items []EdbDataLy) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+
+	err = global.DEFAULT_DmSQL.CreateInBatches(items, 500).Error
 	return
 }
 
 // AddEdbDataFromLy 新增指标数据
 func AddEdbDataFromLy(edbCode string) (err error) {
-	o := orm.NewOrm()
 
 	var condition string
 	var pars []interface{}
@@ -104,7 +99,7 @@ func AddEdbDataFromLy(edbCode string) (err error) {
 		if isAdd {
 			addSql = strings.TrimRight(addSql, ",")
 			utils.FileLog.Info("addSql:" + addSql)
-			_, err = o.Raw(addSql).Exec()
+			err = global.DEFAULT_DmSQL.Exec(addSql).Error
 			if err != nil {
 				return err
 			}
@@ -117,7 +112,6 @@ func RefreshEdbDataFromLy(edbInfoId int, edbCode, startDate string) (err error)
 	source := utils.DATA_SOURCE_LY
 	subSource := utils.DATA_SUB_SOURCE_EDB
 
-	o := orm.NewOrm()
 	if err != nil {
 		return
 	}
@@ -223,7 +217,7 @@ func RefreshEdbDataFromLy(edbInfoId int, edbCode, startDate string) (err error)
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = o.Raw(addSql).Exec()
+		err = global.DEFAULT_DmSQL.Exec(addSql).Error
 		if err != nil {
 			return err
 		}

+ 1 - 1
models/edb_data_table.go

@@ -175,7 +175,7 @@ func GetEdbDataTableName(source, subSource int) (tableName string) {
 	default:
 		edbSource := EdbSourceIdMap[source]
 		if edbSource != nil {
-			tableName = edbSource.TableName
+			tableName = edbSource.TableName1
 		}
 	}
 	return

+ 27 - 39
models/edb_data_ths_hf.go

@@ -1,16 +1,17 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"strings"
 	"time"
 )
 
 // EdbDataThsHf 同花顺高频指标数据
 type EdbDataThsHf struct {
-	EdbDataId     int       `orm:"column(edb_data_id);pk"`
+	EdbDataId     int       `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int       `description:"指标ID"`
 	EdbCode       string    `description:"指标编码"`
 	DataTime      time.Time `description:"数据日期"`
@@ -49,12 +50,9 @@ func (m *EdbDataThsHf) Cols() EdbDataThsHfCols {
 }
 
 func (m *EdbDataThsHf) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.EdbDataId = int(id)
+
+	err = global.DEFAULT_DmSQL.Create(m).Error
+
 	return
 }
 
@@ -62,21 +60,20 @@ func (m *EdbDataThsHf) CreateMulti(items []*EdbDataThsHf) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(500, items)
+
+	err = global.DEFAULT_DmSQL.CreateInBatches(items, 500).Error
 	return
 }
 
 func (m *EdbDataThsHf) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	err = global.DEFAULT_DmSQL.Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *EdbDataThsHf) Remove() (err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	_, err = o.Raw(sql, m.EdbDataId).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, m.EdbDataId).Error
 	return
 }
 
@@ -84,9 +81,9 @@ func (m *EdbDataThsHf) MultiRemove(ids []int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+
 	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 = global.DEFAULT_DmSQL.Raw(sql, ids).Error
 	return
 }
 
@@ -94,39 +91,39 @@ func (m *EdbDataThsHf) RemoveByCondition(condition string, pars []interface{}) (
 	if condition == "" {
 		return
 	}
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s`, m.TableName(), condition)
-	_, err = o.Raw(sql, pars).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, pars).Error
 	return
 }
 
 func (m *EdbDataThsHf) GetItemById(id int) (item *EdbDataThsHf, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *EdbDataThsHf) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *EdbDataThsHf, err error) {
-	o := orm.NewOrm()
+
 	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 = global.DEFAULT_DmSQL.Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *EdbDataThsHf) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *EdbDataThsHf) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbDataThsHf, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -136,12 +133,12 @@ func (m *EdbDataThsHf) GetItemsByCondition(condition string, pars []interface{},
 		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 = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 func (m *EdbDataThsHf) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*EdbDataThsHf, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -151,7 +148,7 @@ func (m *EdbDataThsHf) GetPageItemsByCondition(condition string, pars []interfac
 		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 = global.DEFAULT_DmSQL.Raw(sql, pars, startSize, pageSize).Scan(&items).Error
 	return
 }
 
@@ -160,19 +157,10 @@ func (m *EdbDataThsHf) MultiUpdateValue(items []*EdbDataThsHf) (err error) {
 	if len(items) == 0 {
 		return
 	}
-
-	o := orm.NewOrm()
+	//todo 测试
 	sql := fmt.Sprintf("UPDATE %s SET %s = ?, %s = NOW() WHERE %s = ?", m.TableName(), m.Cols().Value, m.Cols().ModifyTime, m.Cols().PrimaryId)
-	p, e := o.Raw(sql).Prepare()
-	if e != nil {
-		err = fmt.Errorf("update sql prepare err: %v", e)
-		return
-	}
-	defer func() {
-		_ = p.Close()
-	}()
 	for _, v := range items {
-		_, err = p.Exec(v.Value, v.EdbDataId)
+		err = global.DEFAULT_DmSQL.Exec(sql, v.Value, v.EdbDataId).Error
 		if err != nil {
 			return
 		}

+ 26 - 39
models/edb_data_trade_analysis.go

@@ -1,16 +1,17 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"strings"
 	"time"
 )
 
 // EdbDataTradeAnalysis 持仓分析指标数据
 type EdbDataTradeAnalysis struct {
-	EdbDataId     int       `orm:"column(edb_data_id);pk"`
+	EdbDataId     int       `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int       `description:"指标ID"`
 	EdbCode       string    `description:"指标编码"`
 	DataTime      time.Time `description:"数据日期"`
@@ -49,12 +50,8 @@ func (m *EdbDataTradeAnalysis) Cols() EdbDataTradeAnalysisCols {
 }
 
 func (m *EdbDataTradeAnalysis) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.EdbDataId = int(id)
+
+	err = global.DEFAULT_DmSQL.Create(m).Error
 	return
 }
 
@@ -62,21 +59,21 @@ func (m *EdbDataTradeAnalysis) CreateMulti(items []*EdbDataTradeAnalysis) (err e
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(500, items)
+
+	err = global.DEFAULT_DmSQL.CreateInBatches(items, 500).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+
+	err = global.DEFAULT_DmSQL.Model(m).Select(cols).Updates(m).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) Remove() (err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	_, err = o.Raw(sql, m.EdbDataId).Exec()
+	err = global.DEFAULT_DmSQL.Raw(sql, m.EdbDataId).Error
 	return
 }
 
@@ -84,9 +81,9 @@ func (m *EdbDataTradeAnalysis) MultiRemove(ids []int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+
 	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 = global.DEFAULT_DmSQL.Raw(sql, ids).Error
 	return
 }
 
@@ -94,39 +91,39 @@ func (m *EdbDataTradeAnalysis) RemoveByCondition(condition string, pars []interf
 	if condition == "" {
 		return
 	}
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s`, m.TableName(), condition)
-	_, err = o.Raw(sql, pars).Exec()
+	err = global.DEFAULT_DmSQL.Exec(sql, pars).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) GetItemById(id int) (item *EdbDataTradeAnalysis, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.Cols().PrimaryId)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *EdbDataTradeAnalysis, err error) {
-	o := orm.NewOrm()
+
 	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 = global.DEFAULT_DmSQL.Raw(sql, pars).First(&item).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbDataTradeAnalysis, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -136,12 +133,12 @@ func (m *EdbDataTradeAnalysis) GetItemsByCondition(condition string, pars []inte
 		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 = global.DEFAULT_DmSQL.Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 func (m *EdbDataTradeAnalysis) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*EdbDataTradeAnalysis, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -151,7 +148,7 @@ func (m *EdbDataTradeAnalysis) 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 = global.DEFAULT_DmSQL.Raw(sql, pars, startSize, pageSize).Scan(&items).Error
 	return
 }
 
@@ -160,19 +157,9 @@ func (m *EdbDataTradeAnalysis) MultiUpdateValue(items []*EdbDataTradeAnalysis) (
 	if len(items) == 0 {
 		return
 	}
-
-	o := orm.NewOrm()
 	sql := fmt.Sprintf("UPDATE %s SET %s = ?, %s = NOW() WHERE %s = ?", m.TableName(), m.Cols().Value, m.Cols().ModifyTime, m.Cols().PrimaryId)
-	p, e := o.Raw(sql).Prepare()
-	if e != nil {
-		err = fmt.Errorf("update sql prepare err: %v", e)
-		return
-	}
-	defer func() {
-		_ = p.Close()
-	}()
 	for _, v := range items {
-		_, err = p.Exec(v.Value, v.EdbDataId)
+		err = global.DEFAULT_DmSQL.Exec(sql, v.Value, v.EdbDataId).Error
 		if err != nil {
 			return
 		}

+ 8 - 7
models/edb_info.go

@@ -6,6 +6,7 @@ import (
 	"eta_gn/eta_index_lib/models/mgo"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
+	"gorm.io/gorm"
 	"strconv"
 	"time"
 
@@ -272,14 +273,14 @@ func GetEdbDataListAllByMysql(source, subSource int, findEdbDataListAllCond Find
 // @Description: 根据事务链接获取指标数据列表 order:1升序,其余值为降序
 // @author: Roc
 // @datetime 2024-05-08 15:34:06
-// @param to orm.TxOrmer
+// @param to *gorm.DB
 // @param source int
 // @param subSource int
 // @param findEdbDataListAllCond FindEdbDataListAllCond
 // @param order int
 // @return item []*EdbInfoSearchData
 // @return err error
-func GetEdbDataListAllByTo(to orm.TxOrmer, source, subSource int, findEdbDataListAllCond FindEdbDataListAllCond, order int) (item []*EdbInfoSearchData, err error) {
+func GetEdbDataListAllByTo(to *gorm.DB, source, subSource int, findEdbDataListAllCond FindEdbDataListAllCond, order int) (item []*EdbInfoSearchData, err error) {
 	if source == utils.DATA_SOURCE_BUSINESS && utils.UseMongo {
 		return GetEdbDataListAllByMongo(source, subSource, findEdbDataListAllCond, order)
 	}
@@ -291,14 +292,14 @@ func GetEdbDataListAllByTo(to orm.TxOrmer, source, subSource int, findEdbDataLis
 // @Description: 根据事务链接获取指标数据列表 order:1升序,其余值为降序(Mysql)
 // @author: Roc
 // @datetime 2024-05-08 15:34:13
-// @param to orm.TxOrmer
+// @param to *gorm.DB
 // @param source int
 // @param subSource int
 // @param findEdbDataListAllCond FindEdbDataListAllCond
 // @param order int
 // @return item []*EdbInfoSearchData
 // @return err error
-func GetEdbDataListAllByMysqlTo(to orm.TxOrmer, source, subSource int, findEdbDataListAllCond FindEdbDataListAllCond, order int) (item []*EdbInfoSearchData, err error) {
+func GetEdbDataListAllByMysqlTo(to *gorm.DB, source, subSource int, findEdbDataListAllCond FindEdbDataListAllCond, order int) (item []*EdbInfoSearchData, err error) {
 	if findEdbDataListAllCond.EdbInfoId <= 0 {
 		return
 	}
@@ -331,7 +332,7 @@ func GetEdbDataListAllByMysqlTo(to orm.TxOrmer, source, subSource int, findEdbDa
 	} else {
 		sql += ` ORDER BY data_time DESC `
 	}
-	_, err = to.Raw(sql, pars).QueryRows(&item)
+	err = to.Raw(sql, pars).Scan(&item).Error
 	return
 }
 
@@ -607,7 +608,7 @@ func GetEdbDataListAllV1(condition string, pars []interface{}, source, subSource
 }
 
 // GetEdbDataListAllV1ByTo 通过事务链接获取数据列表
-func GetEdbDataListAllV1ByTo(to orm.TxOrmer, condition string, pars []interface{}, source, subSource, order int) (item []*EdbInfoSearchDataV1, err error) {
+func GetEdbDataListAllV1ByTo(to *gorm.DB, condition string, pars []interface{}, source, subSource, order int) (item []*EdbInfoSearchDataV1, err error) {
 	sql := ``
 	tableName := GetEdbDataTableName(source, subSource)
 	sql = ` SELECT * FROM %s WHERE 1=1 `
@@ -621,7 +622,7 @@ func GetEdbDataListAllV1ByTo(to orm.TxOrmer, condition string, pars []interface{
 	} else {
 		sql += ` ORDER BY data_time DESC `
 	}
-	_, err = to.Raw(sql, pars).QueryRows(&item)
+	err = to.Raw(sql, pars).Scan(&item).Error
 	return
 }
 

+ 19 - 16
models/edb_source.go

@@ -1,9 +1,9 @@
 package models
 
 import (
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
@@ -12,23 +12,27 @@ var (
 	EdbSourceExtendIdMap map[string]int     // 指标来源字符串对应来源ID
 )
 
-// EdbSource 指标来源表
 type EdbSource struct {
-	EdbSourceId      int    `orm:"column(edb_source_id);pk"`
-	SourceName       string `description:"指标来源名称"`
-	TableName        string `description:"数据表名"`
-	EdbAddMethod     string `description:"指标新增接口"`
-	EdbRefreshMethod string `description:"指标刷新接口"`
-	IsBase           int    `description:"是否为基础指标: 0-否; 1-是"`
-	FromBridge       int    `description:"是否来源于桥接服务: 0-否; 1-是"`
-	BridgeFlag       string `description:"桥接服务对象标识"`
-	SourceExtend     string `description:"扩展字段做查询用"`
-	EdbCodeRequired  int    `description:"指标编码是否必填: 0-否; 1-是"`
+	EdbSourceId      int    `gorm:"primaryKey;autoIncrement;column:edb_source_id" description:"指标来源ID"`
+	SourceName       string `gorm:"column:source_name;not null;default:'';type:varchar(128)" description:"指标来源名称"`
+	TableName1       string `gorm:"column:table_name;not null;default:'';type:varchar(128)" description:"数据表名"`
+	EdbAddMethod     string `gorm:"column:edb_add_method;not null;default:'';type:varchar(255)" description:"指标新增接口"`
+	EdbRefreshMethod string `gorm:"column:edb_refresh_method;not null;default:'';type:varchar(255)" description:"指标刷新接口"`
+	IsBase           int    `gorm:"column:is_base;not null;default:0" description:"是否为基础指标: 0-否; 1-是"`
+	FromBridge       int    `gorm:"column:from_bridge;not null;default:0" description:"是否来源于桥接服务: 0-否; 1-是"`
+	BridgeFlag       string `gorm:"column:bridge_flag;not null;default:'';type:varchar(128)" description:"桥接服务对象标识"`
+	SourceExtend     string `gorm:"column:source_extend;not null;default:'';type:varchar(255)" description:"扩展字段做查询用"`
+	EdbCodeRequired  int    `gorm:"column:edb_code_required;not null;default:0" description:"指标编码是否必填: 0-否; 1-是"`
+}
+
+// 获取表名
+func (e *EdbSource) TableName() string {
+	return "edb_source"
 }
 
 // GetEdbSourceItemsByCondition 获取指标来源列表
 func GetEdbSourceItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbSource, err error) {
-	o := orm.NewOrm()
+
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -38,15 +42,14 @@ func GetEdbSourceItemsByCondition(condition string, pars []interface{}, fieldArr
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM edb_source WHERE 1=1 %s %s`, fields, condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DEFAULT_DmSQL.Model(&EdbSource{}).Raw(sql, pars).Scan(&items).Error
 	return
 }
 
 // GetEdbSourceItemByCondition 获取指标来源
 func GetEdbSourceItemByCondition(condition string, pars []interface{}) (item *EdbSource, err error) {
-	o := orm.NewOrm()
 	sql := fmt.Sprintf(`SELECT * FROM edb_source WHERE 1=1 %s`, condition)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DEFAULT_DmSQL.Model(&EdbSource{}).Raw(sql, pars).First(&item).Error
 	return
 }
 

+ 17 - 24
models/predict_edb.go

@@ -3,11 +3,12 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/dengsgo/math-engine/engine"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strings"
 	"time"
 )
@@ -29,16 +30,12 @@ type CalculateRule struct {
 
 // RefreshCalculateByRuleBy9 刷新计算
 func RefreshCalculateByRuleBy9(rule CalculateRule) (resultDataList []*EdbInfoSearchData, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
 			to.Rollback()
 		} else {
-			err = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -48,7 +45,7 @@ func RefreshCalculateByRuleBy9(rule CalculateRule) (resultDataList []*EdbInfoSea
 }
 
 // CalculateByRuleBy9 动态环差规则计算入库
-func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*EdbInfoSearchData, err error) {
+func CalculateByRuleBy9(to *gorm.DB, rule CalculateRule) (resultDataList []*EdbInfoSearchData, err error) {
 	realSaveDataMap := make(map[string]map[int]float64)
 	saveDataMap := make(map[string]map[int]float64)
 
@@ -129,7 +126,7 @@ func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*E
 	//获取指标所有数据
 	dataList := make([]*PredictEdbRuleData, 0)
 	sql := `SELECT * FROM predict_edb_rule_data WHERE config_id = ?`
-	_, err = to.Raw(sql, rule.ConfigId).QueryRows(&dataList)
+	err = to.Raw(sql, rule.ConfigId).Scan(&dataList).Error
 	if err != nil {
 		return
 	}
@@ -258,7 +255,7 @@ func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*E
 			if existStr != saveValue {
 				existPredictEdbRuleData.Value = saveValue
 				existPredictEdbRuleData.ModifyTime = time.Now()
-				_, err = to.Update(existPredictEdbRuleData, "Value", "ModifyTime")
+				err = to.Model(existPredictEdbRuleData).Select([]string{"Value", "ModifyTime"}).Updates(existPredictEdbRuleData).Error
 				if err != nil {
 					return nil, err
 				}
@@ -276,7 +273,7 @@ func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*E
 	// 添加计算出来的值入库
 	lenAddDataList := len(addDataList)
 	if lenAddDataList > 0 {
-		_, err = to.InsertMulti(lenAddDataList, addDataList)
+		err = to.CreateInBatches(addDataList, 500).Error
 		if err != nil {
 			return
 		}
@@ -292,7 +289,7 @@ func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*E
 		//如果拼接指标变更了,那么需要删除所有的指标数据
 		sql := ` DELETE FROM predict_edb_rule_data WHERE config_id = ? and data_time in (` + utils.GetOrmInReplace(lenRemoveDateList) + `) `
 
-		_, err = to.Raw(sql, rule.ConfigId, removeDateList).Exec()
+		err = to.Exec(sql, rule.ConfigId, removeDateList).Error
 		if err != nil {
 			err = fmt.Errorf("删除计算失败的预测规则计算指标数据失败,Err:" + err.Error())
 			return
@@ -304,16 +301,12 @@ func CalculateByRuleBy9(to orm.TxOrmer, rule CalculateRule) (resultDataList []*E
 
 // RefreshCalculateByRuleByLineNh 刷新动态结果计算(线性拟合)
 func RefreshCalculateByRuleByLineNh(predictEdbInfo EdbInfo, predictEdbConfAndDataList []*PredictEdbConfAndData, rule PredictEdbConf) (err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
 			to.Rollback()
 		} else {
-			err = to.Commit()
+			to.Commit()
 		}
 	}()
 	err, errMsg = CalculateByRuleByRuleLineNh(to, predictEdbInfo, predictEdbConfAndDataList, rule)
@@ -321,7 +314,7 @@ func RefreshCalculateByRuleByLineNh(predictEdbInfo EdbInfo, predictEdbConfAndDat
 }
 
 // CalculateByRuleByRuleLineNh 一元线性拟合规则计算入库
-func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predictEdbConfAndDataList []*PredictEdbConfAndData, rule PredictEdbConf) (err error, errMsg string) {
+func CalculateByRuleByRuleLineNh(to *gorm.DB, predictEdbInfo EdbInfo, predictEdbConfAndDataList []*PredictEdbConfAndData, rule PredictEdbConf) (err error, errMsg string) {
 	var secondDataList []*EdbInfoSearchData
 	predictEdbInfoId := predictEdbInfo.EdbInfoId // 预测指标id
 
@@ -339,7 +332,7 @@ func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predict
 		// 来源指标
 		var sourceEdbInfoItem *EdbInfo
 		sql := ` SELECT * FROM edb_info WHERE edb_info_id=? `
-		err = to.Raw(sql, rule.SourceEdbInfoId).QueryRow(&sourceEdbInfoItem)
+		err = to.Raw(sql, rule.SourceEdbInfoId).First(&sourceEdbInfoItem).Error
 		if err != nil {
 			return
 		}
@@ -376,7 +369,7 @@ func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predict
 		//获取该配置的所有数据
 		dataList := make([]*PredictEdbRuleData, 0)
 		sql := `SELECT * FROM predict_edb_rule_data WHERE config_id = ?`
-		_, err = to.Raw(sql, rule.ConfigId).QueryRows(&dataList)
+		err = to.Raw(sql, rule.ConfigId).Scan(&dataList).Error
 		if err != nil {
 			return
 		}
@@ -431,7 +424,7 @@ func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predict
 				if existStr != saveValue {
 					existPredictEdbRuleData.Value = saveValue
 					existPredictEdbRuleData.ModifyTime = time.Now()
-					_, err = to.Update(existPredictEdbRuleData, "Value", "ModifyTime")
+					err = to.Model(existPredictEdbRuleData).Select([]string{"Value", "ModifyTime"}).Updates(existPredictEdbRuleData).Error
 					if err != nil {
 						return
 					}
@@ -442,7 +435,7 @@ func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predict
 		// 添加计算出来的值入库
 		lenAddDataList := len(addDataList)
 		if lenAddDataList > 0 {
-			_, err = to.InsertMulti(lenAddDataList, addDataList)
+			err = to.CreateInBatches(addDataList, 500).Error
 			if err != nil {
 				return
 			}
@@ -454,7 +447,7 @@ func CalculateByRuleByRuleLineNh(to orm.TxOrmer, predictEdbInfo EdbInfo, predict
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			sql := ` DELETE FROM predict_edb_rule_data WHERE config_id = ? and data_time in (` + utils.GetOrmInReplace(lenRemoveDateList) + `) `
 
-			_, err = to.Raw(sql, rule.ConfigId, removeDateList).Exec()
+			err = to.Exec(sql, rule.ConfigId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除计算失败的预测规则计算指标数据失败,Err:" + err.Error())
 				return

+ 41 - 56
models/predict_edb_data_base.go

@@ -2,10 +2,12 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -21,27 +23,21 @@ type PredictStandardBase struct {
 func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMapping, predictEdbConfList []*PredictEdbConf, calculateRuleMap map[int]CalculateRule) (err error, errMsg string) {
 	var latestDateStr string
 	var latestValue float64
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			tx.Rollback()
+			to.Rollback()
 		} else {
-			err = tx.Commit()
-
+			to.Commit()
 			// 更新指标最大最小值
 			go UnifiedModifyPredictEdbInfoMaxAndMinInfo(item, latestDateStr, latestValue)
 		}
 	}()
 	// 新增预测指标
-	edbInfoId, err := tx.Insert(item)
+	err = to.Create(item).Error
 	if err != nil {
 		return
 	}
-	item.EdbInfoId = int(edbInfoId)
 
 	// 新增预测指标的关联关系
 	lenCalculateMapping := len(calculateMappingList)
@@ -50,7 +46,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 			calculateMappingItem.EdbInfoId = item.EdbInfoId
 			calculateMappingItem.EdbCode = item.EdbCode
 		}
-		_, err = tx.InsertMulti(lenCalculateMapping, calculateMappingList)
+		err = to.CreateInBatches(calculateMappingList, 500).Error
 		if err != nil {
 			return
 		}
@@ -61,12 +57,12 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 	// 新增预测指标配置
 	for k, v := range predictEdbConfList {
 		v.PredictEdbInfoId = item.EdbInfoId
-		configId, tmpErr := tx.Insert(v)
+		tmpErr := to.Create(v).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		v.ConfigId = int(configId)
+		//v.ConfigId = int(configId)
 
 		// 每次规则计算的时候,产生的临时数据
 		resultDataList := make([]*EdbInfoSearchData, 0)
@@ -77,7 +73,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 			calculateRule.EdbInfoId = v.PredictEdbInfoId
 
 			// 指标与规则的动态数据生成入库
-			resultDataList, err = CalculateByRuleBy9(tx, calculateRule)
+			resultDataList, err = CalculateByRuleBy9(to, calculateRule)
 			if err != nil {
 				return
 			}
@@ -89,7 +85,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 					vv.EdbInfoId = item.EdbInfoId
 					vv.ConfigId = v.ConfigId
 				}
-				_, err = tx.InsertMulti(lenTrendsCalculateMapping, calculateRule.TrendsCalculateMappingList)
+				err = to.CreateInBatches(calculateRule.TrendsCalculateMappingList, 500).Error
 				if err != nil {
 					return
 				}
@@ -100,7 +96,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 			calculateRule.EdbInfoId = v.PredictEdbInfoId
 
 			// 指标与规则的动态数据(拟合数据)生成入库
-			err, errMsg = CalculateByRuleByRuleLineNh(tx, *item, predictEdbConfAndDataList, *v)
+			err, errMsg = CalculateByRuleByRuleLineNh(to, *item, predictEdbConfAndDataList, *v)
 			if err != nil {
 				return
 			}
@@ -112,7 +108,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 					vv.EdbInfoId = item.EdbInfoId
 					vv.ConfigId = v.ConfigId
 				}
-				_, err = tx.InsertMulti(lenTrendsCalculateMapping, calculateRule.TrendsCalculateMappingList)
+				err = to.CreateInBatches(calculateRule.TrendsCalculateMappingList, 500).Error
 				if err != nil {
 					return
 				}
@@ -138,7 +134,7 @@ func AddPredictEdb(item *EdbInfo, calculateMappingList []*EdbInfoCalculateMappin
 
 	// 重新预测数据
 	obj := new(PredictStandardBase)
-	latestDateStr, latestValue, err, errMsg = obj.refresh(tx, item, predictEdbConfAndDataList, item.EdbCode, "")
+	latestDateStr, latestValue, err, errMsg = obj.refresh(to, item, predictEdbConfAndDataList, item.EdbCode, "")
 
 	return
 }
@@ -148,51 +144,46 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 	var latestDateStr string
 	var latestValue float64
 
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			tx.Rollback()
+			to.Rollback()
 		} else {
-			err = tx.Commit()
-
+			to.Commit()
 			// 更新指标最大最小值
 			go UnifiedModifyPredictEdbInfoMaxAndMinInfo(edbInfo, latestDateStr, latestValue)
 		}
 	}()
 	// 修改预测指标
-	_, err = tx.Update(edbInfo, updateEdbInfoCol...)
+	err = to.Model(edbInfo).Select(updateEdbInfoCol).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
 
 	// 先删除原有的预测指标 与 其他指标的 关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ?`
-	_, err = tx.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	// 先删除原有的配置
 	sql = ` DELETE FROM predict_edb_conf WHERE predict_edb_info_id = ?`
-	_, err = tx.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	// 删除基础预测指标 规则配置 与 其他指标的 关联关系
 	sql = ` DELETE FROM predict_edb_conf_calculate_mapping WHERE edb_info_id = ?`
-	_, err = tx.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	// 删除基础预测指标 规则配置 生成的动态数据值
 	sql = ` DELETE FROM predict_edb_rule_data WHERE edb_info_id = ?`
-	_, err = tx.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -204,7 +195,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 			calculateMappingItem.EdbInfoId = edbInfo.EdbInfoId
 			calculateMappingItem.EdbCode = edbInfo.EdbCode
 		}
-		_, err = tx.InsertMulti(lenCalculateMapping, calculateMappingList)
+		err = to.CreateInBatches(calculateMappingList, 500).Error
 		if err != nil {
 			return
 		}
@@ -215,12 +206,11 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 
 	// 新增预测指标配置
 	for confIndex, v := range predictEdbConfList {
-		configId, tmpErr := tx.Insert(v)
+		tmpErr := to.Create(v).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		v.ConfigId = int(configId)
 		// 每次规则计算的时候,产生的临时数据
 		resultDataList := make([]*EdbInfoSearchData, 0)
 
@@ -231,7 +221,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 			calculateRule.EdbInfoId = v.PredictEdbInfoId
 
 			// 指标与规则的动态数据生成入库
-			resultDataList, err = CalculateByRuleBy9(tx, calculateRule)
+			resultDataList, err = CalculateByRuleBy9(to, calculateRule)
 			if err != nil {
 				return
 			}
@@ -243,7 +233,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 					vv.EdbInfoId = edbInfo.EdbInfoId
 					vv.ConfigId = v.ConfigId
 				}
-				_, err = tx.InsertMulti(lenTrendsCalculateMapping, calculateRule.TrendsCalculateMappingList)
+				err = to.CreateInBatches(calculateRule.TrendsCalculateMappingList, 500).Error
 				if err != nil {
 					return
 				}
@@ -254,7 +244,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 			calculateRule.EdbInfoId = v.PredictEdbInfoId
 
 			// 指标与规则的动态数据(拟合数据)生成入库
-			err, errMsg = CalculateByRuleByRuleLineNh(tx, *edbInfo, predictEdbConfAndDataList, *v)
+			err, errMsg = CalculateByRuleByRuleLineNh(to, *edbInfo, predictEdbConfAndDataList, *v)
 			if err != nil {
 				return
 			}
@@ -266,7 +256,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 					vv.EdbInfoId = edbInfo.EdbInfoId
 					vv.ConfigId = v.ConfigId
 				}
-				_, err = tx.InsertMulti(lenTrendsCalculateMapping, calculateRule.TrendsCalculateMappingList)
+				err = to.CreateInBatches(calculateRule.TrendsCalculateMappingList, 500).Error
 				if err != nil {
 					return
 				}
@@ -294,7 +284,7 @@ func EditPredictEdb(edbInfo *EdbInfo, updateEdbInfoCol []string, calculateMappin
 
 	// 重新预测数据
 	obj := new(PredictStandardBase)
-	latestDateStr, latestValue, err, errMsg = obj.refresh(tx, edbInfo, predictEdbConfAndDataList, edbInfo.EdbCode, "")
+	latestDateStr, latestValue, err, errMsg = obj.refresh(to, edbInfo, predictEdbConfAndDataList, edbInfo.EdbCode, "")
 
 	return
 }
@@ -332,17 +322,12 @@ func (obj PredictStandardBase) Refresh(params RefreshParams) (latestDateStr stri
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -362,7 +347,7 @@ func (obj PredictStandardBase) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT
 }
 
-func (obj PredictStandardBase) refresh(to orm.TxOrmer, edbInfo *EdbInfo, predictEdbConfAndDataList []*PredictEdbConfAndData, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
+func (obj PredictStandardBase) refresh(to *gorm.DB, edbInfo *EdbInfo, predictEdbConfAndDataList []*PredictEdbConfAndData, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -378,7 +363,7 @@ func (obj PredictStandardBase) refresh(to orm.TxOrmer, edbInfo *EdbInfo, predict
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -419,7 +404,7 @@ func (obj PredictStandardBase) refresh(to orm.TxOrmer, edbInfo *EdbInfo, predict
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -447,7 +432,7 @@ func (obj PredictStandardBase) refresh(to orm.TxOrmer, edbInfo *EdbInfo, predict
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -458,7 +443,7 @@ func (obj PredictStandardBase) refresh(to orm.TxOrmer, edbInfo *EdbInfo, predict
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -530,15 +515,15 @@ func RefreshPredictStandardBaseByGeneralEdbInfoId(sourceEdbInfoId int) {
 			utils.FileLog.Info("RefreshPredictStandardBaseByGeneralEdbInfoId更新失败,来源ID: ErrMsg:" + strings.Join(errList, "\n"))
 		}
 	}()
-	o := orm.NewOrm()
+
 	var list []*PredictEdbConf
 	sql := ` SELECT * FROM predict_edb_conf WHERE source_edb_info_id=? `
-	total, err := o.Raw(sql, sourceEdbInfoId).QueryRows(&list)
+	err := global.DEFAULT_DmSQL.Raw(sql, sourceEdbInfoId).Scan(&list).Error
 	if err != nil {
 		errList = append(errList, fmt.Sprintf("根据来源换指标id获取配置项失败,来源指标ID:%d;err:%s", sourceEdbInfoId, err.Error()))
 		return
 	}
-
+	total := len(list)
 	if total > 0 {
 		idList := make([]int, 0)
 		for _, v := range list {

+ 18 - 28
models/predict_edb_data_calculate_bp.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // SavePredictCalculateBp 变频
 func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddPredictCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -48,12 +44,11 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 		edbInfo.EdbType = 2
 		edbInfo.EmptyType = req.EmptyType
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -70,7 +65,7 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -97,7 +92,7 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.EmptyType = req.EmptyType
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn", "EmptyType")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn", "EmptyType"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -119,14 +114,14 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 			return
 		}
 		//清空原有数据
 		sql = ` DELETE FROM edb_data_predict_calculate_bp WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -148,7 +143,7 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -162,17 +157,12 @@ func SavePredictCalculateBp(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbI
 }
 
 func RefreshAllPredictCalculateBp(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, emptyType int) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllPredictCalculateBp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -182,7 +172,7 @@ func RefreshAllPredictCalculateBp(edbInfoId, source, subSource int, fromEdbInfo
 }
 
 // refreshAllPredictCalculateBp 刷新变频数据
-func refreshAllPredictCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, order, emptyType int) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateBp(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, order, emptyType int) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//计算数据
 
@@ -221,7 +211,7 @@ func refreshAllPredictCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource i
 		//如果没有来源指标数据,那么已经入库的计算指标数据需要全部删除
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ?`, tableName)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除所有的升频指标数据失败,Err:" + err.Error())
 			return
@@ -339,7 +329,7 @@ func refreshAllPredictCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource i
 		//如果拼接指标变更了,那么需要删除所有的指标数据
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(len(removeDateList))+`) `, tableName)
-		_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+		err = to.Exec(sql, edbInfoId, removeDateList).Error
 		if err != nil {
 			err = fmt.Errorf("删除不存在的升频指标数据失败,Err:" + err.Error())
 			return
@@ -348,7 +338,7 @@ func refreshAllPredictCalculateBp(to orm.TxOrmer, edbInfoId, source, subSource i
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 	return
 }

+ 21 - 30
models/predict_edb_data_calculate_cjjx.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +15,12 @@ import (
 
 // SavePredictCalculateCjjx 超季节性
 func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateCjjx,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("req.EdbInfoId:", req.EdbInfoId)
@@ -49,12 +46,11 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -72,7 +68,7 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -105,7 +101,7 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.Calendar = req.Calendar
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "Calendar", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -130,7 +126,7 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		if count <= 0 {
 			// 需要删除原先的 计算指标关联的,基础指标的关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				return
 			}
@@ -153,7 +149,7 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				_, err = to.Insert(calculateMappingItem)
+				err = to.Create(calculateMappingItem).Error
 				if err != nil {
 					return
 				}
@@ -163,7 +159,7 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 		//清空原有数据
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -178,17 +174,12 @@ func SavePredictCalculateCjjx(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Ed
 
 // RefreshAllPredictCalculateCjjx 刷新全部超季节性数据
 func RefreshAllPredictCalculateCjjx(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllPredictCalculateCjjx,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -199,7 +190,7 @@ func RefreshAllPredictCalculateCjjx(edbInfoId, source, subSource int, fromEdbInf
 }
 
 // refreshAllPredictCalculateCjjx 刷新全部超季节性数据
-func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateCjjx(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, calendar string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	// 获取关联指标数据
 	dataList, err := GetPredictEdbDataListAllByStartDate(fromEdbInfo, 1, "")
@@ -226,7 +217,7 @@ func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -331,7 +322,7 @@ func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource
 					if existStr != val {
 						sql = ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 						sql = fmt.Sprintf(sql, dataTableName)
-						_, err = to.Raw(sql, val, edbInfoId, av).Exec()
+						err = to.Exec(sql, val, edbInfoId, av).Error
 						if err != nil {
 							return
 						}
@@ -353,7 +344,7 @@ func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			tableName := GetEdbDataTableName(source, subSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, tableName)
-			_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的超季节性指标数据失败,Err:" + err.Error())
 				return
@@ -363,7 +354,7 @@ func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}
@@ -372,7 +363,7 @@ func refreshAllPredictCalculateCjjx(to orm.TxOrmer, edbInfoId, source, subSource
 	//确定最终值
 	var finalLast EdbInfoSearchData
 	sql = ` SELECT data_time , value FROM edb_data_predict_calculate_cjjx WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `
-	tmpErr := to.Raw(sql, edbInfoId, latestDateStr).QueryRow(&finalLast)
+	tmpErr := to.Raw(sql, edbInfoId, latestDateStr).First(&finalLast).Error
 	if tmpErr != nil {
 		if tmpErr.Error() != utils.ErrNoRow() {
 			err = tmpErr

+ 19 - 28
models/predict_edb_data_calculate_hbz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // SavePredictCalculateHbz 新增环比值指标
 func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateHbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -47,12 +43,12 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -69,7 +65,7 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -97,7 +93,7 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -121,7 +117,7 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		//删除,计算指标关联的,基础指标的关联关系
 		if count <= 0 {
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				return
 			}
@@ -143,7 +139,7 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				_, err = to.Insert(calculateMappingItem)
+				err = to.Create(calculateMappingItem).Error
 				if err != nil {
 					return
 				}
@@ -152,7 +148,7 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		//清空原有数据
 		sql := ` DELETE FROM %s WHERE edb_info_id = ? `
 		sql = fmt.Sprintf(sql, dataTableName)
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -165,17 +161,12 @@ func SavePredictCalculateHbz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 
 // RefreshAllPredictCalculateHbz 刷新所有环比值数据
 func RefreshAllPredictCalculateHbz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllPredictCalculateHbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -185,7 +176,7 @@ func RefreshAllPredictCalculateHbz(edbInfoId, source, subSource int, fromEdbInfo
 }
 
 // refreshAllPredictCalculateHbz 刷新所有环比值数据
-func refreshAllPredictCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateHbz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	// 获取关联指标数据
 	dataList, err := GetPredictEdbDataListAllByStartDate(fromEdbInfo, 0, "")
@@ -206,7 +197,7 @@ func refreshAllPredictCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -255,7 +246,7 @@ func refreshAllPredictCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource
 							if existStr != val {
 								sql = ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = to.Raw(sql, val, edbInfoId, currentItem.DataTime).Exec()
+								err = to.Exec(sql, val, edbInfoId, currentItem.DataTime).Error
 								if err != nil {
 									return
 								}
@@ -269,7 +260,7 @@ func refreshAllPredictCalculateHbz(to orm.TxOrmer, edbInfoId, source, subSource
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}

+ 20 - 29
models/predict_edb_data_calculate_hcz.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +15,12 @@ import (
 
 // SavePredictCalculateHcz 新增环差值指标
 func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string, formulaInt int, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateHcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -47,12 +44,11 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -70,7 +66,7 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -97,7 +93,7 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -121,7 +117,7 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		//删除,计算指标关联的,基础指标的关联关系
 		if count <= 0 {
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				return
 			}
@@ -143,7 +139,7 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				_, err = to.Insert(calculateMappingItem)
+				err = to.Create(calculateMappingItem).Error
 				if err != nil {
 					return
 				}
@@ -151,7 +147,7 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 		}
 		//清空原有数据
 		sql := ` DELETE FROM edb_data_predict_calculate_hcz WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -165,17 +161,12 @@ func SavePredictCalculateHcz(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *Edb
 
 // RefreshAllPredictCalculateHcz 刷新所有环差值数据
 func RefreshAllPredictCalculateHcz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("refreshAllPredictCalculateHcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -185,7 +176,7 @@ func RefreshAllPredictCalculateHcz(edbInfoId, source, subSource int, fromEdbInfo
 }
 
 // refreshAllPredictCalculateHcz 刷新所有环差值数据
-func refreshAllPredictCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateHcz(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string, formulaInt int) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	// 获取关联指标数据
 	dataList, err := GetPredictEdbDataListAllByStartDate(fromEdbInfo, 0, "")
@@ -212,7 +203,7 @@ func refreshAllPredictCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource
 	//	existPars = append(existPars, startDate)
 	//}
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId, existPars).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId, existPars).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -268,7 +259,7 @@ func refreshAllPredictCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource
 							if existStr != val {
 								sql = ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = to.Raw(sql, val, edbInfoId, currentItem.DataTime).Exec()
+								err = to.Exec(sql, val, edbInfoId, currentItem.DataTime).Error
 								if err != nil {
 									return
 								}
@@ -282,7 +273,7 @@ func refreshAllPredictCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}
@@ -300,7 +291,7 @@ func refreshAllPredictCalculateHcz(to orm.TxOrmer, edbInfoId, source, subSource
 		tableName := GetEdbDataTableName(source, subSource)
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除计算失败的计算指标数据失败,Err:" + err.Error())
 			return

+ 18 - 27
models/predict_edb_data_calculate_jp.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +15,12 @@ import (
 
 // SavePredictCalculateJp 预测降频值
 func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateJp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("reqEdbInfoId:", reqEdbInfoId)
@@ -62,12 +59,11 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		// 添加关联关系
 		{
@@ -87,7 +83,7 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -123,7 +119,7 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -145,7 +141,7 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 			return
@@ -154,7 +150,7 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 		//清空原有已经入库的数据
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -177,7 +173,7 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -193,17 +189,12 @@ func SavePredictCalculateJp(reqEdbInfoId, classifyId int, edbName, frequency, un
 
 // RefreshAllPredictCalculateJp 刷新全部预测降频值数据
 func RefreshAllPredictCalculateJp(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateJp,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -213,7 +204,7 @@ func RefreshAllPredictCalculateJp(edbInfoId, source, subSource int, fromEdbInfo
 }
 
 // refreshAllPredictCalculateJp 刷新预测降频数据
-func refreshAllPredictCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateJp(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	//获取源指标数据
 	fmt.Println("EdbInfoId:", fromEdbInfo.EdbInfoId)
@@ -442,7 +433,7 @@ func refreshAllPredictCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource i
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -454,7 +445,7 @@ func refreshAllPredictCalculateJp(to orm.TxOrmer, edbInfoId, source, subSource i
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return

+ 17 - 27
models/predict_edb_data_calculate_kszs.go

@@ -3,10 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -14,17 +15,12 @@ import (
 
 // SavePredictCalculateKszs 预测扩散指数
 func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, relationCalculateEdbInfoIdList []EdbInfoCalculateEdbInfoIdReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("reqEdbInfoId:", reqEdbInfoId)
@@ -65,12 +61,11 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		calculateMappingItemList := make([]*EdbInfoCalculateMapping, 0)
@@ -100,7 +95,7 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 
 			tagMap[v.FromTag] = v.EdbInfoId
 		}
-		_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+		err = to.CreateInBatches(calculateMappingItemList, 500).Error
 		if err != nil {
 			return
 		}
@@ -131,14 +126,14 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 			return
@@ -146,7 +141,7 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 		//清空原有数据
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -179,7 +174,7 @@ func SavePredictCalculateKszs(reqEdbInfoId, classifyId int, edbName, frequency,
 
 			tagMap[v.FromTag] = v.EdbInfoId
 		}
-		_, err = to.InsertMulti(len(calculateMappingItemList), calculateMappingItemList)
+		err = to.CreateInBatches(calculateMappingItemList, 500).Error
 		if err != nil {
 			return
 		}
@@ -206,17 +201,12 @@ func RefreshAllPredictCalculateKszs(edbInfo *EdbInfo) (latestDateStr string, lat
 		relationEdbInfoList = append(relationEdbInfoList, fromEdbInfo)
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateKszs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -226,7 +216,7 @@ func RefreshAllPredictCalculateKszs(edbInfo *EdbInfo) (latestDateStr string, lat
 }
 
 // refreshAllPredictCalculateKszs 刷新预测年化数据
-func refreshAllPredictCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource int, relationEdbInfoList []*EdbInfo, edbCode, calculateFormula string, tagMap map[string]int) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateKszs(to *gorm.DB, edbInfoId, source, subSource int, relationEdbInfoList []*EdbInfo, edbCode, calculateFormula string, tagMap map[string]int) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_KSZS, subSource)
 
@@ -385,7 +375,7 @@ func refreshAllPredictCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -397,7 +387,7 @@ func refreshAllPredictCalculateKszs(to orm.TxOrmer, edbInfoId, source, subSource
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除扩散指数指标数据失败,Err:" + err.Error())
 			return

+ 23 - 38
models/predict_edb_data_calculate_ljz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -33,17 +34,12 @@ func (obj PredictLjz) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInf
 		err = errors.New(errMsg)
 		return
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -82,12 +78,11 @@ func (obj PredictLjz) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInf
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -105,7 +100,7 @@ func (obj PredictLjz) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInf
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -139,17 +134,12 @@ func (obj PredictLjz) Edit(params BatchSaveCalculateBatchParams) (latestDateStr
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -171,7 +161,7 @@ func (obj PredictLjz) Edit(params BatchSaveCalculateBatchParams) (latestDateStr
 	edbInfo.Frequency = req.Frequency
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -199,14 +189,14 @@ func (obj PredictLjz) Edit(params BatchSaveCalculateBatchParams) (latestDateStr
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -229,7 +219,7 @@ func (obj PredictLjz) Edit(params BatchSaveCalculateBatchParams) (latestDateStr
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -254,17 +244,12 @@ func (obj PredictLjz) Refresh(params RefreshParams) (latestDateStr string, lates
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -284,7 +269,7 @@ func (obj PredictLjz) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_LJZ
 }
 
-func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
+func (obj PredictLjz) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
@@ -527,7 +512,7 @@ func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int,
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -565,7 +550,7 @@ func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int,
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -593,7 +578,7 @@ func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int,
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -604,7 +589,7 @@ func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int,
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -614,7 +599,7 @@ func (obj PredictLjz) refresh(to orm.TxOrmer, edbInfoId, source, subSource int,
 	{
 		var finalLast EdbInfoSearchData
 		sql = fmt.Sprintf(` SELECT data_time , value FROM %s WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `, dataTableName)
-		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).QueryRow(&finalLast)
+		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).First(&finalLast).Error
 		if err != nil && err.Error() != utils.ErrNoRow() {
 			return
 		} else {

+ 23 - 38
models/predict_edb_data_calculate_ljznczj.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -32,17 +33,12 @@ func (obj PredictLjzNczj) Add(params BatchSaveCalculateBatchParams) (edbInfo *Ed
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -81,12 +77,11 @@ func (obj PredictLjzNczj) Add(params BatchSaveCalculateBatchParams) (edbInfo *Ed
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -104,7 +99,7 @@ func (obj PredictLjzNczj) Add(params BatchSaveCalculateBatchParams) (edbInfo *Ed
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -137,17 +132,12 @@ func (obj PredictLjzNczj) Edit(params BatchSaveCalculateBatchParams) (latestDate
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -169,7 +159,7 @@ func (obj PredictLjzNczj) Edit(params BatchSaveCalculateBatchParams) (latestDate
 	edbInfo.Frequency = req.Frequency
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -197,14 +187,14 @@ func (obj PredictLjzNczj) Edit(params BatchSaveCalculateBatchParams) (latestDate
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -227,7 +217,7 @@ func (obj PredictLjzNczj) Edit(params BatchSaveCalculateBatchParams) (latestDate
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -252,17 +242,12 @@ func (obj PredictLjzNczj) Refresh(params RefreshParams) (latestDateStr string, l
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -282,7 +267,7 @@ func (obj PredictLjzNczj) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_LJZNCZJ
 }
 
-func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
+func (obj PredictLjzNczj) refresh(to *gorm.DB, edbInfoId, source, subSource int, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
@@ -374,7 +359,7 @@ func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource i
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -412,7 +397,7 @@ func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource i
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -440,7 +425,7 @@ func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource i
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -451,7 +436,7 @@ func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource i
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -462,7 +447,7 @@ func (obj PredictLjzNczj) refresh(to orm.TxOrmer, edbInfoId, source, subSource i
 	{
 		var finalLast EdbInfoSearchData
 		sql = fmt.Sprintf(` SELECT data_time , value FROM %s WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `, dataTableName)
-		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).QueryRow(&finalLast)
+		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).First(&finalLast).Error
 		if err != nil && err.Error() != utils.ErrNoRow() {
 			return
 		} else {

+ 29 - 39
models/predict_edb_data_calculate_ljztbpj.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"sort"
 	"strings"
 	"time"
@@ -13,7 +14,7 @@ import (
 
 // EdbDataPredictCalculateLjztbpj 累计值同比拼接数据结构体
 type EdbDataPredictCalculateLjztbpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -26,17 +27,12 @@ type EdbDataPredictCalculateLjztbpj struct {
 
 // SavePredictCalculateLjztbpj 新增累计值同比拼接数据
 func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateLjztbpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//最近开始的时间
@@ -96,12 +92,12 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 			CalculateFormula: lastDateTime.Format(utils.FormatDate),
 			EdbType:          2,
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			existItemA = &EdbInfoCalculateMapping{
@@ -120,12 +116,12 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemA)
+			tmpErr := to.Create(existItemA).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemA.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 
 		//同比值指标
@@ -146,12 +142,12 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
@@ -170,7 +166,7 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = lastDateTime.Format(utils.FormatDate)
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -214,7 +210,7 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 		if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 			//删除之前的A指标关联关系
 			sql = ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除拼接日期之前的指标关联关系失败,Err:" + err.Error())
 				return
@@ -225,7 +221,7 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 		if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 			//删除之前的B指标关联关系
 			sql = ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除拼接日期之后的指标关联关系失败,Err:" + err.Error())
 				return
@@ -249,12 +245,11 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemA)
+			tmpErr := to.Create(existItemA).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemA.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -278,12 +273,11 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 				ModifyTime:                time.Now(),
 			}
 
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -293,7 +287,7 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 			// 删除之前所有的指标数据
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql = fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除所有的累计值同比拼接指标数据失败,Err:" + err.Error())
 				return
@@ -311,17 +305,12 @@ func SavePredictCalculateLjztbpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo
 
 // RefreshAllPredictCalculateLjztbpj 刷新所有 累计值同比拼接 数据
 func RefreshAllPredictCalculateLjztbpj(edbInfo *EdbInfo) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateLjztbpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -369,11 +358,11 @@ func RefreshAllPredictCalculateLjztbpj(edbInfo *EdbInfo) (latestDateStr string,
 }
 
 // refreshAllPredictCalculateLjztbpj 刷新所有 累计值同比拼接 数据
-func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo, existItemB *EdbInfoCalculateMapping) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateLjztbpj(to *gorm.DB, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo, existItemB *EdbInfoCalculateMapping) (latestDateStr string, latestValue float64, err error) {
 	//根据指标id获取全部的数据
 	var dataList []*EdbDataPredictCalculateLjztbpj
 	sql := ` SELECT * FROM edb_data_predict_calculate_ljztbpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return
 	}
@@ -424,7 +413,8 @@ func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, se
 				if edbData.Value != v.Value {
 					//更新指标数据
 					edbData.Value = v.Value
-					_, _ = to.Update(edbData, "Value")
+					//_, _ = to.Update(edbData, "Value")
+					_ = to.Model(edbData).Select([]string{"Value"}).Updates(edbData).Error
 				}
 			} else {
 				pjDataMap[v.DataTime] = v.Value
@@ -549,7 +539,7 @@ func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, se
 
 		//数据入库
 		if len(addDataList) > 0 {
-			_, tmpErr := to.InsertMulti(len(addDataList), addDataList)
+			tmpErr := to.CreateInBatches(addDataList, 500).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
@@ -566,7 +556,7 @@ func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, se
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = errors.New("删除不存在的累计值同比拼接指标数据失败,Err:" + err.Error())
 				return
@@ -579,7 +569,7 @@ func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, se
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		for edbDate, edbDataValue := range updateEdbDataMap {
 			sql := fmt.Sprintf(` UPDATE  %s set value = ?,modify_time=now() WHERE edb_info_id = ? and data_time = ? `, tableName)
-			_, err = to.Raw(sql, edbDataValue, edbInfo.EdbInfoId, edbDate).Exec()
+			err = to.Exec(sql, edbDataValue, edbInfo.EdbInfoId, edbDate).Error
 			if err != nil {
 				err = errors.New("更新现有的累计值同比拼接指标数据失败,Err:" + err.Error())
 				return
@@ -590,7 +580,7 @@ func refreshAllPredictCalculateLjztbpj(to orm.TxOrmer, edbInfo, firstEdbInfo, se
 	//确定最终值
 	var finalLast EdbInfoSearchData
 	sql = ` SELECT data_time , value FROM edb_data_predict_calculate_ljztbpj WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `
-	tmpErr := to.Raw(sql, edbInfo.EdbInfoId, latestDateStr).QueryRow(&finalLast)
+	tmpErr := to.Raw(sql, edbInfo.EdbInfoId, latestDateStr).First(&finalLast).Error
 	if tmpErr != nil {
 		if tmpErr.Error() != utils.ErrNoRow() {
 			err = tmpErr

+ 24 - 38
models/predict_edb_data_calculate_ljzzj.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"reflect"
 	"strconv"
@@ -26,17 +28,12 @@ func (obj PredictLjzzj) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbI
 		err = errors.New(errMsg)
 		return
 	}
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -60,12 +57,11 @@ func (obj PredictLjzzj) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbI
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = 2
 	edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -83,7 +79,7 @@ func (obj PredictLjzzj) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbI
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -109,17 +105,12 @@ func (obj PredictLjzzj) Edit(params BatchSaveCalculateBatchParams) (latestDateSt
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -137,7 +128,7 @@ func (obj PredictLjzzj) Edit(params BatchSaveCalculateBatchParams) (latestDateSt
 	edbInfo.Frequency = req.Frequency
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -159,14 +150,14 @@ func (obj PredictLjzzj) Edit(params BatchSaveCalculateBatchParams) (latestDateSt
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -189,7 +180,7 @@ func (obj PredictLjzzj) Edit(params BatchSaveCalculateBatchParams) (latestDateSt
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -214,17 +205,12 @@ func (obj PredictLjzzj) Refresh(params RefreshParams) (latestDateStr string, lat
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -244,7 +230,7 @@ func (obj PredictLjzzj) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_LJZZJ
 }
 
-func (obj PredictLjzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (latestDateStr string, latestValue float64, err error) {
+func (obj PredictLjzzj) refresh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (latestDateStr string, latestValue float64, err error) {
 	dataTableName := GetEdbDataTableName(source, subSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 
@@ -282,7 +268,7 @@ func (obj PredictLjzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -376,7 +362,7 @@ func (obj PredictLjzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return
@@ -387,7 +373,7 @@ func (obj PredictLjzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	{
 		var finalLast EdbInfoSearchData
 		sql = fmt.Sprintf(` SELECT data_time , value FROM %s WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `, dataTableName)
-		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).QueryRow(&finalLast)
+		err = to.Raw(sql, edbInfoId, fromEdbInfo.LatestDate).First(&finalLast).Error
 		if err != nil && err.Error() != utils.ErrNoRow() {
 			return
 		} else {
@@ -405,7 +391,7 @@ func (obj PredictLjzzj) refresh(to orm.TxOrmer, edbInfoId, source, subSource int
 	return
 }
 
-func (obj PredictLjzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to orm.TxOrmer) (newSql string, isAdd bool, err error) {
+func (obj PredictLjzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, dataTableName, addSql string, val float64, dataMap, existDataMap map[string]string, to *gorm.DB) (newSql string, isAdd bool, err error) {
 	newSql = addSql
 	saveValue := utils.SubFloatToString(val, 4)
 	//判断数据是否存在
@@ -422,7 +408,7 @@ func (obj PredictLjzzj) calculate(edbInfoId int, date, edbInfoIdStr, edbCode, da
 		if existVal != saveValue {
 			sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 			sql = fmt.Sprintf(sql, dataTableName)
-			_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+			err = to.Exec(sql, saveValue, edbInfoId, date).Error
 		}
 	}
 	return

+ 20 - 29
models/predict_edb_data_calculate_ljzzy.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +15,12 @@ import (
 
 // SavePredictCalculateLjzzy 累计值转月
 func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateLjzzy,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -48,12 +45,11 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 		edbInfo.UnitEn = req.Unit
 		edbInfo.EdbType = 2
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		//关联关系
 		{
@@ -71,7 +67,7 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -96,7 +92,7 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 		edbInfo.Frequency = req.Frequency
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -119,14 +115,14 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
 
 		//清空原有数据
 		sql = ` DELETE FROM edb_data_predict_calculate_ljzzy WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -149,7 +145,7 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -164,17 +160,12 @@ func SavePredictCalculateLjzzy(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *E
 
 // RefreshAllPredictCalculateLjzzy 刷新全部累计值转月数据
 func RefreshAllPredictCalculateLjzzy(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("refreshAllPredictCalculateLjzzy,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -184,7 +175,7 @@ func RefreshAllPredictCalculateLjzzy(edbInfoId, source, subSource int, fromEdbIn
 	return
 }
 
-func refreshAllPredictCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateLjzzy(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	dataList, err := GetPredictEdbDataListAllByStartDate(fromEdbInfo, 1, startDate)
 	if err != nil {
@@ -220,7 +211,7 @@ func refreshAllPredictCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSourc
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -315,7 +306,7 @@ func refreshAllPredictCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSourc
 				//	if existVal != saveValue {
 				//		sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				//		sql = fmt.Sprintf(sql, dataTableName)
-				//		_, err = to.Raw(sql, saveValue, edbInfoId, date).Exec()
+				//		err = to.Exec(sql, saveValue, edbInfoId, date).Error
 				//		if err != nil {
 				//			return err
 				//		}
@@ -335,7 +326,7 @@ func refreshAllPredictCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSourc
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println("refreshAllPredictCalculateLjzzy add Err", err.Error())
 			return
@@ -345,7 +336,7 @@ func refreshAllPredictCalculateLjzzy(to orm.TxOrmer, edbInfoId, source, subSourc
 	//确定最终值
 	var finalLast EdbInfoSearchData
 	sql = ` SELECT data_time , value FROM edb_data_predict_calculate_ljzzy WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `
-	tmpErr := to.Raw(sql, edbInfoId, latestDateStr).QueryRow(&finalLast)
+	tmpErr := to.Raw(sql, edbInfoId, latestDateStr).First(&finalLast).Error
 	if tmpErr != nil {
 		if tmpErr.Error() != utils.ErrNoRow() {
 			err = tmpErr

+ 19 - 28
models/predict_edb_data_calculate_nh.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +15,12 @@ import (
 
 // SavePredictCalculateNh 预测年化值
 func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateNh,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("reqEdbInfoId:", reqEdbInfoId)
@@ -62,12 +59,11 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		// 添加关联关系
 		{
@@ -87,7 +83,7 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -122,7 +118,7 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -144,7 +140,7 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 			return
@@ -153,7 +149,7 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 		//清空原有已经入库的数据
 		tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 		sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -176,7 +172,7 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -192,17 +188,12 @@ func SavePredictCalculateNh(reqEdbInfoId, classifyId int, edbName, frequency, un
 
 // RefreshAllPredictCalculateNh 刷新全部预测年化值数据
 func RefreshAllPredictCalculateNh(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, edbFrequency, formula string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateNh,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -212,7 +203,7 @@ func RefreshAllPredictCalculateNh(edbInfoId, source, subSource int, fromEdbInfo
 }
 
 // refreshAllPredictCalculateNh 刷新预测年化数据
-func refreshAllPredictCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateNh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_NH, subSource)
 
@@ -256,7 +247,7 @@ func refreshAllPredictCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource i
 	if lenFromDataList <= 0 {
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
 
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return
@@ -361,7 +352,7 @@ func refreshAllPredictCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource i
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 	}
 
 	// 移除不存在的日期数据
@@ -373,7 +364,7 @@ func refreshAllPredictCalculateNh(to orm.TxOrmer, edbInfoId, source, subSource i
 		removeDateStr := strings.Join(removeDateList, `","`)
 		removeDateStr = `"` + removeDateStr + `"`
 		sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-		_, err = to.Raw(sql, edbInfoId).Exec()
+		err = to.Exec(sql, edbInfoId).Error
 		if err != nil {
 			err = fmt.Errorf("删除年化指标数据失败,Err:" + err.Error())
 			return

+ 36 - 43
models/predict_edb_data_calculate_nhcc.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"math"
 	"strings"
 	"time"
@@ -13,7 +14,7 @@ import (
 
 // EdbDataPredictCalculateNhcc 拟合残差数据结构体
 type EdbDataPredictCalculateNhcc struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -26,17 +27,12 @@ type EdbDataPredictCalculateNhcc struct {
 
 // SavePredictCalculateNhcc 新增拟合残差数据
 func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, nhccDate NhccDate, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	var existItemA, existItemB *EdbInfoCalculateMapping
@@ -64,12 +60,12 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			EdbType:          2,
 			Sort:             GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE),
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//第一个指标
 		{
 			existItemA = &EdbInfoCalculateMapping{
@@ -89,12 +85,12 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemA)
+			tmpErr := to.Create(existItemA).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemA.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 
 		//第二个指标
@@ -116,12 +112,12 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
@@ -146,7 +142,7 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -191,7 +187,7 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 				//删除之前的A指标关联关系
 				sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-				_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+				err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 				if err != nil {
 					err = fmt.Errorf("删除指标A关联关系失败,Err:" + err.Error())
 					return
@@ -202,7 +198,7 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 				//删除之前的B指标关联关系
 				sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-				_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+				err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 				if err != nil {
 					err = fmt.Errorf("删除指标B关联关系失败,Err:" + err.Error())
 					return
@@ -233,12 +229,11 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 						CreateTime:                time.Now(),
 						ModifyTime:                time.Now(),
 					}
-					insertId, tmpErr := to.Insert(existItemA)
+					tmpErr := to.Create(existItemA).Error
 					if tmpErr != nil {
 						err = tmpErr
 						return
 					}
-					existItemA.EdbInfoCalculateMappingId = int(insertId)
 
 					isNeedCalculateData = true
 				}
@@ -246,7 +241,8 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				// 如果平移天数不一致的话,
 				existItemA.ModifyTime = time.Now()
 				existItemA.MoveValue = req.EdbInfoIdArr[0].MoveValue
-				_, err = to.Update(existItemA, "ModifyTime", "MoveValue")
+				//_, err = to.Update(existItemA, "ModifyTime", "MoveValue")
+				err = to.Model(existItemA).Select([]string{"ModifyTime", "MoveValue"}).Updates(existItemA).Error
 				if err != nil {
 					return
 				}
@@ -276,19 +272,19 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				insertId, tmpErr := to.Insert(existItemB)
+				tmpErr := to.Create(existItemB).Error
 				if tmpErr != nil {
 					err = tmpErr
 					return
 				}
-				existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 				isNeedCalculateData = true
 			} else if existItemB.MoveValue != req.EdbInfoIdArr[1].MoveValue {
 				// 如果平移天数不一致的话,
 				existItemB.ModifyTime = time.Now()
 				existItemB.MoveValue = req.EdbInfoIdArr[1].MoveValue
-				_, err = to.Update(existItemB, "ModifyTime", "MoveValue")
+				//_, err = to.Update(existItemB, "ModifyTime", "MoveValue")
+				err = to.Model(existItemB).Select([]string{"ModifyTime", "MoveValue"}).Updates(existItemB).Error
 				if err != nil {
 					return
 				}
@@ -301,7 +297,7 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			// 删除之前所有的指标数据
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除历史数据失败,Err:" + err.Error())
 				return
@@ -319,14 +315,12 @@ func SavePredictCalculateNhcc(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 
 // RefreshAllPredictCalculateNhcc 刷新所有 拟合残差 数据
 func RefreshAllPredictCalculateNhcc(edbInfo *EdbInfo) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllPredictCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//查询关联指标信息
@@ -391,10 +385,10 @@ func RefreshAllPredictCalculateNhcc(edbInfo *EdbInfo) (latestDateStr string, lat
 }
 
 // refreshAllPredictCalculateNhcc 刷新所有 拟合残差 数据
-func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateNhcc(to *gorm.DB, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo, existItemA, existItemB *EdbInfoCalculateMapping, nhccDate NhccDate) (latestDateStr string, latestValue float64, err error) {
 	var dataList []*EdbDataPredictCalculateNhcc
 	sql := ` SELECT * FROM edb_data_predict_calculate_nhcc WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return
 	}
@@ -510,7 +504,8 @@ func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 			// 如果有的话,还需要判断值是否一致,一致则不处理,不一致则修改
 			if existData.Value != val {
 				existData.Value = val
-				_, err = to.Update(existData, "Value")
+				//_, err = to.Update(existData, "Value")
+				err = to.Model(existData).Select([]string{"Value"}).Updates(existData).Error
 				if err != nil {
 					return
 				}
@@ -529,7 +524,7 @@ func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 			//如果拼接指标变更了,那么需要删除所有的指标数据
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, tableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的拟合残差指标数据失败,Err:" + err.Error())
 				return
@@ -545,7 +540,7 @@ func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 			tmpAddDataList = append(tmpAddDataList, v)
 			i++
 			if i >= 500 {
-				_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+				err = to.CreateInBatches(tmpAddDataList, 500).Error
 				if err != nil {
 					return
 				}
@@ -555,7 +550,7 @@ func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 		}
 
 		if len(tmpAddDataList) > 0 {
-			_, err = to.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+			err = to.CreateInBatches(tmpAddDataList, 500).Error
 			if err != nil {
 				return
 			}
@@ -565,7 +560,7 @@ func refreshAllPredictCalculateNhcc(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 	//确定最终值
 	var finalLast EdbInfoSearchData
 	sql = ` SELECT data_time , value FROM edb_data_predict_calculate_nhcc WHERE edb_info_id=? and data_time<=? ORDER BY data_time DESC `
-	tmpErr := to.Raw(sql, edbInfo.EdbInfoId, latestDateStr).QueryRow(&finalLast)
+	tmpErr := to.Raw(sql, edbInfo.EdbInfoId, latestDateStr).First(&finalLast).Error
 	if tmpErr != nil {
 		if tmpErr.Error() != utils.ErrNoRow() {
 			err = tmpErr
@@ -615,14 +610,12 @@ func CalculatePredictComputeCorrelation(req *EdbInfoCalculateBatchSaveReq, first
 		}
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateNhcc,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	// 获取相关数据

+ 19 - 29
models/predict_edb_data_calculate_nszydbpjjs.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -13,17 +14,12 @@ import (
 
 // SavePredictCalculateNszydpjjs 新增/编辑 预测 N数值移动平均计算指标
 func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateNszydpjjs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -68,12 +64,11 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		// 添加关联关系
 		{
@@ -93,7 +88,7 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -130,7 +125,7 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 		edbInfo.ClassifyId = classifyId
 		edbInfo.CalculateFormula = formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -155,7 +150,7 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 		if count <= 0 {
 			// 需要删除原先的 计算指标关联的,基础指标的关联关系
 			sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				return
 			}
@@ -178,7 +173,7 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				_, err = to.Insert(calculateMappingItem)
+				err = to.Create(calculateMappingItem).Error
 				if err != nil {
 					return
 				}
@@ -189,7 +184,7 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_NSZYDPJJS, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -202,17 +197,12 @@ func SavePredictCalculateNszydpjjs(reqEdbInfoId, classifyId int, edbName, freque
 
 // RefreshAllPredictCalculateNszydpjjs 刷新所有 N数值移动平均计算指标 数据
 func RefreshAllPredictCalculateNszydpjjs(edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllPredictCalculateNszydpjjs,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -222,7 +212,7 @@ func RefreshAllPredictCalculateNszydpjjs(edbInfoId, source, subSource, formulaIn
 }
 
 // refreshAllPredictCalculateNszydpjjs 更新全部N数值移动平均计算
-func refreshAllPredictCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateNszydpjjs(to *gorm.DB, edbInfoId, source, subSource, formulaInt int, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	fmt.Println(edbInfoIdStr)
 	fmt.Println("refreshAllCalculateNszydpjjs startDate:", startDate)
@@ -234,7 +224,7 @@ func refreshAllPredictCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subS
 
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 
 	existDataMap := make(map[string]*EdbData)
 	removeDataTimeMap := make(map[string]int) //需要移除的日期数据
@@ -334,7 +324,7 @@ func refreshAllPredictCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subS
 			if existStr != valStr {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, valStr, edbInfoId, av).Exec()
+				err = to.Exec(sql, valStr, edbInfoId, av).Error
 				if err != nil {
 					return
 				}
@@ -351,7 +341,7 @@ func refreshAllPredictCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subS
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println("refreshAllPredictCalculateNszydpjjs add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -363,7 +353,7 @@ func refreshAllPredictCalculateNszydpjjs(to orm.TxOrmer, edbInfoId, source, subS
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
 		//utils.FileLog.Info("addSql:" + addSql)
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}

+ 23 - 37
models/predict_edb_data_calculate_percentile.go

@@ -3,9 +3,11 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"reflect"
 	"strconv"
@@ -23,17 +25,12 @@ func (obj PredictPercentile) Add(params BatchSaveCalculateBatchParams) (edbInfo
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -72,12 +69,11 @@ func (obj PredictPercentile) Add(params BatchSaveCalculateBatchParams) (edbInfo
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -95,7 +91,7 @@ func (obj PredictPercentile) Add(params BatchSaveCalculateBatchParams) (edbInfo
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -116,17 +112,12 @@ func (obj PredictPercentile) Edit(params BatchSaveCalculateBatchParams) (latestD
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -149,7 +140,7 @@ func (obj PredictPercentile) Edit(params BatchSaveCalculateBatchParams) (latestD
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -177,14 +168,14 @@ func (obj PredictPercentile) Edit(params BatchSaveCalculateBatchParams) (latestD
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -207,7 +198,7 @@ func (obj PredictPercentile) Edit(params BatchSaveCalculateBatchParams) (latestD
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -231,17 +222,12 @@ func (obj PredictPercentile) Refresh(params RefreshParams) (latestDateStr string
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -261,7 +247,7 @@ func (obj PredictPercentile) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_PERCENTILE
 }
 
-func (obj PredictPercentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
+func (obj PredictPercentile) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -282,7 +268,7 @@ func (obj PredictPercentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -315,7 +301,7 @@ func (obj PredictPercentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -343,7 +329,7 @@ func (obj PredictPercentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -354,7 +340,7 @@ func (obj PredictPercentile) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbIn
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 21 - 35
models/predict_edb_data_calculate_qjjs.go

@@ -3,10 +3,12 @@ package models
 import (
 	"encoding/json"
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
@@ -22,17 +24,12 @@ func (obj PredictCalculateRangeAnalysis) Add(params BatchSaveCalculateBatchParam
 	sysUserId := params.SysUserId
 	sysUserRealName := params.SysUserRealName
 	//req *EdbInfoCalculateBatchSaveReq, edbCode, uniqueCode string, sysUserId int, sysUserRealName string
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId > 0 {
@@ -59,12 +56,11 @@ func (obj PredictCalculateRangeAnalysis) Add(params BatchSaveCalculateBatchParam
 	edbInfo.UnitEn = req.Unit
 	edbInfo.EdbType = obj.GetEdbType()
 	edbInfo.EdbInfoType = 1
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	fromEdbInfo, e := GetEdbInfoById(req.FromEdbInfoId)
@@ -89,7 +85,7 @@ func (obj PredictCalculateRangeAnalysis) Add(params BatchSaveCalculateBatchParam
 	calculateMappingItem.SourceName = edbInfo.SourceName
 	calculateMappingItem.FromSubSource = edbInfo.SubSource
 
-	_, err = to.Insert(calculateMappingItem)
+	err = to.Create(calculateMappingItem).Error
 	if err != nil {
 		return
 	}
@@ -103,17 +99,12 @@ func (obj PredictCalculateRangeAnalysis) Add(params BatchSaveCalculateBatchParam
 func (obj PredictCalculateRangeAnalysis) Edit(params BatchSaveCalculateBatchParams) (latestDateStr string, latestValue float64, err error, errMsg string) {
 	edbInfo := params.EdbInfo
 	req := params.Req
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("EditCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -135,14 +126,14 @@ func (obj PredictCalculateRangeAnalysis) Edit(params BatchSaveCalculateBatchPara
 		edbInfo.EdbNameSource = req.EdbName
 	}
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 		return
@@ -150,7 +141,7 @@ func (obj PredictCalculateRangeAnalysis) Edit(params BatchSaveCalculateBatchPara
 	//清空原有数据
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -177,7 +168,7 @@ func (obj PredictCalculateRangeAnalysis) Edit(params BatchSaveCalculateBatchPara
 	calculateMappingItem.SourceName = edbInfo.SourceName
 	calculateMappingItem.FromSubSource = edbInfo.SubSource
 
-	_, err = to.Insert(calculateMappingItem)
+	err = to.Create(calculateMappingItem).Error
 	if err != nil {
 		return
 	}
@@ -206,17 +197,12 @@ func (obj PredictCalculateRangeAnalysis) Refresh(params RefreshParams) (latestDa
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateRangeAnalysis,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -226,7 +212,7 @@ func (obj PredictCalculateRangeAnalysis) Refresh(params RefreshParams) (latestDa
 	return
 }
 
-func (obj PredictCalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, calculateFormula string) (latestDateStr string, latestValue float64, err error, errMsg string) {
+func (obj PredictCalculateRangeAnalysis) refresh(to *gorm.DB, edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, calculateFormula string) (latestDateStr string, latestValue float64, err error, errMsg string) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	tableName := GetEdbDataTableName(obj.GetSource(), utils.DATA_SUB_SOURCE_EDB)
 
@@ -295,7 +281,7 @@ func (obj PredictCalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, sour
 
 		if isAdd {
 			addSql = strings.TrimRight(addSql, ",")
-			_, err = to.Raw(addSql).Exec()
+			err = to.Exec(addSql).Error
 		}
 
 		// 移除不存在的日期数据
@@ -307,7 +293,7 @@ func (obj PredictCalculateRangeAnalysis) refresh(to orm.TxOrmer, edbInfoId, sour
 			removeDateStr := strings.Join(removeDateList, `","`)
 			removeDateStr = `"` + removeDateStr + `"`
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
-			_, err = to.Raw(sql, edbInfoId).Exec()
+			err = to.Exec(sql, edbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除扩散指数指标数据失败,Err:" + err.Error())
 				return

+ 22 - 37
models/predict_edb_data_calculate_standard_deviation.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -22,17 +23,12 @@ func (obj PredictStandardDeviation) Add(params BatchSaveCalculateBatchParams) (e
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -71,12 +67,11 @@ func (obj PredictStandardDeviation) Add(params BatchSaveCalculateBatchParams) (e
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -94,7 +89,7 @@ func (obj PredictStandardDeviation) Add(params BatchSaveCalculateBatchParams) (e
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -127,17 +122,12 @@ func (obj PredictStandardDeviation) Edit(params BatchSaveCalculateBatchParams) (
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -160,7 +150,7 @@ func (obj PredictStandardDeviation) Edit(params BatchSaveCalculateBatchParams) (
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -188,14 +178,14 @@ func (obj PredictStandardDeviation) Edit(params BatchSaveCalculateBatchParams) (
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -218,7 +208,7 @@ func (obj PredictStandardDeviation) Edit(params BatchSaveCalculateBatchParams) (
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -242,17 +232,12 @@ func (obj PredictStandardDeviation) Refresh(params RefreshParams) (latestDateStr
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -272,7 +257,7 @@ func (obj PredictStandardDeviation) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_STANDARD_DEVIATION
 }
 
-func (obj PredictStandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
+func (obj PredictStandardDeviation) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -293,7 +278,7 @@ func (obj PredictStandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -326,7 +311,7 @@ func (obj PredictStandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -354,7 +339,7 @@ func (obj PredictStandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -365,7 +350,7 @@ func (obj PredictStandardDeviation) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 31 - 52
models/predict_edb_data_calculate_tbz.go

@@ -2,10 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
+	"gorm.io/gorm"
 	"reflect"
 	"strconv"
 	"strings"
@@ -22,17 +23,12 @@ func (obj PredictTb) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInfo
 	fromEdbInfo := params.FromEdbInfo
 	edbCode := params.EdbCode
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -71,12 +67,11 @@ func (obj PredictTb) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInfo
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -94,7 +89,7 @@ func (obj PredictTb) Add(params BatchSaveCalculateBatchParams) (edbInfo *EdbInfo
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -129,17 +124,12 @@ func (obj PredictTb) Edit(params BatchSaveCalculateBatchParams) (latestDateStr s
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -157,7 +147,7 @@ func (obj PredictTb) Edit(params BatchSaveCalculateBatchParams) (latestDateStr s
 	edbInfo.Frequency = req.Frequency
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -179,14 +169,14 @@ func (obj PredictTb) Edit(params BatchSaveCalculateBatchParams) (latestDateStr s
 	}
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	// 删除该指标所有的同比数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -209,7 +199,7 @@ func (obj PredictTb) Edit(params BatchSaveCalculateBatchParams) (latestDateStr s
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -233,17 +223,12 @@ func (obj PredictTb) Refresh(params RefreshParams) (latestDateStr string, latest
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -263,7 +248,7 @@ func (obj PredictTb) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_TBZ
 }
 
-func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
+func (obj PredictTb) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 
@@ -299,7 +284,7 @@ func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbC
 
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -340,7 +325,7 @@ func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbC
 			if existStr != val {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, val, edbInfoId, currentDateStr).Exec()
+				err = to.Exec(sql, val, edbInfoId, currentDateStr).Error
 				if err != nil {
 					return
 				}
@@ -366,7 +351,7 @@ func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbC
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -378,7 +363,7 @@ func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbC
 	// 批量插入
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}
@@ -401,17 +386,12 @@ func (obj PredictTb) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbC
 
 // SavePredictCalculateTbz 新增/编辑 预测同比指标
 func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateTbz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -449,12 +429,11 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		// 添加关联关系
 		{
@@ -474,7 +453,7 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -502,7 +481,7 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		edbInfo.Unit = unit
 		edbInfo.ClassifyId = classifyId
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -524,7 +503,7 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		}
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -533,7 +512,7 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		dataTableName := GetEdbDataTableName(utils.DATA_SOURCE_PREDICT_CALCULATE_TBZ, utils.DATA_SUB_SOURCE_EDB)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -725,7 +704,7 @@ func SavePredictCalculateTbz(reqEdbInfoId, classifyId int, edbName, frequency, u
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}

+ 21 - 32
models/predict_edb_data_calculate_tcz.go

@@ -2,9 +2,9 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,17 +13,12 @@ import (
 
 // SavePredictCalculateTcz 同差值
 func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, unit, formula string, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error, errMsg string) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("AddCalculateTcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	fmt.Println("reqEdbInfoId:", reqEdbInfoId)
@@ -62,12 +57,11 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 			LatestValue:      0,
 			ChartImage:       "",
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
 
 		// 添加关联关系
 		{
@@ -87,7 +81,7 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -121,7 +115,7 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		edbInfo.Frequency = frequency
 		edbInfo.ClassifyId = classifyId
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -144,7 +138,7 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 
 		//删除,计算指标关联的,基础指标的关联关系
 		sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-		_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(sql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -154,7 +148,7 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 		fmt.Println("dataTableName:", dataTableName)
 		deleteSql := ` DELETE FROM %s WHERE edb_info_id=? `
 		deleteSql = fmt.Sprintf(deleteSql, dataTableName)
-		_, err = to.Raw(deleteSql, edbInfo.EdbInfoId).Exec()
+		err = to.Exec(deleteSql, edbInfo.EdbInfoId).Error
 		if err != nil {
 			return
 		}
@@ -349,7 +343,7 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}
@@ -359,17 +353,12 @@ func SavePredictCalculateTcz(reqEdbInfoId, classifyId int, edbName, frequency, u
 
 // RefreshAllPredictCalculateTcz 刷新全部同差值数据
 func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("RefreshAllCalculateTcz,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -397,7 +386,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 	dataTableName := GetEdbDataTableName(source, subSource)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -452,7 +441,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 					if existStr != val {
 						sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 						sql = fmt.Sprintf(sql, dataTableName)
-						_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+						err = to.Exec(sql, val, edbInfoId, av).Error
 						if err != nil {
 							return
 						}
@@ -495,7 +484,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 								if existStr != val {
 									sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 									sql = fmt.Sprintf(sql, dataTableName)
-									_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+									err = to.Exec(sql, val, edbInfoId, av).Error
 									if err != nil {
 										return
 									}
@@ -535,7 +524,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 									if existStr != val {
 										sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 										sql = fmt.Sprintf(sql, dataTableName)
-										_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+										err = to.Exec(sql, val, edbInfoId, av).Error
 										if err != nil {
 											return
 										}
@@ -576,7 +565,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 							if existStr != val {
 								sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 								sql = fmt.Sprintf(sql, dataTableName)
-								_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+								err = to.Exec(sql, val, edbInfoId, av).Error
 								if err != nil {
 									return
 								}
@@ -619,7 +608,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 								if existStr != val {
 									sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 									sql = fmt.Sprintf(sql, dataTableName)
-									_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+									err = to.Exec(sql, val, edbInfoId, av).Error
 									if err != nil {
 										return
 									}
@@ -658,7 +647,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 									if existStr != val {
 										sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 										sql = fmt.Sprintf(sql, dataTableName)
-										_, err = o.Raw(sql, val, edbInfoId, av).Exec()
+										err = to.Exec(sql, val, edbInfoId, av).Error
 										if err != nil {
 											return
 										}
@@ -676,7 +665,7 @@ func RefreshAllPredictCalculateTcz(edbInfoId, source, subSource int, fromEdbInfo
 	}
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = o.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}

+ 20 - 29
models/predict_edb_data_calculate_time_shift.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"strconv"
 	"strings"
@@ -13,18 +15,12 @@ import (
 
 // SavePredictCalculateTimeShift 时间移位
 func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName, lang string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
-
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateTimeShift,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	if req.EdbInfoId <= 0 {
@@ -50,12 +46,12 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 		edbInfo.EdbNameEn = req.EdbName
 		edbInfo.UnitEn = req.Unit
 		edbInfo.Sort = GetAddEdbMaxSortByClassifyId(req.ClassifyId, utils.PREDICT_EDB_INFO_TYPE)
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		{
 			calculateMappingItem := new(EdbInfoCalculateMapping)
@@ -72,7 +68,7 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 			calculateMappingItem.FromTag = ""
 			calculateMappingItem.Source = edbInfo.Source
 			calculateMappingItem.SourceName = edbInfo.SourceName
-			_, err = to.Insert(calculateMappingItem)
+			err = to.Create(calculateMappingItem).Error
 			if err != nil {
 				return
 			}
@@ -102,7 +98,7 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 		edbInfo.MoveFrequency = req.MoveFrequency
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "MoveType", "MoveFrequency", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -125,7 +121,7 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 			if count <= 0 {
 				//删除,计算指标关联的,基础指标的关联关系
 				sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-				_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+				err = to.Exec(sql, edbInfo.EdbInfoId).Error
 				if err != nil {
 					err = errors.New("删除计算指标关联关系失败,Err:" + err.Error())
 					return
@@ -148,7 +144,7 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 						CreateTime:                time.Now(),
 						ModifyTime:                time.Now(),
 					}
-					_, err = to.Insert(calculateMappingItem)
+					err = to.Create(calculateMappingItem).Error
 					if err != nil {
 						return
 					}
@@ -157,7 +153,7 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 
 			//清空原有数据
 			sql := ` DELETE FROM edb_data_predict_calculate_time_shift WHERE edb_info_id = ? `
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				return
 			}
@@ -176,17 +172,12 @@ func SavePredictCalculateTimeShift(req *EdbInfoCalculateBatchSaveReq, fromEdbInf
 
 // refreshAllPredictCalculateTimeShift 刷新所有时间移位数据
 func RefreshAllPredictCalculateTimeShift(edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("refreshAllPredictCalculateTimeShift,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -196,7 +187,7 @@ func RefreshAllPredictCalculateTimeShift(edbInfoId, source, subSource, formulaIn
 }
 
 // refreshAllPredictCalculateTimeShift 刷新所有时间移位数据
-func refreshAllPredictCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateTimeShift(to *gorm.DB, edbInfoId, source, subSource, formulaInt, moveType int, fromEdbInfo *EdbInfo, edbCode, startDate, endDate, moveFrequency string) (latestDateStr string, latestValue float64, err error) {
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
 	dataList, err := GetPredictEdbDataListAllByStartDate(fromEdbInfo, 0, startDate)
 	if err != nil {
@@ -238,7 +229,7 @@ func refreshAllPredictCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subS
 	fmt.Println("dataTableName:", dataTableName)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -281,7 +272,7 @@ func refreshAllPredictCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subS
 				if existStr != valStr {
 					sql = ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 					sql = fmt.Sprintf(sql, dataTableName)
-					_, err = to.Raw(sql, valStr, edbInfoId, newDate.Format(utils.FormatDate)).Exec()
+					err = to.Exec(sql, valStr, edbInfoId, newDate.Format(utils.FormatDate)).Error
 					if err != nil {
 						return
 					}
@@ -296,7 +287,7 @@ func refreshAllPredictCalculateTimeShift(to orm.TxOrmer, edbInfoId, source, subS
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			return
 		}

+ 27 - 35
models/predict_edb_data_calculate_zjpj.go

@@ -2,16 +2,17 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
 	"strings"
 	"time"
 )
 
 // EdbDataPredictCalculateZjpj 直接拼接数据结构体
 type EdbDataPredictCalculateZjpj struct {
-	EdbDataId     int `orm:"column(edb_data_id);pk"`
+	EdbDataId     int `gorm:"primaryKey;autoIncrement;column:edb_data_id"`
 	EdbInfoId     int
 	EdbCode       string
 	DataTime      string
@@ -24,17 +25,12 @@ type EdbDataPredictCalculateZjpj struct {
 
 // SavePredictCalculateZjpj 新增直接拼接数据
 func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, secondEdbInfo *EdbInfo, edbCode, uniqueCode string, sysUserId int, sysUserRealName string) (edbInfo *EdbInfo, latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("SavePredictCalculateZjpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	var existItemA, existItemB *EdbInfoCalculateMapping
@@ -59,12 +55,12 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			CalculateFormula: req.Formula,
 			EdbType:          2,
 		}
-		newEdbInfoId, tmpErr := to.Insert(edbInfo)
+		tmpErr := to.Create(edbInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		edbInfo.EdbInfoId = int(newEdbInfoId)
+
 		//关联关系
 		//第一个指标
 		{
@@ -84,12 +80,12 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemA)
+			tmpErr := to.Create(existItemA).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemA.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 
 		//第二个指标
@@ -110,12 +106,12 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
+
 		}
 	} else {
 		edbInfo, err = GetEdbInfoById(req.EdbInfoId)
@@ -135,7 +131,7 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 		edbInfo.ClassifyId = req.ClassifyId
 		edbInfo.CalculateFormula = req.Formula
 		edbInfo.ModifyTime = time.Now()
-		_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime")
+		err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime"}).Updates(edbInfo).Error
 		if err != nil {
 			return
 		}
@@ -182,7 +178,7 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			if existItemA.FromEdbInfoId != firstEdbInfo.EdbInfoId {
 				//删除之前的A指标关联关系
 				sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-				_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Exec()
+				err = to.Exec(sql, edbInfo.EdbInfoId, existItemA.FromEdbInfoId).Error
 				if err != nil {
 					err = fmt.Errorf("删除拼接日期之前的指标关联关系失败,Err:" + err.Error())
 					return
@@ -196,7 +192,7 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			if existItemB.FromEdbInfoId != secondEdbInfo.EdbInfoId {
 				//删除之前的B指标关联关系
 				sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? and from_edb_info_id = ?`
-				_, err = to.Raw(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Exec()
+				err = to.Exec(sql, edbInfo.EdbInfoId, existItemB.FromEdbInfoId).Error
 				if err != nil {
 					err = fmt.Errorf("删除拼接日期之后的指标关联关系失败,Err:" + err.Error())
 					return
@@ -222,12 +218,11 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 					CreateTime:                time.Now(),
 					ModifyTime:                time.Now(),
 				}
-				insertId, tmpErr := to.Insert(existItemA)
+				tmpErr := to.Create(existItemA).Error
 				if tmpErr != nil {
 					err = tmpErr
 					return
 				}
-				existItemA.EdbInfoCalculateMappingId = int(insertId)
 
 				isNeedCalculateData = true
 			}
@@ -251,12 +246,11 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 				CreateTime:                time.Now(),
 				ModifyTime:                time.Now(),
 			}
-			insertId, tmpErr := to.Insert(existItemB)
+			tmpErr := to.Create(existItemB).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
 			}
-			existItemB.EdbInfoCalculateMappingId = int(insertId)
 
 			isNeedCalculateData = true
 		}
@@ -265,7 +259,7 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 			// 删除之前所有的指标数据
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? `, tableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除历史数据失败,Err:" + err.Error())
 				return
@@ -283,14 +277,12 @@ func SavePredictCalculateZjpj(req *EdbInfoCalculateBatchSaveReq, firstEdbInfo, s
 
 // RefreshAllPredictCalculateZjpj 刷新所有 直接拼接 数据
 func RefreshAllPredictCalculateZjpj(edbInfo *EdbInfo) (latestDateStr string, latestValue float64, err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			fmt.Println("refreshAllPredictCalculateZjpj,Err:" + err.Error())
-			_ = to.Rollback()
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	//查询关联指标信息
@@ -339,11 +331,11 @@ func RefreshAllPredictCalculateZjpj(edbInfo *EdbInfo) (latestDateStr string, lat
 }
 
 // refreshAllPredictCalculateZjpj 刷新所有 直接拼接 数据
-func refreshAllPredictCalculateZjpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo) (latestDateStr string, latestValue float64, err error) {
+func refreshAllPredictCalculateZjpj(to *gorm.DB, edbInfo, firstEdbInfo, secondEdbInfo *EdbInfo) (latestDateStr string, latestValue float64, err error) {
 	//查询当前指标现有的数据
 	var dataList []*EdbDataPredictCalculateZjpj
 	sql := ` SELECT * FROM edb_data_predict_calculate_zjpj WHERE edb_info_id=? ORDER BY data_time DESC `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).QueryRows(&dataList)
+	err = to.Raw(sql, edbInfo.EdbInfoId).Scan(&dataList).Error
 	if err != nil {
 		return
 	}
@@ -390,7 +382,7 @@ func refreshAllPredictCalculateZjpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 				if edbData.Value != v.Value {
 					//更新指标数据
 					edbData.Value = v.Value
-					_, _ = to.Update(edbData, "Value")
+					_ = to.Model(edbData).Select([]string{"Value"}).Updates(edbData).Error
 				}
 			} else {
 				//时间戳
@@ -443,7 +435,7 @@ func refreshAllPredictCalculateZjpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 					//更新指标数据
 					edbData.Value = v.Value
 					edbData.ModifyTime = time.Now()
-					_, tmpErr := to.Update(edbData, "Value", "ModifyTime")
+					tmpErr := to.Model(edbData).Select([]string{"Value", "ModifyTime"}).Updates(edbData).Error
 					if tmpErr != nil {
 						fmt.Println("tmpErr:", tmpErr)
 						err = tmpErr
@@ -483,7 +475,7 @@ func refreshAllPredictCalculateZjpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 			tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (%s) `, tableName, removeDateStr)
 
-			_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId).Error
 			if err != nil {
 				err = fmt.Errorf("删除不存在的直接拼接指标数据失败,Err:" + err.Error())
 				return
@@ -493,7 +485,7 @@ func refreshAllPredictCalculateZjpj(to orm.TxOrmer, edbInfo, firstEdbInfo, secon
 
 	//数据入库
 	if len(addDataList) > 0 {
-		_, tmpErr := to.InsertMulti(len(addDataList), addDataList)
+		tmpErr := to.CreateInBatches(addDataList, 500).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return

+ 23 - 37
models/predict_edb_data_calculate_zsxy.go

@@ -2,9 +2,11 @@ package models
 
 import (
 	"errors"
+	"eta_gn/eta_index_lib/global"
 	"eta_gn/eta_index_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
+
 	"github.com/shopspring/decimal"
 	"reflect"
 	"strconv"
@@ -28,17 +30,12 @@ func (obj PredictExponentialSmoothing) Add(params BatchSaveCalculateBatchParams)
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Add,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -76,12 +73,11 @@ func (obj PredictExponentialSmoothing) Add(params BatchSaveCalculateBatchParams)
 		Calendar:         "",
 	}
 
-	newEdbInfoId, tmpErr := to.Insert(edbInfo)
+	tmpErr := to.Create(edbInfo).Error
 	if tmpErr != nil {
 		err = tmpErr
 		return
 	}
-	edbInfo.EdbInfoId = int(newEdbInfoId)
 
 	//关联关系
 	{
@@ -99,7 +95,7 @@ func (obj PredictExponentialSmoothing) Add(params BatchSaveCalculateBatchParams)
 		calculateMappingItem.FromTag = ""
 		calculateMappingItem.Source = edbInfo.Source
 		calculateMappingItem.SourceName = edbInfo.SourceName
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -119,17 +115,12 @@ func (obj PredictExponentialSmoothing) Edit(params BatchSaveCalculateBatchParams
 	latestDateStr = edbInfo.LatestDate
 	latestValue = edbInfo.LatestValue
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Edit,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 	tableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
@@ -152,7 +143,7 @@ func (obj PredictExponentialSmoothing) Edit(params BatchSaveCalculateBatchParams
 	edbInfo.ClassifyId = req.ClassifyId
 	edbInfo.CalculateFormula = req.Formula
 	edbInfo.ModifyTime = time.Now()
-	_, err = to.Update(edbInfo, "EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn")
+	err = to.Model(edbInfo).Select([]string{"EdbName", "EdbNameSource", "Frequency", "Unit", "ClassifyId", "CalculateFormula", "ModifyTime", "EdbNameEn", "UnitEn"}).Updates(edbInfo).Error
 	if err != nil {
 		return
 	}
@@ -178,14 +169,14 @@ func (obj PredictExponentialSmoothing) Edit(params BatchSaveCalculateBatchParams
 
 	//删除,计算指标关联的,基础指标的关联关系
 	sql := ` DELETE FROM edb_info_calculate_mapping WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
 
 	//清空原有数据
 	sql = ` DELETE FROM ` + tableName + ` WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbInfo.EdbInfoId).Exec()
+	err = to.Exec(sql, edbInfo.EdbInfoId).Error
 	if err != nil {
 		return
 	}
@@ -208,7 +199,7 @@ func (obj PredictExponentialSmoothing) Edit(params BatchSaveCalculateBatchParams
 			CreateTime:                time.Now(),
 			ModifyTime:                time.Now(),
 		}
-		_, err = to.Insert(calculateMappingItem)
+		err = to.Create(calculateMappingItem).Error
 		if err != nil {
 			return
 		}
@@ -231,17 +222,12 @@ func (obj PredictExponentialSmoothing) Refresh(params RefreshParams) (latestDate
 		return
 	}
 
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := global.DEFAULT_DmSQL.Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
-			fmt.Println(reflect.TypeOf(obj).Name(), ";Refresh,Err:"+err.Error())
+			to.Rollback()
 		} else {
-			_ = to.Commit()
+			to.Commit()
 		}
 	}()
 
@@ -260,7 +246,7 @@ func (obj PredictExponentialSmoothing) GetSourceName() string {
 	return utils.DATA_SOURCE_NAME_PREDICT_CALCULATE_ZSXY
 }
 
-func (obj PredictExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
+func (obj PredictExponentialSmoothing) refresh(to *gorm.DB, edbInfo, fromEdbInfo *EdbInfo, edbCode, startDate string) (latestDateStr string, latestValue float64, err error, errMsg string) {
 	edbInfoId := edbInfo.EdbInfoId
 	dataTableName := GetEdbDataTableName(edbInfo.Source, edbInfo.SubSource)
 	edbInfoIdStr := strconv.Itoa(edbInfoId)
@@ -275,7 +261,7 @@ func (obj PredictExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbI
 	existDataList := make([]*EdbData, 0)
 	sql := `SELECT * FROM %s WHERE edb_info_id=? `
 	sql = fmt.Sprintf(sql, dataTableName)
-	_, err = to.Raw(sql, edbInfoId).QueryRows(&existDataList)
+	err = to.Raw(sql, edbInfoId).Scan(&existDataList).Error
 	if err != nil {
 		return
 	}
@@ -308,7 +294,7 @@ func (obj PredictExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbI
 			if existVal != saveValue {
 				sql := ` UPDATE %s SET value=?,modify_time=NOW() WHERE edb_info_id=? AND data_time=? `
 				sql = fmt.Sprintf(sql, dataTableName)
-				_, err = to.Raw(sql, saveValue, edbInfoId, currDateStr).Exec()
+				err = to.Exec(sql, saveValue, edbInfoId, currDateStr).Error
 				if err != nil {
 					return
 				}
@@ -336,7 +322,7 @@ func (obj PredictExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbI
 		removeNum := len(removeDateList)
 		if removeNum > 0 {
 			sql := fmt.Sprintf(` DELETE FROM %s WHERE edb_info_id = ? and data_time in (`+utils.GetOrmInReplace(removeNum)+`) `, dataTableName)
-			_, err = to.Raw(sql, edbInfo.EdbInfoId, removeDateList).Exec()
+			err = to.Exec(sql, edbInfo.EdbInfoId, removeDateList).Error
 			if err != nil {
 				fmt.Println(reflect.TypeOf(obj).Name(), " add data ;delete Err", err.Error())
 				err = fmt.Errorf("删除不存在的指标数据失败,Err:" + err.Error())
@@ -347,7 +333,7 @@ func (obj PredictExponentialSmoothing) refresh(to orm.TxOrmer, edbInfo, fromEdbI
 
 	if isAdd {
 		addSql = strings.TrimRight(addSql, ",")
-		_, err = to.Raw(addSql).Exec()
+		err = to.Exec(addSql).Error
 		if err != nil {
 			fmt.Println(reflect.TypeOf(obj).Name(), " add data Err", err.Error())
 			return

+ 4 - 4
models/predict_edb_rule_data.go

@@ -1,7 +1,7 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_index_lib/global"
 	"time"
 )
 
@@ -19,7 +19,7 @@ type PredictEdbRuleData struct {
 
 // PredictEdbRuleDataItem 预测指标,动态规则的计算数据
 type PredictEdbRuleDataItem struct {
-	PredictEdbRuleDataId int `orm:"column(predict_edb_rule_data_id);pk"`
+	PredictEdbRuleDataId int `gorm:"primaryKey;autoIncrement;column:predict_edb_rule_data_id"`
 	EdbInfoId            int
 	ConfigId             int
 	DataTime             string
@@ -31,7 +31,7 @@ type PredictEdbRuleDataItem struct {
 
 // GetPredictEdbRuleDataItemList 根据基础预测指标id集合 获取 所有的普通指标列表数据
 func GetPredictEdbRuleDataItemList(edbInfoId, configId int, startDate, endDate string) (list []*PredictEdbRuleDataItem, err error) {
-	o := orm.NewOrm()
+
 	var pars []interface{}
 	sql := ` SELECT * FROM predict_edb_rule_data WHERE edb_info_id = ? AND config_id = ? `
 	if startDate != "" {
@@ -43,6 +43,6 @@ func GetPredictEdbRuleDataItemList(edbInfoId, configId int, startDate, endDate s
 		pars = append(pars, endDate)
 	}
 	sql += ` ORDER BY data_time ASC `
-	_, err = o.Raw(sql, edbInfoId, configId, pars).QueryRows(&list)
+	err = global.DEFAULT_DmSQL.Raw(sql, edbInfoId, configId, pars).Scan(&list).Error
 	return
 }

+ 1 - 1
services/base_from_jiayue.go

@@ -228,7 +228,7 @@ func SyncJiaYueNewIndex(item models.BridgeJiaYueIndexAndData, menus []models.Bri
 		utils.FileLog.Info(fmt.Sprintf("指标来源有误, sourceId: %d", sourceId))
 		return
 	}
-	sourceTableName := edbSource.TableName
+	sourceTableName := edbSource.TableName1
 	if sourceTableName == "" {
 		utils.FileLog.Info(fmt.Sprintf("指标数据表有误, 忽略同步, sourceId: %d", sourceId))
 		return