Ver Fonte

兼容达梦

317699326@qq.com há 3 semanas atrás
pai
commit
4c60d5430f
45 ficheiros alterados com 829 adições e 569 exclusões
  1. 16 0
      global/global.go
  2. 137 0
      global/initDb.go
  3. 6 2
      go.mod
  4. 14 4
      go.sum
  5. 5 3
      models/aimod/file_upload_record.go
  6. 5 5
      models/business_conf.go
  7. 5 5
      models/classify.go
  8. 4 3
      models/classify_menu.go
  9. 29 19
      models/classify_menu_relation.go
  10. 11 9
      models/data_manage/base_from_business.go
  11. 26 16
      models/data_manage/base_from_eia_stero.go
  12. 23 14
      models/data_manage/base_from_mysteel_chemical_index.go
  13. 110 108
      models/data_manage/base_from_trade_index.go
  14. 5 5
      models/data_manage/chart_classify.go
  15. 18 19
      models/data_manage/chart_edb_mapping.go
  16. 13 14
      models/data_manage/chart_info.go
  17. 4 2
      models/data_manage/com_trade_country.go
  18. 6 5
      models/data_manage/com_trade_data.go
  19. 9 9
      models/data_manage/com_trade_index.go
  20. 3 3
      models/data_manage/edb_classify.go
  21. 3 3
      models/data_manage/edb_data.go
  22. 20 11
      models/data_manage/edb_data_wind.go
  23. 31 31
      models/data_manage/edb_info.go
  24. 6 4
      models/data_manage/edb_info_calculate_mapping.go
  25. 5 5
      models/data_manage/edb_source.go
  26. 31 31
      models/data_manage/eta_business_chart_permission.go
  27. 3 3
      models/data_manage/variety.go
  28. 3 3
      models/data_manage/variety_edb_info.go
  29. 4 2
      models/document_manage_model/outside_report.go
  30. 5 2
      models/document_manage_model/outside_report_attachment.go
  31. 29 29
      models/en_classify_permission.go
  32. 31 31
      models/english_report.go
  33. 6 3
      models/permission.go
  34. 55 54
      models/report.go
  35. 19 9
      models/report/report_chapter_permission_mapping.go
  36. 5 5
      models/report_chapter.go
  37. 4 3
      models/report_state_record.go
  38. 10 9
      models/resource.go
  39. 14 13
      models/sandbox/sandbox.go
  40. 30 28
      models/sandbox/sandbox_classify.go
  41. 23 24
      models/smart_report.go
  42. 16 16
      models/smart_resource.go
  43. 5 5
      models/system/sys_user.go
  44. 7 0
      utils/config.go
  45. 15 0
      utils/constants.go

+ 16 - 0
global/global.go

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

+ 137 - 0
global/initDb.go

@@ -0,0 +1,137 @@
+package global
+
+import (
+	"database/sql/driver"
+	_ "dm"
+	dm "dmgorm2"
+	"eta/eta_hub/utils"
+	"fmt"
+	"gorm.io/driver/mysql"
+	"gorm.io/gorm"
+	"gorm.io/gorm/logger"
+	"gorm.io/gorm/schema"
+	"io"
+	"log"
+	"os"
+	"strings"
+	"time"
+)
+
+type LocalTime time.Time
+
+// InitDb
+// @Description: 数据库初始化
+func InitDb() {
+	dbMap := 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:                  false,                  //是否颜色输出
+	})
+
+	// 默认库
+	// 主库
+	connectDb(utils.MYSQL_URL, utils.DbNameMaster, newLogger, dbMap, true)
+
+	// 指标库
+	connectDb(utils.MYSQL_URL_DATA, utils.DbNameIndex, newLogger, dbMap, false)
+	// 报告库
+	connectDb(utils.MYSQL_URL_RDDP, utils.DbNameReport, newLogger, dbMap, false)
+
+	//全局赋值数据库链接
+	DbMap = dbMap
+
+}
+
+// connectDb
+// @Description: 达梦数据库连接
+// @param dsn
+// @param aliasName
+// @param newLogger
+// @param dbMap
+// @param isDefault
+func connectDb(dsn, aliasName string, newLogger logger.Interface, dbMap map[string]*gorm.DB, isDefault bool) {
+	//fmt.Println("dsn:", dsn, "  ==  ;aliasName:", aliasName)
+	if dsn == `` {
+		return
+	}
+
+	var dialector gorm.Dialector
+	switch utils.DbDriverName {
+	case utils.DbDriverByMysql:
+		if !strings.Contains(dsn, `parseTime`) {
+			dsn += `&parseTime=true`
+		}
+		dialector = mysql.Open(dsn)
+	case utils.DbDriverByDm:
+		dialector = dm.Open(dsn)
+	default:
+		panic(fmt.Errorf("数据库 链接异常,错误的数据库类型,数据库:%s", utils.DbDriverName))
+	}
+	db, err := gorm.Open(dialector, &gorm.Config{
+		Logger: newLogger,
+		NamingStrategy: schema.NamingStrategy{
+			SingularTable: true, // 表示使用单数表名,启用该选项后,GORM 将不会对表名进行复数化处理
+		},
+	})
+	if err != nil {
+		//global.LOG.Errorf("mysql 启动异常,数据库:default;Err:", err)
+		panic(fmt.Errorf("数据库 链接异常,数据库:%s;Err:%s", aliasName, err))
+	}
+	//创建连接池
+	sqlDB, err := db.DB()
+	if err != nil {
+		//global.LOG.Errorf("达梦 创建连接池失败,数据库:default;Err:", err)
+		panic(fmt.Errorf("数据库 创建连接池失败,数据库:%s;Err:%s", aliasName, err))
+	}
+
+	dbMap[aliasName] = db
+
+	//默认数据库连接
+	if isDefault {
+		DEFAULT_DB = db
+	}
+
+	// SetMaxIdleConns 设置空闲连接池中连接的最大数量
+	sqlDB.SetMaxIdleConns(50)
+
+	// SetMaxOpenConns 设置打开数据库连接的最大数量。
+	sqlDB.SetMaxOpenConns(100)
+
+	// SetConnMaxLifetime 设置了连接可复用的最大时间。
+	sqlDB.SetConnMaxLifetime(10 * time.Minute)
+
+}
+
+func (t *LocalTime) MarshalJSON() ([]byte, error) {
+	tTime := time.Time(*t)
+	if tTime.IsZero() {
+		return []byte("\"\""), nil
+	}
+	return []byte(fmt.Sprintf("\"%v\"", tTime.Format("2006-01-02 15:04:05"))), nil
+}
+
+func (t LocalTime) Value() (driver.Value, error) {
+	var zeroTime time.Time
+	tlt := time.Time(t)
+	//判断给定时间是否和默认零时间的时间戳相同
+	if tlt.UnixNano() == zeroTime.UnixNano() {
+		return nil, nil
+	}
+	return tlt, nil
+}
+
+func (t *LocalTime) Scan(v interface{}) error {
+	if value, ok := v.(time.Time); ok {
+		*t = LocalTime(value)
+		return nil
+	}
+	return fmt.Errorf("can not convert %v to timestamp", v)
+}

+ 6 - 2
go.mod

@@ -21,6 +21,8 @@ require (
 	github.com/shopspring/decimal v1.4.0
 	go.mongodb.org/mongo-driver v1.15.0
 	gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df
+	gorm.io/driver/mysql v1.5.7
+	gorm.io/gorm v1.26.1
 )
 
 require (
@@ -36,6 +38,8 @@ require (
 	github.com/golang/protobuf v1.5.3 // indirect
 	github.com/golang/snappy v0.0.1 // indirect
 	github.com/hashicorp/golang-lru v0.5.4 // indirect
+	github.com/jinzhu/inflection v1.0.0 // indirect
+	github.com/jinzhu/now v1.1.5 // indirect
 	github.com/jmespath/go-jmespath v0.4.0 // indirect
 	github.com/josharian/intern v1.0.0 // indirect
 	github.com/json-iterator/go v1.1.12 // indirect
@@ -64,9 +68,9 @@ require (
 	github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d // indirect
 	golang.org/x/crypto v0.26.0 // indirect
 	golang.org/x/net v0.28.0 // indirect
-	golang.org/x/sync v0.8.0 // indirect
+	golang.org/x/sync v0.9.0 // indirect
 	golang.org/x/sys v0.24.0 // indirect
-	golang.org/x/text v0.17.0 // indirect
+	golang.org/x/text v0.20.0 // indirect
 	golang.org/x/time v0.6.0 // indirect
 	google.golang.org/protobuf v1.30.0 // indirect
 	gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect

+ 14 - 4
go.sum

@@ -78,6 +78,7 @@ github.com/go-redis/redis/v8 v8.11.5 h1:AcZZR7igkdvfVmQTPnu9WE37LRrO/YrBH5zWyjDC
 github.com/go-redis/redis/v8 v8.11.5/go.mod h1:gREzHqY1hg6oD9ngVRbLStwAWKhA0FEgq8Jd4h5lpwo=
 github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
 github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
+github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
 github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI=
 github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
 github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
@@ -118,6 +119,10 @@ github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+
 github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=
 github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
 github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
+github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
+github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
+github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ=
+github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
 github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
 github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
 github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=
@@ -313,8 +318,8 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ
 golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
-golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ=
+golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
 golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -342,8 +347,8 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
 golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
-golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
-golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
+golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
+golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
 golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U=
 golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
 golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -397,4 +402,9 @@ gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C
 gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
 gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+gorm.io/driver/mysql v1.5.7 h1:MndhOPYOfEp2rHKgkZIhJ16eVUIRf2HmzgoPmh7FCWo=
+gorm.io/driver/mysql v1.5.7/go.mod h1:sEtPWMiqiN1N1cMXoXmBbd8C6/l+TESwriotuRRpkDM=
+gorm.io/gorm v1.25.7/go.mod h1:hbnx/Oo0ChWMn1BIhpy1oYozzpM15i4YPuHDmfYtwg8=
+gorm.io/gorm v1.26.1 h1:ghB2gUI9FkS46luZtn6DLZ0f6ooBJ5IbVej2ENFDjRw=
+gorm.io/gorm v1.26.1/go.mod h1:8Z33v652h4//uMA76KjeDH8mJXPm1QNCYrMeatR0DOE=
 rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=

+ 5 - 3
models/aimod/file_upload_record.go

@@ -1,7 +1,8 @@
 package aimod
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"time"
 )
 
@@ -23,7 +24,8 @@ type FileUploadRecord struct {
 
 // AddAiChatTopic 新增上传文件记录
 func (obj *FileUploadRecord) AddFileUploadRecord() (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("ai")
-	lastId, err = o.Insert(obj)
+	//o := orm.NewOrmUsingDB("ai")
+	//lastId, err = o.Insert(obj)
+	err = global.DbMap[utils.DbNameAI].Create(&obj).Error
 	return
 }

+ 5 - 5
models/business_conf.go

@@ -1,9 +1,9 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"html"
 	"time"
 )
@@ -40,9 +40,9 @@ func GetBusinessConf() (list map[string]string, err error) {
 	list = make(map[string]string)
 
 	var items []*BusinessConf
-	o := orm.NewOrm()
+	//o := orm.NewOrm()
 	sql := `SELECT * FROM business_conf`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DEFAULT_DB.Raw(sql).Find(&items).Error
 	if err != nil {
 		return
 	}
@@ -58,9 +58,9 @@ func GetBusinessConf() (list map[string]string, err error) {
 }
 
 func GetBusinessConfByKey(key string) (item *BusinessConf, err error) {
-	o := orm.NewOrm()
+	//o := orm.NewOrm()
 	sql := fmt.Sprintf(`SELECT * FROM business_conf WHERE conf_key = ? LIMIT 1`)
-	err = o.Raw(sql, key).QueryRow(&item)
+	err = global.DEFAULT_DB.Raw(sql, key).Scan(&item).Error
 	return
 }
 

+ 5 - 5
models/classify.go

@@ -1,8 +1,8 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -85,7 +85,7 @@ func GetClassifyChildByParentIds(parentId []int, keyWord string) (items []*Class
 	if parentIdLen == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ``
 	pars := make([]interface{}, 0)
 	pars = append(pars, parentId)
@@ -95,7 +95,7 @@ func GetClassifyChildByParentIds(parentId []int, keyWord string) (items []*Class
 	} else {
 		sql = `SELECT * FROM classify WHERE parent_id IN (` + utils.GetOrmInReplace(parentIdLen) + `) ORDER BY create_time ASC `
 	}
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars...).Find(&items).Error
 
 	return
 }
@@ -151,7 +151,7 @@ func GetClassifyListByParentIdList(parentClassifyIdList []int) (items []*Classif
 	}
 	sql := `SELECT * FROM classify WHERE id in (` + utils.GetOrmInReplace(num) + `) ORDER BY sort ASC, create_time ASC`
 
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, parentClassifyIdList).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DEFAULT_DB.Raw(sql, parentClassifyIdList).Find(&items).Error
 	return
 }

+ 4 - 3
models/classify_menu.go

@@ -1,7 +1,8 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"time"
 )
 
@@ -17,10 +18,10 @@ type ClassifyMenu struct {
 
 // GetClassifyMenuList 获取子目录列表
 func GetClassifyMenuList(condition string, pars []interface{}) (list []*ClassifyMenu, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM classify_menu WHERE 1 = 1 `
 	sql += condition
 	sql += ` ORDER BY sort ASC, create_time ASC`
-	_, err = o.Raw(sql, pars).QueryRows(&list)
+	err = global.DbMap[utils.DbNameReport].Raw(sql, pars).Find(&list).Error
 	return
 }

+ 29 - 19
models/classify_menu_relation.go

@@ -1,7 +1,8 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"time"
 )
 
@@ -18,55 +19,64 @@ func (item *ClassifyMenuRelation) TableName() string {
 }
 
 func (item *ClassifyMenuRelation) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(item)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.DbNameReport].Create(item).Error
 	if err != nil {
 		return
 	}
-	item.Id = int(id)
+	//item.Id = int(id)
 	return
 }
 
 func (item *ClassifyMenuRelation) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(item, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.DbNameReport].Select(cols).Updates(item).Error
 	return
 }
 
 func (item *ClassifyMenuRelation) InsertMulti(items []*ClassifyMenuRelation) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.DbNameReport].CreateInBatches(item, len(items)).Error
 	return
 }
 
 // GetClassifyMenuRelationList 获取子目录关联列表
 func GetClassifyMenuRelationList(condition string, pars []interface{}) (list []*ClassifyMenuRelation, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM classify_menu_relation WHERE 1 = 1 `
 	sql += condition
 	sql += ` ORDER BY create_time DESC`
-	_, err = o.Raw(sql, pars).QueryRows(&list)
+	err = global.DbMap[utils.DbNameReport].Raw(sql, pars).Find(&list).Error
 	return
 }
 
 // DeleteAndInsertClassifyMenuRelation 新增子目录关联
 func DeleteAndInsertClassifyMenuRelation(classifyId, menuId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	//o := orm.NewOrmUsingDB("rddp")
+	//tx, err := o.Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = tx.Rollback()
+	//	} else {
+	//		_ = tx.Commit()
+	//	}
+	//}()
+
+	tx := global.DbMap[utils.MYSQL_URL_RDDP].Begin()
 	defer func() {
 		if err != nil {
-			_ = tx.Rollback()
+			tx.Rollback()
 		} else {
-			_ = tx.Commit()
+			tx.Commit()
 		}
 	}()
 
 	// 删除
 	sql := `DELETE FROM classify_menu_relation WHERE classify_id = ?`
-	if _, e := tx.Raw(sql, classifyId).Exec(); e != nil {
+	if e := tx.Exec(sql, classifyId).Error; e != nil {
 		err = e
 		return
 	}
@@ -78,7 +88,7 @@ func DeleteAndInsertClassifyMenuRelation(classifyId, menuId int) (err error) {
 			MenuId:     menuId,
 			CreateTime: time.Now().Local(),
 		}
-		_, e := tx.Insert(relate)
+		e := tx.Create(relate).Error
 		if e != nil {
 			err = e
 		}

+ 11 - 9
models/data_manage/base_from_business.go

@@ -1,8 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -45,24 +46,25 @@ type BaseFromBusinessIndexResp struct {
 }
 
 func (m *BaseFromBusinessIndex) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (total int, items []*BaseFromBusinessIndexItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
 	}
 	// 获取总数
-	sql := fmt.Sprintf(`SELECT count(1) FROM base_from_business_index WHERE 1=1 %s `, cond)
-	err = o.Raw(sql, pars).QueryRow(&total)
-	if err != nil {
-		return
-	}
-
+	sql := fmt.Sprintf(`SELECT count(1) AS total FROM base_from_business_index WHERE 1=1 %s `, cond)
+	//err = o.Raw(sql, pars).QueryRow(&total)
+	//if err != nil {
+	//	return
+	//}
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Scan(&total).Error
 	// 排序字段
 	order := `ORDER BY create_time DESC`
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql = fmt.Sprintf(`SELECT %s FROM base_from_business_index WHERE 1=1 %s %s limit ?,?`, fields, cond, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	//_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }

+ 26 - 16
models/data_manage/base_from_eia_stero.go

@@ -1,8 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -83,8 +83,9 @@ type BaseFromEiaSteoDataItem struct {
 // GetEiaSteoClassifyList 获取分类列表
 func GetEiaSteoClassifyList() (items []*BaseFromEiaSteoClassify, err error) {
 	sql := ` SELECT * FROM base_from_eia_steo_classify  ORDER BY base_from_eia_steo_classify_id ASC `
-	o := orm.NewOrmUsingDB("data")
-	o.Raw(sql).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("data")
+	//o.Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
@@ -108,16 +109,20 @@ func GetEiaSteoIndexList(condition string, pars []interface{}) (items []*BaseFro
 	sql := ` SELECT *  FROM base_from_eia_steo_index WHERE 1=1  `
 	sql += condition
 	sql += ` ORDER BY base_from_eia_steo_index_id ASC `
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 // GetEiaSteoIndexDataCount 获取指标数据总数
 func GetEiaSteoIndexDataCount(indexCode string) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT COUNT(1) AS count FROM base_from_eia_steo_data where index_code = ? `
-	err = o.Raw(sql, indexCode).QueryRow(&count)
+	//err = o.Raw(sql, indexCode).QueryRow(&count)
+
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCode).Scan(&count).Error
+
 	return
 }
 
@@ -125,16 +130,20 @@ func GetEiaSteoIndexDataCount(indexCode string) (count int, err error) {
 func GetEiaSteoIndexDataList(indexCode string, startSize, pageSize int) (items []*BaseFromEiaSteoDataItem, err error) {
 	//sql := ` SELECT *  FROM mb_index_main_data WHERE INDEX_CODE=? ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC LIMIT ?,?`
 	sql := ` SELECT * FROM base_from_eia_steo_data AS a WHERE index_code=? ORDER BY data_time DESC LIMIT ?,? `
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Raw(sql, indexCode, startSize, pageSize).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Raw(sql, indexCode, startSize, pageSize).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCode, startSize, pageSize).Find(&items).Error
 	return
 }
 
 // GetEiaSteoItemList 模糊查询EiaSteo数据库指标列表
 func GetEiaSteoItemList(keyword string) (items []*BaseFromEiaSteoIndexItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_eia_steo_index WHERE index_name LIKE ?  OR index_code like ?"
-	_, err = o.Raw(sql, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword)).QueryRows(&items)
+	//_, err = o.Raw(sql, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword)).QueryRows(&items)
+
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword)).Find(&items).Error
+
 	return
 }
 
@@ -146,16 +155,17 @@ func GetEiaSteoDateList(indexCodeList []string) (items []*BaseFromEiaSteoDataIte
 	}
 
 	sql := ` SELECT data_time FROM base_from_eia_steo_data WHERE index_code IN(` + utils.GetOrmInReplace(num) + `)  GROUP BY data_time ORDER BY data_time DESC `
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Raw(sql, indexCodeList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Raw(sql, indexCodeList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCodeList).Find(&items).Error
 	return
 }
 
 // GetBaseFromEiaSteoIndexByCode 根据指标code获取指标信息
 func GetBaseFromEiaSteoIndexByCode(indexCode string) (item *BaseFromEiaSteoIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_eia_steo_index WHERE index_code=? `
-	err = o.Raw(sql, indexCode).QueryRow(&item)
+	//err = o.Raw(sql, indexCode).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCode).Scan(&item).Error
 	return
 }

+ 23 - 14
models/data_manage/base_from_mysteel_chemical_index.go

@@ -1,8 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -47,43 +47,52 @@ func GetNotIsSupplierStopIndexByCodeList(codeList []string, isStop int) (items [
 		return
 	}
 
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_mysteel_chemical_index WHERE is_supplier_stop = ? AND index_code in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, isStop, codeList).QueryRows(&items)
-
+	//_, err = o.Raw(sql, isStop, codeList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, isStop, codeList).Find(&items).Error
 	return
 }
 
 func ModifyMysteelChemicalUpdateStatusByEdbInfoIds(edbInfoIds []int, isStop int, edbCodes []string, calculateEdbInfoIds []int) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
-	}
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = o.Rollback()
+	//		return
+	//	}
+	//	_ = o.Commit()
+	//}()
+
+	tx := global.DbMap[utils.DbNameIndex].Begin()
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
-			return
+			tx.Rollback()
+		} else {
+			tx.Commit()
 		}
-		_ = o.Commit()
 	}()
 
 	// 更改数据源的更新状态
 	sql := ` UPDATE base_from_mysteel_chemical_index SET is_stop = ? WHERE index_code IN (` + utils.GetOrmInReplace(len(edbCodes)) + `) `
-	_, err = o.Raw(sql, isStop, edbCodes).Exec()
+	err = tx.Exec(sql, isStop, edbCodes).Error
 	if err != nil {
 		return
 	}
 
 	// 更改指标的更新状态
 	sql = ` UPDATE edb_info SET no_update = ? WHERE source = ? AND edb_info_id IN (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) `
-	_, err = o.Raw(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, edbInfoIds).Exec()
+	err = tx.Exec(sql, isStop, utils.DATA_SOURCE_MYSTEEL_CHEMICAL, edbInfoIds).Error
 	if err != nil {
 		return
 	}
 	if len(calculateEdbInfoIds) > 0 {
 		// 批量更新相关联的指标ID
 		sql = ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
-		_, err = o.Raw(sql, isStop, calculateEdbInfoIds).Exec()
+		err = tx.Exec(sql, isStop, calculateEdbInfoIds).Error
 		if err != nil {
 			return
 		}

+ 110 - 108
models/data_manage/base_from_trade_index.go

@@ -1,6 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
@@ -86,54 +88,54 @@ type BaseFromTradeIneIndex struct {
 
 type BaseFromTradeZhengzhouIndex struct {
 	BaseFromTradeZhengzhouIndexId int `orm:"column(base_from_trade_zhengzhou_index_id);pk"`
-	Rank                      int
-	DealShortName             string
-	DealName                  string
-	DealCode                  string
-	DealValue                 string
-	DealChange                string
-	BuyShortName              string
-	BuyName                   string
-	BuyCode                   string
-	BuyValue                  string
-	BuyChange                 string
-	SoldShortName             string
-	SoldName                  string
-	SoldCode                  string
-	SoldValue                 string
-	SoldChange                string
-	Frequency                 string
-	ClassifyName              string
-	ClassifyType              string
-	CreateTime                time.Time
-	ModifyTime                time.Time
-	DataTime                  string
+	Rank                          int
+	DealShortName                 string
+	DealName                      string
+	DealCode                      string
+	DealValue                     string
+	DealChange                    string
+	BuyShortName                  string
+	BuyName                       string
+	BuyCode                       string
+	BuyValue                      string
+	BuyChange                     string
+	SoldShortName                 string
+	SoldName                      string
+	SoldCode                      string
+	SoldValue                     string
+	SoldChange                    string
+	Frequency                     string
+	ClassifyName                  string
+	ClassifyType                  string
+	CreateTime                    time.Time
+	ModifyTime                    time.Time
+	DataTime                      string
 }
 
 type BaseFromTradeDalianIndex struct {
 	BaseFromTradeDalianIndexId int `orm:"column(base_from_trade_dalian_index_id);pk"`
-	Rank                      int
-	DealShortName             string
-	DealName                  string
-	DealCode                  string
-	DealValue                 string
-	DealChange                string
-	BuyShortName              string
-	BuyName                   string
-	BuyCode                   string
-	BuyValue                  string
-	BuyChange                 string
-	SoldShortName             string
-	SoldName                  string
-	SoldCode                  string
-	SoldValue                 string
-	SoldChange                string
-	Frequency                 string
-	ClassifyName              string
-	ClassifyType              string
-	CreateTime                time.Time
-	ModifyTime                time.Time
-	DataTime                  string
+	Rank                       int
+	DealShortName              string
+	DealName                   string
+	DealCode                   string
+	DealValue                  string
+	DealChange                 string
+	BuyShortName               string
+	BuyName                    string
+	BuyCode                    string
+	BuyValue                   string
+	BuyChange                  string
+	SoldShortName              string
+	SoldName                   string
+	SoldCode                   string
+	SoldValue                  string
+	SoldChange                 string
+	Frequency                  string
+	ClassifyName               string
+	ClassifyType               string
+	CreateTime                 time.Time
+	ModifyTime                 time.Time
+	DataTime                   string
 }
 
 type BaseFromTradeEicIndex struct {
@@ -167,111 +169,112 @@ type BaseFromTradeEicIndex struct {
 }
 
 func GetBaseFromTradeIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeShanghaiIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	if classifyName == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=?"
-		_, err = o.Raw(sql, date).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&list).Error
 		return
 	} else if classifyType == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
-		_, err = o.Raw(sql, date, classifyName).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName).Find(&list).Error
 		return
 	} else {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? and classify_type=?"
-		_, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName, classifyType).Find(&list).Error
 		return
 	}
 }
+
 func GetBaseFromTradeIneIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeIneIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	if classifyName == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=?"
-		_, err = o.Raw(sql, date).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&list).Error
 		return
 	} else if classifyType == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
-		_, err = o.Raw(sql, date, classifyName).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName).Find(&list).Error
 		return
 	} else {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? and classify_type=?"
-		_, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName, classifyType).Find(&list).Error
 		return
 	}
 }
 func GetBaseFromTradeCffexIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeCffexIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	if classifyName == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=?"
-		_, err = o.Raw(sql, date).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&list).Error
 		return
 	} else if classifyType == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
-		_, err = o.Raw(sql, date, classifyName).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName).Find(&list).Error
 		return
 	} else {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? and classify_type=?"
-		_, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName, classifyType).Find(&list).Error
 		return
 	}
 }
 func GetBaseFromTradeZhengzhouIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeZhengzhouIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	if classifyName == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=?"
-		_, err = o.Raw(sql, date).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&list).Error
 		return
 	} else if classifyType == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
-		_, err = o.Raw(sql, date, classifyName).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName).Find(&list).Error
 		return
 	} else {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? and classify_type=?"
-		_, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName, classifyType).Find(&list).Error
 		return
 	}
 }
 func GetBaseFromTradeDalianIndexByParam(exchange, date, classifyName, classifyType string) (list []*BaseFromTradeDalianIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	if classifyName == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=?"
-		_, err = o.Raw(sql, date).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&list).Error
 		return
 	} else if classifyType == "" {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? ORDER BY classify_type,rank"
-		_, err = o.Raw(sql, date, classifyName).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName).Find(&list).Error
 		return
 	} else {
 		sql := "SELECT * FROM base_from_trade_" + exchange + "_index where data_time=? and classify_name=? and classify_type=?"
-		_, err = o.Raw(sql, date, classifyName, classifyType).QueryRows(&list)
+		err = global.DbMap[utils.DbNameIndex].Raw(sql, date, classifyName, classifyType).Find(&list).Error
 		return
 	}
 }
 
 func GetExchangeClassify(exchange, dataTime string) (classifyName []string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT DISTINCT classify_name FROM base_from_trade_" + exchange + "_index where data_time=? ORDER BY CONVERT(classify_name using gbk) DESC"
-	_, err = o.Raw(sql, dataTime).QueryRows(&classifyName)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, dataTime).Find(&classifyName).Error
 	return
 }
 
 func GetLatestDate(exchange string) (dataTime string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT data_time FROM base_from_trade_" + exchange + "_index ORDER BY data_time desc limit 1"
-	err = o.Raw(sql).QueryRow(&dataTime)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Scan(&dataTime).Error
 	return
 }
 
 func GetExchangeClassifyContract(exchange, Classify, dataTime string) (classifyName []*string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT DISTINCT classify_type FROM base_from_trade_" + exchange + "_index where classify_name=? and data_time=?"
-	_, err = o.Raw(sql, Classify, dataTime).QueryRows(&classifyName)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, Classify, dataTime).Find(&classifyName).Error
 	return
 }
 
 func GetContinentEicDate(date string) (data []*BaseFromTradeEicIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index where gas_day_started_on=? and type='continent' "
-	_, err = o.Raw(sql, date).QueryRows(&data)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&data).Error
 	return
 }
 
@@ -381,7 +384,7 @@ type BaseFromCoalmineFirmIndex struct {
 	ModifyTime                  string `description:"修改时间"`
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineFirmIndex(dataTime string) (items []*BaseFromCoalmineFirmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_firm_index WHERE data_time LIKE  `
@@ -406,7 +409,7 @@ type BaseFromCoalmineCoastalIndex struct {
 	ModifyTime                     string `description:"修改时间"`
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineCoastalIndex(startDate, endDate string) (items []*BaseFromCoalmineCoastalIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_coastal_index WHERE data_time between ? and ? `
@@ -429,7 +432,7 @@ type BaseFromCoalmineInlandIndex struct {
 	ModifyTime                    string `description:"修改时间"`
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineInlandIndex(startDate, endDate string) (items []*BaseFromCoalmineInlandIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_inland_index WHERE data_time between ? and ? `
@@ -497,7 +500,7 @@ func GetFrequencyFromCoal(suffix string) (list *string, err error) {
 	return
 }
 
-//查询数据
+// 查询数据
 func GetBaseFromCoalmineIndexByFrequency(frequency, groupName string) (items []*BaseFromCoalmineJsmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_jsm_index WHERE frequency=? AND province=?`
@@ -505,7 +508,7 @@ func GetBaseFromCoalmineIndexByFrequency(frequency, groupName string) (items []*
 	return
 }
 
-//查询数据
+// 查询数据
 func GetGroupNameFromCoalmineIndex(suffix string) (items []*string, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT DISTINCT group_name FROM base_from_coalmine_%s `
@@ -514,7 +517,7 @@ func GetGroupNameFromCoalmineIndex(suffix string) (items []*string, err error) {
 	return
 }
 
-//查询数据
+// 查询数据
 func GetProvinceFromCoalmineIndex(suffix string) (items []*string, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT DISTINCT province FROM base_from_coalmine_%s `
@@ -523,7 +526,7 @@ func GetProvinceFromCoalmineIndex(suffix string) (items []*string, err error) {
 	return
 }
 
-//查询数据
+// 查询数据
 func GetClassifyCoalmineIndexByGroupName(groupName string) (items []*string, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT DISTINCT index_code FROM base_from_coalmine_jsm_index WHERE province=? `
@@ -531,7 +534,7 @@ func GetClassifyCoalmineIndexByGroupName(groupName string) (items []*string, err
 	return
 }
 
-//查询数据
+// 查询数据
 func GetPageFromCoalmineIndexByFrequency(frequency, classify string, startSize, pageSize int) (items []*BaseFromCoalmineJsmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_jsm_index WHERE frequency=? AND index_code=? ORDER BY data_time DESC LIMIT ?,?  `
@@ -539,7 +542,7 @@ func GetPageFromCoalmineIndexByFrequency(frequency, classify string, startSize,
 	return
 }
 
-//查询数据
+// 查询数据
 func GetCountFromJsm(indexCode string) (item int, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT COUNT(1) FROM base_from_coalmine_jsm_index WHERE index_code=? `
@@ -561,7 +564,7 @@ func GetClassifyJsmByGroupName(groupName string) (items []*string, err error) {
 	return
 }
 
-//查询公司指标
+// 查询公司指标
 func GetPageFromCoalmineCompanyIndexByFrequency(frequency, classify string, startSize, pageSize int) (items []*BaseFromCoalmineCompanyIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_company_index WHERE frequency=? AND index_code=? ORDER BY data_time DESC LIMIT ?,? `
@@ -590,7 +593,7 @@ func GetClassifyFirmByGroupName(groupName string) (items []*string, err error) {
 	return
 }
 
-//查询指标
+// 查询指标
 func GetPageFromCoalmineFirmIndexByFrequency(frequency, classify string, startSize, pageSize int) (items []*BaseFromCoalmineFirmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_firm_index WHERE frequency=? AND index_code=? ORDER BY data_time DESC LIMIT ?,?  `
@@ -612,7 +615,7 @@ func GetClassifyCoastalByGroupName(groupName string) (items []*string, err error
 	return
 }
 
-//查询指标
+// 查询指标
 func GetPageFromCoalmineCoastalIndexByFrequency(frequency, classify string, startSize, pageSize int) (items []*BaseFromCoalmineCoastalIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_coastal_index WHERE frequency=? AND index_code=? ORDER BY data_time DESC LIMIT ?,? `
@@ -634,7 +637,7 @@ func GetClassifyInlandByGroupName(groupName string) (items []*string, err error)
 	return
 }
 
-//查询指标
+// 查询指标
 func GetPageFromCoalmineInlandIndexByFrequency(frequency, classify string, startSize, pageSize int) (items []*BaseFromCoalmineInlandIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_inland_index WHERE frequency=? AND index_code=? ORDER BY data_time DESC LIMIT ?,? `
@@ -642,7 +645,7 @@ func GetPageFromCoalmineInlandIndexByFrequency(frequency, classify string, start
 	return
 }
 
-//查询公司指标
+// 查询公司指标
 func GetBaseFromCoalmineCompanyIndexByFrequency(frequency, groupName string) (items []*BaseFromCoalmineCompanyIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_company_index WHERE frequency=? AND group_name=? `
@@ -650,7 +653,7 @@ func GetBaseFromCoalmineCompanyIndexByFrequency(frequency, groupName string) (it
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineFirmIndexByFrequency(frequency, groupName string) (items []*BaseFromCoalmineFirmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_firm_index WHERE frequency=? AND group_name=? `
@@ -658,7 +661,7 @@ func GetBaseFromCoalmineFirmIndexByFrequency(frequency, groupName string) (items
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineCoastalIndexByFrequency(frequency, groupName string) (items []*BaseFromCoalmineCoastalIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_coastal_index WHERE frequency=? AND group_name=? `
@@ -666,7 +669,7 @@ func GetBaseFromCoalmineCoastalIndexByFrequency(frequency, groupName string) (it
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineInlandIndexByFrequency(frequency, groupName string) (items []*BaseFromCoalmineInlandIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_inland_index WHERE frequency=? AND group_name=? `
@@ -674,7 +677,7 @@ func GetBaseFromCoalmineInlandIndexByFrequency(frequency, groupName string) (ite
 	return
 }
 
-//查询数据
+// 查询数据
 func GetBaseFromCoalmineIndexByCode(indexCode string) (items []*BaseFromCoalmineJsmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_jsm_index WHERE index_code=?`
@@ -682,7 +685,7 @@ func GetBaseFromCoalmineIndexByCode(indexCode string) (items []*BaseFromCoalmine
 	return
 }
 
-//查询公司指标
+// 查询公司指标
 func GetBaseFromCoalmineCompanyIndexByCode(indexCode string) (items []*BaseFromCoalmineCompanyIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_company_index WHERE index_code=? `
@@ -690,7 +693,7 @@ func GetBaseFromCoalmineCompanyIndexByCode(indexCode string) (items []*BaseFromC
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineFirmIndexByCode(indexCode string) (items []*BaseFromCoalmineFirmIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_firm_index WHERE index_code=? `
@@ -698,7 +701,7 @@ func GetBaseFromCoalmineFirmIndexByCode(indexCode string) (items []*BaseFromCoal
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineCoastalIndexByCode(indexCode string) (items []*BaseFromCoalmineCoastalIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_coastal_index WHERE index_code=? `
@@ -706,7 +709,7 @@ func GetBaseFromCoalmineCoastalIndexByCode(indexCode string) (items []*BaseFromC
 	return
 }
 
-//查询指标
+// 查询指标
 func GetBaseFromCoalmineInlandIndexByCode(indexCode string) (items []*BaseFromCoalmineInlandIndex, err error) {
 	o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM base_from_coalmine_inland_index WHERE index_code=? `
@@ -714,7 +717,6 @@ func GetBaseFromCoalmineInlandIndexByCode(indexCode string) (items []*BaseFromCo
 	return
 }
 
-
 type BaseFromTradeEicIndexV2 struct {
 	BaseFromEicIndexId     int `orm:"column(base_from_eic_index_id);pk"`
 	Type                   string
@@ -750,44 +752,44 @@ type BaseFromTradeEicIndexV2 struct {
 }
 
 func GetEicDateV2() (date []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 ORDER BY gas_day_start desc limit 1"
-	_, err = o.Raw(sql).QueryRows(&date)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&date).Error
 	return
 }
 
 func GetEicDataV2(date string) (data []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 where gas_day_start=? "
-	_, err = o.Raw(sql, date).QueryRows(&data)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&data).Error
 	return
 }
 
 func GetEicHistoryDateByDateV2(code, startDate, endDate string) (date []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 WHERE eic_code=? and gas_day_start between ? and ? ORDER BY gas_day_start desc"
-	_, err = o.Raw(sql, code, startDate, endDate).QueryRows(&date)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, code, startDate, endDate).Find(&date).Error
 	return
 }
 
 func GetEicHistoryDateV2(code string) (date []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 WHERE eic_code=? ORDER BY gas_day_start desc limit 30"
-	_, err = o.Raw(sql, code).QueryRows(&date)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, code).Find(&date).Error
 	return
 }
 
 func GetContinentAndCountryEicDateV2(date string) (data []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 where gas_day_start=? and (type='continent' OR type='country') "
-	_, err = o.Raw(sql, date).QueryRows(&data)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&data).Error
 	return
 }
 
 func GetSSOAndFacEicDateV2(date, name string) (data []*BaseFromTradeEicIndexV2, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := "SELECT * FROM base_from_trade_eic_index_v2 where gas_day_start=? and (type='sso' OR type='fac') "
-	_, err = o.Raw(sql, date).QueryRows(&data)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, date).Find(&data).Error
 	return
 }
 
@@ -803,4 +805,4 @@ func GetFirstBaseFromTradeIndexByDate(exchange string) (item *BaseFromTradeShang
 	sql := "SELECT * FROM base_from_trade_" + exchange + "_index where rank < 50 order by data_time asc"
 	err = o.Raw(sql).QueryRow(&item)
 	return
-}
+}

+ 5 - 5
models/data_manage/chart_classify.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -25,7 +25,7 @@ type ChartClassify struct {
 }
 
 func (m *ChartClassify) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*ChartClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -35,7 +35,7 @@ func (m *ChartClassify) GetItemsByCondition(cond string, pars []interface{}, fie
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM chart_classify WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
@@ -78,8 +78,8 @@ type ChartClassifyView struct {
 }
 
 func GetChartClassifyViewById(classifyId int) (item *ChartClassifyView, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_classify WHERE chart_classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).Scan(&item).Error
 	return
 }

+ 18 - 19
models/data_manage/chart_edb_mapping.go

@@ -1,9 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 type ChartEdbInfoMapping struct {
@@ -46,33 +45,33 @@ type ChartEdbInfoMapping struct {
 	MinValue            float64 `json:"-" description:"最小值"`
 	MaxValue            float64 `json:"-" description:"最大值"`
 	DataList            interface{}
-	IsNullData          bool   `json:"-" description:"是否空数据"`
-	MappingSource       int    `description:"1:ETA图库;2:商品价格曲线"`
-	RegionType          string `description:"交易所来源,海外还是国内" json:"-"`
-	ClassifyId          int    `description:"分类id"`
-	ChartScale        float64   `description:"参考刻度线"`
-	IsConvert         int       `description:"是否数据转换 0不转 1转"`
-	ConvertType       int       `description:"数据转换类型 1乘 2除 3对数"`
-	ConvertValue      float64   `description:"数据转换值"`
-	ConvertUnit       string    `description:"数据转换单位"`
-	ConvertEnUnit     string    `description:"数据转换单位"`
+	IsNullData          bool    `json:"-" description:"是否空数据"`
+	MappingSource       int     `description:"1:ETA图库;2:商品价格曲线"`
+	RegionType          string  `description:"交易所来源,海外还是国内" json:"-"`
+	ClassifyId          int     `description:"分类id"`
+	ChartScale          float64 `description:"参考刻度线"`
+	IsConvert           int     `description:"是否数据转换 0不转 1转"`
+	ConvertType         int     `description:"数据转换类型 1乘 2除 3对数"`
+	ConvertValue        float64 `description:"数据转换值"`
+	ConvertUnit         string  `description:"数据转换单位"`
+	ConvertEnUnit       string  `description:"数据转换单位"`
 }
 
 func GetChartEdbMappingList(chartInfoIds []int) (mappingList []*ChartEdbInfoMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
-	
+	//o := orm.NewOrmUsingDB("data")
+
 	sql := `
-		SELECT * FROM chart_edb_mapping WHERE chart_info_id in (`+utils.GetOrmInReplace(len(chartInfoIds))+`)
+		SELECT * FROM chart_edb_mapping WHERE chart_info_id in (` + utils.GetOrmInReplace(len(chartInfoIds)) + `)
 	`
-	_, err = o.Raw(sql, chartInfoIds).QueryRows(&mappingList)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoIds).Find(&mappingList).Error
 	return
 }
 
 func GetChartEdbMappingListByChartInfoId(chartInfoId int) (mappingList []*ChartEdbInfoMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `
 		SELECT * FROM chart_edb_mapping WHERE chart_info_id = ?
 	`
-	_, err = o.Raw(sql, chartInfoId).QueryRows(&mappingList)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoId).Find(&mappingList).Error
 	return
-}
+}

+ 13 - 14
models/data_manage/chart_info.go

@@ -1,12 +1,12 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
 	"strings"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -45,7 +45,7 @@ type ChartInfo struct {
 }
 
 func (m *ChartInfo) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*ChartInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -55,19 +55,19 @@ func (m *ChartInfo) GetItemsByCondition(cond string, pars []interface{}, fieldAr
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM chart_info WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *ChartInfo) GetItemTotal(cond string, pars []interface{}) (total int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT COUNT(*) FROM chart_info WHERE 1=1 %s`, cond)
-	err = o.Raw(sql, pars).QueryRow(&total)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Scan(&total).Error
 	return
 }
 
 func (m *ChartInfo) GetItemsPageByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ChartInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -78,14 +78,14 @@ func (m *ChartInfo) GetItemsPageByCondition(cond string, pars []interface{}, fie
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM chart_info WHERE 1=1 %s %s`, fields, cond, order)
 	sql += fmt.Sprintf(` LIMIT %d,%d`, startSize, pageSize)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *ChartInfo) GetItemByCode(code string) (item *ChartInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT * FROM chart_info WHERE unique_code = ? LIMIT 1`)
-	err = o.Raw(sql, code).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, code).Scan(&item).Error
 	return
 }
 
@@ -480,17 +480,16 @@ type ChartDetailApiResponse struct {
 	Data   *ChartInfoDetailResp
 }
 
-
 func GetChartInfoByUniqueCode(uniqueCode string) (chartInfo *ChartInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
-	
+	//o := orm.NewOrmUsingDB("data")
+
 	sql := `
 		SELECT * FROM chart_info WHERE unique_code = ?
 	`
-	err = o.Raw(sql, uniqueCode).QueryRow(&chartInfo)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, uniqueCode).Scan(&chartInfo).Error
 	if err != nil {
 		return nil, err
 	}
-	
+
 	return chartInfo, nil
 }

+ 4 - 2
models/data_manage/com_trade_country.go

@@ -1,6 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
@@ -35,8 +37,8 @@ type ComTradeCountryItem struct {
 
 // GetComTradeCountryItemAll 获取所有的国家
 func GetComTradeCountryItemAll() (list []*ComTradeCountryItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_country`
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&list).Error
 	return
 }

+ 6 - 5
models/data_manage/com_trade_data.go

@@ -1,7 +1,8 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -61,24 +62,24 @@ type ComTradeDataListResp struct {
 
 // GetComTradeListCount 获取指标数据汇总数
 func GetComTradeListCount(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT COUNT(1) AS count FROM com_trade_data WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 // GetComTradeList 获取指标数据列表
 func GetComTradeList(condition string, pars []interface{}, startSize, pageSize int, orderBy string) (list []*ComTradeDataListItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_data WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY ` + orderBy
 	sql += `  limit ?,? `
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars, startSize, pageSize).Find(&list).Error
 	return
 }

+ 9 - 9
models/data_manage/com_trade_index.go

@@ -1,8 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -18,13 +18,13 @@ type ComTradeIndex struct {
 
 // GetComTradeIndexList 获取指标数据列表
 func GetComTradeIndexList(condition string, pars []interface{}) (list []*ComTradeIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_index WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY com_trade_id DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&list).Error
 	return
 }
 
@@ -34,17 +34,17 @@ func GetComTradeIndexByIdList(idList []int) (list []*ComTradeIndex, err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_index WHERE com_trade_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, idList).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, idList).Find(&list).Error
 	return
 }
 
 // GetAllComTradeIndexList 获取指标数据列表
 func GetAllComTradeIndexList() (list []*ComTradeIndex, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_index  ORDER BY com_trade_id DESC `
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&list).Error
 	return
 }
 
@@ -59,8 +59,8 @@ type ComTradeCodeMapping struct {
 
 // GetComTradeIndex 根据指标code获取指标信息
 func GetComTradeIndex(indexCode string) (item *ComTradeCodeMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM com_trade_code_mapping WHERE code=? `
-	err = o.Raw(sql, indexCode).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, indexCode).Scan(&item).Error
 	return
 }

+ 3 - 3
models/data_manage/edb_classify.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -26,7 +26,7 @@ type EdbClassify struct {
 }
 
 func (m *EdbClassify) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -36,7 +36,7 @@ func (m *EdbClassify) GetItemsByCondition(cond string, pars []interface{}, field
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM edb_classify WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 

+ 3 - 3
models/data_manage/edb_data.go

@@ -1,10 +1,10 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/models/mgo"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"go.mongodb.org/mongo-driver/bson"
 	"strings"
 	"time"
@@ -218,7 +218,7 @@ func (m *EdbData) getItemsBySourceAndCodeByMysql(source, subSource int, edbCode,
 		return
 	}
 
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -235,7 +235,7 @@ func (m *EdbData) getItemsBySourceAndCodeByMysql(source, subSource int, edbCode,
 		pars = append(pars, startDate)
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE %s %s`, fields, tableName, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 

+ 20 - 11
models/data_manage/edb_data_wind.go

@@ -1,33 +1,42 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 )
 
 func EdbInfoUpdateStatusByEdbInfoId(edbInfoIds []int, isStop int, calculateEdbInfoIds []int) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
-	}
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = o.Rollback()
+	//		return
+	//	}
+	//	_ = o.Commit()
+	//}()
+
+	tx := global.DbMap[utils.DbNameIndex].Begin()
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
-			return
+			tx.Rollback()
+		} else {
+			tx.Commit()
 		}
-		_ = o.Commit()
 	}()
 
 	// 更改指标的更新状态
 	if len(edbInfoIds) == 1 {
 		sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id=? `
-		_, err = o.Raw(sql, isStop, edbInfoIds[0]).Exec()
+		err = tx.Exec(sql, isStop, edbInfoIds[0]).Error
 		if err != nil {
 			return
 		}
 	} else {
 		sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(edbInfoIds)) + `) `
-		_, err = o.Raw(sql, isStop, edbInfoIds).Exec()
+		err = tx.Exec(sql, isStop, edbInfoIds).Error
 		if err != nil {
 			return
 		}
@@ -36,7 +45,7 @@ func EdbInfoUpdateStatusByEdbInfoId(edbInfoIds []int, isStop int, calculateEdbIn
 	if len(calculateEdbInfoIds) > 0 {
 		// 批量更新相关联的指标ID
 		sql := ` UPDATE edb_info SET no_update = ? WHERE edb_info_id IN (` + utils.GetOrmInReplace(len(calculateEdbInfoIds)) + `) `
-		_, err = o.Raw(sql, isStop, calculateEdbInfoIds).Exec()
+		err = tx.Exec(sql, isStop, calculateEdbInfoIds).Error
 		if err != nil {
 			return
 		}

+ 31 - 31
models/data_manage/edb_info.go

@@ -1,12 +1,12 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
 	"strings"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -58,7 +58,7 @@ type EdbInfo struct {
 }
 
 func (m *EdbInfo) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -68,12 +68,12 @@ func (m *EdbInfo) GetItemsByCondition(cond string, pars []interface{}, fieldArr
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM edb_info WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *EdbInfo) GetItemsPageByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*EdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -84,28 +84,28 @@ func (m *EdbInfo) GetItemsPageByCondition(cond string, pars []interface{}, field
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM edb_info WHERE 1=1 %s %s`, fields, cond, order)
 	sql += fmt.Sprintf(` LIMIT %d,%d`, startSize, pageSize)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *EdbInfo) GetItemsTotal(cond string, pars []interface{}) (total int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT COUNT(*) FROM edb_info WHERE 1=1 %s`, cond)
-	err = o.Raw(sql, pars).QueryRow(&total)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Scan(&total).Error
 	return
 }
 
 func (m *EdbInfo) GetItemByUniCode(code string) (item *EdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT * FROM edb_info WHERE unique_code = ? LIMIT 1`)
-	err = o.Raw(sql, code).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, code).Scan(&item).Error
 	return
 }
 
 func (m *EdbInfo) GetItemByEdbCode(code string) (item *EdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT * FROM edb_info WHERE edb_code = ? LIMIT 1`)
-	err = o.Raw(sql, code).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, code).Scan(&item).Error
 	return
 }
 
@@ -182,21 +182,21 @@ func FormatEdbInfo2Item(origin *EdbInfo) (item *EdbInfoItem) {
 
 // TraceEdbInfoResp 指标追溯数据返回
 type TraceEdbInfoMoreResp struct {
-	EdbInfoId   int                `description:"指标id"`
-	EdbCode     string             `description:"指标编码"`
-	EdbInfoType int                `description:"指标类型: 0-普通指标; 1-预测指标"`
-	EdbName     string             `description:"指标名称"`
-	EdbType     int                `description:"指标类型: 1-基础指标; 2-计算指标"`
-	RuleTitle   string             `description:"指标规则"`
-	UniqueCode  string             `description:"唯一编码"`
-	Frequency   string             `description:"频率"`
-	Unit        string             `description:"单位"`
-	EndDate     string             `description:"终止日期"`
-	EndValue    float64            `description:"终止值"`
-	LatestDate  string             `description:"最新日期"`
-	LatestValue float64            `description:"最新值"`
+	EdbInfoId   int                    `description:"指标id"`
+	EdbCode     string                 `description:"指标编码"`
+	EdbInfoType int                    `description:"指标类型: 0-普通指标; 1-预测指标"`
+	EdbName     string                 `description:"指标名称"`
+	EdbType     int                    `description:"指标类型: 1-基础指标; 2-计算指标"`
+	RuleTitle   string                 `description:"指标规则"`
+	UniqueCode  string                 `description:"唯一编码"`
+	Frequency   string                 `description:"频率"`
+	Unit        string                 `description:"单位"`
+	EndDate     string                 `description:"终止日期"`
+	EndValue    float64                `description:"终止值"`
+	LatestDate  string                 `description:"最新日期"`
+	LatestValue float64                `description:"最新值"`
 	Child       []TraceEdbInfoMoreResp `description:"下级来源"`
-	EdbInfo     *EdbInfo           `description:"指标信息" json:"-"`
+	EdbInfo     *EdbInfo               `description:"指标信息" json:"-"`
 }
 
 type TraceEdbInfoResp struct {
@@ -213,9 +213,9 @@ type TraceEdbInfoResp struct {
 }
 
 func GetEdbInfoById(edbInfoId int) (item *EdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM edb_info WHERE edb_info_id=? `
-	err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbInfoId).Scan(&item).Error
 	return
 }
 
@@ -225,9 +225,9 @@ func GetEdbInfoByIdList(edbInfoIdList []int) (items []*EdbInfo, err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM edb_info WHERE edb_info_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, edbInfoIdList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbInfoIdList).Find(&items).Error
 	return
 }
 
@@ -237,8 +237,8 @@ func GetEdbInfoByEdbCodeList(source int, edbCodeList []string) (items []*EdbInfo
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM edb_info WHERE source=? AND edb_code in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, source, edbCodeList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source, edbCodeList).Scan(&items).Error
 	return
 }

+ 6 - 4
models/data_manage/edb_info_calculate_mapping.go

@@ -1,6 +1,8 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
@@ -92,21 +94,21 @@ type EdbInfoCalculateMappingInfo struct {
 
 // GetEdbInfoCalculateMappingListByEdbInfoId 根据生成的指标id获取来源的指标id列表
 func GetEdbInfoCalculateMappingListByEdbInfoId(edbInfoId int) (items []*EdbInfoCalculateMappingInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT a.*,b.edb_type as from_edb_type,b.edb_info_type as from_edb_info_type, b.unique_code AS from_unique_code, b.classify_id AS from_classify_id FROM edb_info_calculate_mapping AS a
 			INNER JOIN edb_info AS b ON a.from_edb_info_id=b.edb_info_id
 			WHERE a.edb_info_id=? `
-	_, err = o.Raw(sql, edbInfoId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbInfoId).Find(&items).Error
 	return
 }
 
 func GetRelationEdbInfoListMappingByCondition(condition string, pars []interface{}) (item []*ChartEdbInfoMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT a.* FROM edb_info AS a 
 	JOIN edb_info_calculate_mapping AS b on a.edb_info_id = b.edb_info_id WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&item).Error
 	return
 }

+ 5 - 5
models/data_manage/edb_source.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
@@ -27,7 +27,7 @@ type EdbSource struct {
 
 // GetEdbSourceItemsByCondition 获取指标来源列表
 func GetEdbSourceItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EdbSource, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -37,15 +37,15 @@ 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.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 // GetEdbSourceItemByCondition 获取指标来源
 func GetEdbSourceItemByCondition(condition string, pars []interface{}) (item *EdbSource, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := fmt.Sprintf(`SELECT * FROM edb_source WHERE 1=1 %s`, condition)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Scan(&item).Error
 	return
 }
 

+ 31 - 31
models/data_manage/eta_business_chart_permission.go

@@ -1,6 +1,7 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
 	"time"
@@ -27,12 +28,12 @@ func (m *EtaBusinessChartPermission) TableName() string {
 
 type BusinessChartInfoView struct {
 	ChartInfoId int
-	ChartName string
-	UniqueCode string	
+	ChartName   string
+	UniqueCode  string
 	Description []string
 	EdbInfoList []*BusinessChartEdbListItem
 }
-	
+
 // GetChartListByBusinessCode 根据商家编码获取图表列表
 func (m *EtaBusinessChartPermission) GetChartListByBusinessCode(businessCode string, startSize int, pageSize int) ([]*BusinessChartInfoView, error) {
 	if businessCode == "" {
@@ -40,7 +41,7 @@ func (m *EtaBusinessChartPermission) GetChartListByBusinessCode(businessCode str
 	}
 
 	var chartList []*BusinessChartInfoView
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 
 	// 构建SQL查询
 	sql := `
@@ -57,7 +58,7 @@ func (m *EtaBusinessChartPermission) GetChartListByBusinessCode(businessCode str
 		LIMIT ?, ?
 	`
 
-	_, err := o.Raw(sql, businessCode, startSize, pageSize).QueryRows(&chartList)
+	err := global.DbMap[utils.DbNameIndex].Raw(sql, businessCode, startSize, pageSize).Find(&chartList).Error
 	if err != nil {
 		return nil, fmt.Errorf("failed to get chart list: %v", err)
 	}
@@ -66,7 +67,7 @@ func (m *EtaBusinessChartPermission) GetChartListByBusinessCode(businessCode str
 }
 
 func (m *EtaBusinessChartPermission) GetChartListByBusinessCodeTotal(businessCode string) (int64, error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `
 		SELECT COUNT(*) FROM eta_business_chart_permission p
 		JOIN 
@@ -75,7 +76,7 @@ func (m *EtaBusinessChartPermission) GetChartListByBusinessCodeTotal(businessCod
 			p.business_code = ?
 	`
 	var total int64
-	err := o.Raw(sql, businessCode).QueryRow(&total)
+	err := global.DbMap[utils.DbNameIndex].Raw(sql, businessCode).Scan(&total)
 	if err != nil {
 		return 0, fmt.Errorf("failed to get chart list total: %v", err)
 	}
@@ -84,7 +85,7 @@ func (m *EtaBusinessChartPermission) GetChartListByBusinessCodeTotal(businessCod
 
 // GetChartInfoByUniqueCode 根据唯一编码获取图表信息
 func (m *EtaBusinessChartPermission) GetChartInfoByUniqueCode(businessCode string, uniqueCode string) (chartInfo *BusinessChartInfoView, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `
 		SELECT 
 			c.chart_info_id, c.chart_name, c.unique_code
@@ -95,7 +96,7 @@ func (m *EtaBusinessChartPermission) GetChartInfoByUniqueCode(businessCode strin
 		WHERE 
 			p.business_code = ? AND c.unique_code = ?
 	`
-	err = o.Raw(sql, businessCode, uniqueCode).QueryRow(&chartInfo)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, businessCode, uniqueCode).Scan(&chartInfo).Error
 	return
 }
 
@@ -104,9 +105,8 @@ func init() {
 	orm.RegisterModel(new(EtaBusinessChartPermission))
 }
 
-
 type BusinessChartInfoResp struct {
-	List []*BusinessChartInfoView
+	List   []*BusinessChartInfoView
 	Paging *paging.PagingItem
 }
 
@@ -115,17 +115,17 @@ type BusinessChartEdbListResp struct {
 }
 
 type BusinessChartEdbListItem struct {
-	EdbInfoId int
-	EdbCode string
-	EdbName string
+	EdbInfoId   int
+	EdbCode     string
+	EdbName     string
 	EdbInfoType int
-	Frequency string
-	Unit string
-	EndDate string
-	EndValue float64
-	LatestDate string
+	Frequency   string
+	Unit        string
+	EndDate     string
+	EndValue    float64
+	LatestDate  string
 	LatestValue float64
-	UniqueCode string
+	UniqueCode  string
 }
 
 type ChartDescription struct {
@@ -135,27 +135,27 @@ type ChartDescription struct {
 
 // 查询图表描述列表
 func (m *EtaBusinessChartPermission) GetChartDescriptionListByChartInfoIds(chartInfoIds []int) (list []*ChartDescription, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `
-		SELECT * FROM chart_description WHERE chart_info_id IN (`+utils.GetOrmInReplace(len(chartInfoIds))+`) ORDER BY id DESC
+		SELECT * FROM chart_description WHERE chart_info_id IN (` + utils.GetOrmInReplace(len(chartInfoIds)) + `) ORDER BY id DESC
 	`
-	_, err = o.Raw(sql, chartInfoIds).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoIds).Find(&list).Error
 	return list, err
 }
 
 func (m *EtaBusinessChartPermission) GetChartDescriptionListByChartInfoId(chartInfoId int) (list []*ChartDescription, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `
 		SELECT * FROM chart_description WHERE chart_info_id = ? ORDER BY id DESC
 	`
-	_, err = o.Raw(sql, chartInfoId).QueryRows(&list)
-	return 
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoId).Find(&list).Error
+	return
 }
 
 type BusinessChartDetailResp struct {
 	ChartInfoId int
-	ChartName string
-	UniqueCode string	
+	ChartName   string
+	UniqueCode  string
 	Description []string
 	EdbInfoList []TraceEdbInfoMoreResp
 }
@@ -166,7 +166,7 @@ func (m *EtaBusinessChartPermission) GetChartCountByBusinessCodeAndEdbInfoId(bus
 		return 0, fmt.Errorf("business code cannot be empty")
 	}
 
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 
 	// 构建SQL查询
 	sql := `
@@ -180,6 +180,6 @@ func (m *EtaBusinessChartPermission) GetChartCountByBusinessCodeAndEdbInfoId(bus
 			p.business_code = ? AND c.edb_info_id = ?
 	`
 
-	err = o.Raw(sql, businessCode, edbInfoId).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, businessCode, edbInfoId).Scan(&count).Error
 	return
-}
+}

+ 3 - 3
models/data_manage/variety.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -22,7 +22,7 @@ type Variety struct {
 }
 
 func (m *Variety) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*Variety, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -32,7 +32,7 @@ func (m *Variety) GetItemsByCondition(cond string, pars []interface{}, fieldArr
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM variety WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 

+ 3 - 3
models/data_manage/variety_edb_info.go

@@ -1,9 +1,9 @@
 package data_manage
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -25,7 +25,7 @@ type VarietyEdbInfo struct {
 }
 
 func (m *VarietyEdbInfo) GetItemsByCondition(cond string, pars []interface{}, fieldArr []string, orderRule string) (items []*VarietyEdbInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -35,7 +35,7 @@ func (m *VarietyEdbInfo) GetItemsByCondition(cond string, pars []interface{}, fi
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM variety_edb_info WHERE 1=1 %s %s`, fields, cond, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Find(&items).Error
 	return
 }
 

+ 4 - 2
models/document_manage_model/outside_report.go

@@ -2,6 +2,8 @@
 package document_manage_model
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
@@ -51,7 +53,7 @@ func init() {
 
 // SaveOutsideReport 保存报告
 func SaveOutsideReport(outsideReport OutsideReport) (id int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err = o.Insert(&outsideReport)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.DbNameReport].Create(&outsideReport).Error
 	return
 }

+ 5 - 2
models/document_manage_model/outside_report_attachment.go

@@ -2,6 +2,8 @@
 package document_manage_model
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 )
 
@@ -21,6 +23,7 @@ func init() {
 
 // SaveOutsideReportAttachment 保存附件
 func SaveOutsideReportAttachment(attachment *OutsideReportAttachment) (int64, error) {
-	o := orm.NewOrmUsingDB("rddp")
-	return o.Insert(attachment)
+	//o := orm.NewOrmUsingDB("rddp")
+	err := global.DbMap[utils.DbNameReport].Create(attachment).Error
+	return int64(attachment.OutsideReportAttachmentId), err
 }

+ 29 - 29
models/en_classify_permission.go

@@ -1,9 +1,9 @@
 package models
 
 import (
-	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
+	"fmt"
 	"strings"
 	"time"
 )
@@ -32,53 +32,53 @@ func (m *EnClassifyPermission) TableName() string {
 }
 
 func (m *EnClassifyPermission) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Create(m).Error
 	if err != nil {
 		return
 	}
-	m.EnClassifyPermissionId = int(id)
+	//m.EnClassifyPermissionId = int(id)
 	return
 }
 
 func (m *EnClassifyPermission) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Select(cols).Updates(m).Error
 	return
 }
 
 func (m *EnClassifyPermission) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), EnClassifyPermissionColumns.EnClassifyPermissionId)
-	_, err = o.Raw(sql, m.EnClassifyPermissionId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, m.EnClassifyPermissionId).Error
 	return
 }
 
 func (m *EnClassifyPermission) GetItemById(id int) (item *EnClassifyPermission, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), EnClassifyPermissionColumns.EnClassifyPermissionId)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }
 
 func (m *EnClassifyPermission) GetItemByCondition(condition string, pars []interface{}) (item *EnClassifyPermission, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 `, m.TableName())
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Scan(&item).Error
 	return
 }
 
 func (m *EnClassifyPermission) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *EnClassifyPermission) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EnClassifyPermission, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -88,12 +88,12 @@ func (m *EnClassifyPermission) 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.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *EnClassifyPermission) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*EnClassifyPermission, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -104,23 +104,23 @@ func (m *EnClassifyPermission) GetPageItemsByCondition(startSize, pageSize int,
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
 	totalSql := `SELECT COUNT(1) total FROM (` + sql + `) z`
-	if err = o.Raw(totalSql, pars).QueryRow(&total); err != nil {
+	if err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(totalSql, pars).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
 func ClearAndCreateEnClassifyPermissions(classifyId int, permissions []*EnClassifyPermission) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `DELETE FROM en_classify_permission WHERE en_classify_id = ?`
-	if _, e := o.Raw(sql, classifyId).Exec(); e != nil {
+	if e := global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, classifyId).Error; e != nil {
 		err = fmt.Errorf("delete err: %s", e.Error())
 		return
 	}
 	if len(permissions) > 0 {
-		if _, e := o.InsertMulti(len(permissions), permissions); e != nil {
+		if e := global.DbMap[utils.MYSQL_URL_RDDP].CreateInBatches(permissions, len(permissions)).Error; e != nil {
 			err = fmt.Errorf("insert multi err: %s", e.Error())
 			return
 		}
@@ -138,30 +138,30 @@ func GetEnglishReportIdsByEnPermissionIds(permissionIds []int) (reportIds []int,
 	if len(permissionIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT id FROM english_report WHERE classify_id_second IN (
 				SELECT DISTINCT en_classify_id FROM en_classify_permission WHERE en_permission_id IN (` + utils.GetOrmInReplace(len(permissionIds)) + `)
 			)`
-	_, err = o.Raw(sql, permissionIds).QueryRows(&reportIds)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, permissionIds).Find(&reportIds).Error
 	return
 }
 
 // GetEnPermissionIdsByEnglishReportId 获取英文报告权限IDs
 func GetEnPermissionIdsByEnglishReportId(reportId int) (permissionIds []int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT en_permission_id FROM en_classify_permission WHERE en_classify_id = (
 				SELECT classify_id_second FROM english_report WHERE id = ?
 			)`
-	_, err = o.Raw(sql, reportId).QueryRows(&permissionIds)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, reportId).Find(&permissionIds).Error
 	return
 }
 
 // GetEnPermissionIdsByEnglishVideoId 获取英文视频权限IDs
 func GetEnPermissionIdsByEnglishVideoId(videoId int) (permissionIds []int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT en_permission_id FROM en_classify_permission WHERE en_classify_id = (
 				SELECT classify_id_second FROM english_video WHERE id = ?
 			)`
-	_, err = o.Raw(sql, videoId).QueryRows(&permissionIds)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, videoId).Find(&permissionIds).Error
 	return
 }

+ 31 - 31
models/english_report.go

@@ -1,9 +1,9 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -46,27 +46,27 @@ type EnglishReport struct {
 }
 
 func (m *EnglishReport) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Select(cols).Updates(m).Error
 	return
 }
 
 func (m *EnglishReport) GetItemById(id int) (item *EnglishReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM english_report WHERE id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }
 
 func (m *EnglishReport) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM english_report WHERE 1=1 %s`, condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *EnglishReport) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*EnglishReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -76,12 +76,12 @@ func (m *EnglishReport) GetItemsByCondition(condition string, pars []interface{}
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM english_report WHERE 1=1 %s %s`, fields, condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *EnglishReport) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*EnglishReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -91,7 +91,7 @@ func (m *EnglishReport) GetPageItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM english_report WHERE 1=1 %s %s LIMIT ?,?`, fields, condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
@@ -186,16 +186,16 @@ type ElasticEnglishReportDetail struct {
 }
 
 type EnglishClassifyList struct {
-	Id            int       `orm:"column(id);pk"`
-	ClassifyName  string    `description:"分类名称"`
-	Sort          int       `description:"排序"`
-	ParentId      int       `description:"父级分类id"`
-	RootId        int       `description:"一级分类ID"`
+	Id            int    `orm:"column(id);pk"`
+	ClassifyName  string `description:"分类名称"`
+	Sort          int    `description:"排序"`
+	ParentId      int    `description:"父级分类id"`
+	RootId        int    `description:"一级分类ID"`
 	CreateTime    string `description:"创建时间"`
 	ModifyTime    string `description:"修改时间"`
-	ClassifyLabel string    `description:"分类标签"`
-	ShowType      int       `json:"-" description:"展示类型:1-列表 2-专栏"`
-	IsShow        int       `json:"-" description:"是否在小程序显示:1-显示 0-隐藏"`
+	ClassifyLabel string `description:"分类标签"`
+	ShowType      int    `json:"-" description:"展示类型:1-列表 2-专栏"`
+	IsShow        int    `json:"-" description:"是否在小程序显示:1-显示 0-隐藏"`
 	//ClassifyType  int       `description:"分类类型:0英文报告,1英文线上路演"`
 	EnPermissions []int `description:"英文权限IDs"`
 	Child         []*EnglishClassifyList
@@ -209,7 +209,7 @@ type EnglishClassifyListResp struct {
 // GetEnglishClassifyRootId 获取一级分类列表
 func GetEnglishClassifyRootId(startSize, pageSize int, keyword string) (items []*EnglishClassifyList, err error) {
 	sql := ``
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	if keyword != "" {
 		sql = `SELECT * FROM (
 			                   SELECT * FROM english_classify
@@ -221,17 +221,17 @@ func GetEnglishClassifyRootId(startSize, pageSize int, keyword string) (items []
                    )AS t
                    ORDER BY sort ASC,create_time ASC
                    LIMIT ?,? `
-		_, err = o.Raw(sql, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword), startSize, pageSize).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword), startSize, pageSize).Find(&items).Error
 	} else {
 		sql = `SELECT * FROM english_classify WHERE parent_id=0 ORDER BY sort ASC,create_time ASC LIMIT ?,? `
-		_, err = o.Raw(sql, startSize, pageSize).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, startSize, pageSize).Find(&items).Error
 	}
 	return
 }
 
 func GetEnglishClassifyListCount(keyword string) (count int, err error) {
 	sqlCount := ``
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	if keyword != "" {
 		sqlCount = `SELECT  COUNT(1) AS count FROM (
                SELECT * FROM english_classify
@@ -241,10 +241,10 @@ func GetEnglishClassifyListCount(keyword string) (count int, err error) {
                WHERE id IN(SELECT parent_id FROM english_classify
                WHERE parent_id>0 AND classify_name LIKE ?)
                )AS t `
-		err = o.Raw(sqlCount, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword)).QueryRow(&count)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sqlCount, utils.GetLikeKeyword(keyword), utils.GetLikeKeyword(keyword)).Scan(&count).Error
 	} else {
 		sqlCount = `SELECT COUNT(1) AS count FROM english_classify WHERE parent_id=0`
-		err = o.Raw(sqlCount).QueryRow(&count)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sqlCount).Scan(&count).Error
 	}
 
 	return
@@ -254,7 +254,7 @@ func GetEnglishClassifyListByRootId(rootIds []int, keyword string) (items []*Eng
 	sql := ``
 	pars := make([]interface{}, 0)
 
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	if keyword != "" {
 		sql = `SELECT
 	a.*
@@ -265,10 +265,10 @@ FROM
 	WHERE a.parent_id>0 and a.classify_name LIKE ? and a.root_id IN (` + utils.GetOrmInReplace(len(rootIds)) + `)`
 		pars = append(pars, utils.GetLikeKeyword(keyword))
 		pars = append(pars, rootIds)
-		_, err = o.Raw(sql, pars).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&items).Error
 	} else {
 		sql = `SELECT * FROM english_classify WHERE parent_id>0 and root_id IN (` + utils.GetOrmInReplace(len(rootIds)) + `) `
-		_, err = o.Raw(sql, rootIds).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, rootIds).Find(&items).Error
 	}
 	return
 }
@@ -288,9 +288,9 @@ func (m RSChildClassifyList) Swap(i, j int) {
 }
 
 func GetEnglishClassifyChildByIds(ids []int) (items []*EnglishClassifyList, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM english_classify WHERE id IN (` + utils.GetOrmInReplace(len(ids)) + `) ORDER BY create_time ASC `
-	_, err = o.Raw(sql, ids).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, ids).Find(&items).Error
 	return
 }
 
@@ -306,4 +306,4 @@ func (m RSClassifyList) Less(i, j int) bool {
 
 func (m RSClassifyList) Swap(i, j int) {
 	m[i], m[j] = m[j], m[i]
-}
+}

+ 6 - 3
models/permission.go

@@ -1,6 +1,9 @@
 package models
 
-import "github.com/beego/beego/v2/client/orm"
+import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
+)
 
 type ChartPermissionMappingIdName struct {
 	PermissionId   int
@@ -8,8 +11,8 @@ type ChartPermissionMappingIdName struct {
 }
 
 func GetChartPermissionNameFromMappingByKeyword(source string, classifyId int) (list []*ChartPermissionMappingIdName, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := " SELECT b.chart_permission_id AS permission_id,b.permission_name FROM chart_permission_search_key_word_mapping AS a INNER JOIN chart_permission AS b ON a.chart_permission_id = b.chart_permission_id WHERE a.`from` = ? AND a.classify_id = ? "
-	_, err = o.Raw(sql, source, classifyId).QueryRows(&list)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, source, classifyId).Find(&list).Error
 	return
 }

+ 55 - 54
models/report.go

@@ -1,6 +1,7 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
@@ -108,23 +109,23 @@ func GetReportListCount(condition string, pars []interface{}, companyType string
 		companyTypeSqlStr = " AND classify_id_first = 40 "
 	}
 
-	oRddp := orm.NewOrmUsingDB("rddp")
+	//oRddp := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT COUNT(1) AS count  FROM report WHERE 1=1 ` + companyTypeSqlStr
 	if condition != "" {
 		sql += condition
 	}
-	err = oRddp.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func GetReportList(condition string, pars []interface{}, startSize, pageSize int) (items []*Report, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM report WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY FIELD(state,3,1,4,5,6,2), modify_time DESC LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
@@ -133,30 +134,30 @@ func PublishReport(reportIds []int) (err error) {
 	if len(reportIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `UPDATE report SET state=2,publish_time=now(),modify_time=NOW() WHERE id IN (` + utils.GetOrmInReplace(len(reportIds)) + `)`
-	_, err = o.Raw(sql).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql).Error
 	return
 }
 
 // PublishCancleReport 取消发布报告
 func PublishCancleReport(reportIds int, publishTimeNullFlag bool) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	var sql string
 	if publishTimeNullFlag {
 		sql = ` UPDATE report SET state=1, publish_time=null, pre_publish_time=null, pre_msg_send=0 WHERE id =?`
 	} else {
 		sql = ` UPDATE report SET state=1, pre_publish_time=null, pre_msg_send=0 WHERE id =?`
 	}
-	_, err = o.Raw(sql, reportIds).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, reportIds).Error
 	return
 }
 
 // 删除报告
 func DeleteReport(reportIds int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ` DELETE FROM report WHERE id =? `
-	_, err = o.Raw(sql, reportIds).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, reportIds).Error
 	return
 }
 
@@ -190,34 +191,34 @@ type ReportDetail struct {
 }
 
 func GetReportById(reportId int) (item *Report, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM report WHERE id=?`
-	err = o.Raw(sql, reportId).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, reportId).Scan(&item).Error
 	return
 }
 
 func GetReportStage(classifyIdFirst, classifyIdSecond int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ``
 	if classifyIdSecond > 0 {
 		sql = "SELECT MAX(stage) AS max_stage FROM report WHERE classify_id_second=? "
-		o.Raw(sql, classifyIdSecond).QueryRow(&count)
+		global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyIdSecond).Scan(&count)
 	} else {
 		sql = "SELECT MAX(stage) AS max_stage FROM report WHERE classify_id_first=? "
-		o.Raw(sql, classifyIdFirst).QueryRow(&count)
+		global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyIdFirst).Scan(&count)
 	}
 	return
 }
 
 func GetReportStageEdit(classifyIdFirst, classifyIdSecond, reportId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ``
 	if classifyIdSecond > 0 {
 		sql = "SELECT MAX(stage) AS max_stage FROM report WHERE classify_id_second=? AND id<>? "
-		o.Raw(sql, classifyIdSecond, reportId).QueryRow(&count)
+		global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyIdSecond, reportId).Scan(&count)
 	} else {
 		sql = "SELECT MAX(stage) AS max_stage FROM report WHERE classify_id_first=? AND id<>? "
-		o.Raw(sql, classifyIdFirst, reportId).QueryRow(&count)
+		global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyIdFirst, reportId).Scan(&count)
 	}
 	return
 }
@@ -289,7 +290,7 @@ type EditResp struct {
 }
 
 func EditReport(item *Report, reportId int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `UPDATE report
 			SET
 			  classify_id_first =?,
@@ -307,8 +308,8 @@ func EditReport(item *Report, reportId int64) (err error) {
 			  create_time = ?,
 			  modify_time = ?
 			WHERE id = ? `
-	_, err = o.Raw(sql, item.ClassifyIdFirst, item.ClassifyNameFirst, item.ClassifyIdSecond, item.ClassifyNameSecond, item.Title,
-		item.Abstract, item.Author, item.Frequency, item.State, item.Content, item.ContentSub, item.Stage, item.CreateTime, time.Now(), reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, item.ClassifyIdFirst, item.ClassifyNameFirst, item.ClassifyIdSecond, item.ClassifyNameSecond, item.Title,
+		item.Abstract, item.Author, item.Frequency, item.State, item.Content, item.ContentSub, item.Stage, item.CreateTime, time.Now(), reportId).Error
 	return
 }
 
@@ -326,23 +327,23 @@ type SendTemplateMsgReq struct {
 }
 
 func ModifyReportVideo(reportId int, videoUrl, videoName, videoSize string, playSeconds float64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `UPDATE report SET video_url=?,video_name=?,video_play_seconds=?,video_size=? WHERE id=? `
-	_, err = o.Raw(sql, videoUrl, videoName, playSeconds, videoSize, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, videoUrl, videoName, playSeconds, videoSize, reportId).Error
 	return
 }
 
 func EditReportContent(reportId int, content, contentSub string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ` UPDATE report SET content=?,content_sub=?,modify_time=NOW() WHERE id=? `
-	_, err = o.Raw(sql, content, contentSub, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, content, contentSub, reportId).Error
 	return
 }
 
 func AddReportSaveLog(reportId, adminId int, content, contentSub, adminName string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ` INSERT INTO report_save_log(report_id, content,content_sub,admin_id,admin_name) VALUES (?,?,?,?,?) `
-	_, err = o.Raw(sql, reportId, content, contentSub, adminId, adminName).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, reportId, content, contentSub, adminId, adminName).Error
 	return
 }
 
@@ -351,75 +352,75 @@ type SaveReportContentResp struct {
 }
 
 func ModifyReportCode(reportId int64, reportCode string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `UPDATE report SET report_code=? WHERE id=? `
-	_, err = o.Raw(sql, reportCode, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, reportCode, reportId).Error
 	return
 }
 
 func ModifyReportThsMsgIsSend(item *ReportDetail) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	if item.ThsMsgIsSend == 0 {
 		sql := `UPDATE report SET ths_msg_is_send = 1 WHERE id = ? `
-		_, err = o.Raw(sql, item.Id).Exec()
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, item.Id).Error
 	}
 	return
 }
 
 // GetDayWeekReportStage 获取晨报周报期数
 func GetDayWeekReportStage(classifyIdFirst int, yearStart time.Time) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := " SELECT MAX(stage) AS max_stage FROM report WHERE classify_id_first = ? AND create_time > ? "
-	o.Raw(sql, classifyIdFirst, yearStart).QueryRow(&count)
+	global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyIdFirst, yearStart).Scan(&count)
 
 	return
 }
 
 // GetReportByReportId 主键获取报告
 func GetReportByReportId(reportId int) (item *Report, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM report WHERE id = ?`
-	err = o.Raw(sql, reportId).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, reportId).Scan(&item).Error
 	return
 }
 
 // 发布报告
 func PublishReportById(reportId, state int, publishTime time.Time) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := `UPDATE report SET state = ?, publish_time = ?, pre_publish_time = null, pre_msg_send=0, modify_time = NOW() WHERE id = ? `
-	_, err = o.Raw(sql, state, publishTime, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, state, publishTime, reportId).Error
 	return
 }
 
 func UpdateReportPublishTime(reportId int, videoNameDate string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql1 := ` UPDATE report SET publish_time = NOW() WHERE id = ?  `
-	_, err = o.Raw(sql1, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql1, reportId).Error
 	if err != nil {
 		return
 	}
 	//修改音频标题
 	sql2 := ` UPDATE report SET video_name=CONCAT(SUBSTRING_INDEX(video_name,"(",1),"` + videoNameDate + `") WHERE id = ? and (video_name !="" and video_name is not null)`
-	_, err = o.Raw(sql2, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql2, reportId).Error
 	return
 }
 
 func UpdateReportChapterPublishTime(reportId int, videoNameDate string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql1 := ` UPDATE report_chapter SET publish_time = NOW() WHERE report_id = ? `
-	_, err = o.Raw(sql1, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql1, reportId).Error
 	if err != nil {
 		return
 	}
 	//修改音频标题
 	sql2 := ` UPDATE report_chapter SET video_name=CONCAT(SUBSTRING_INDEX(video_name,"(",1),"` + videoNameDate + `") WHERE report_id = ? and (video_name !="" and video_name is not null)`
-	_, err = o.Raw(sql2, reportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql2, reportId).Error
 	return
 }
 
 // GetReportByCondition 获取报告
 func GetReportByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, isPage bool, startSize, pageSize int) (items []*Report, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := `*`
 	if len(fieldArr) > 0 {
 		fields = strings.Join(fieldArr, ",")
@@ -433,9 +434,9 @@ func GetReportByCondition(condition string, pars []interface{}, fieldArr []strin
 	sql += order
 	if isPage {
 		sql += ` LIMIT ?,?`
-		_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	} else {
-		_, err = o.Raw(sql, pars).QueryRows(&items)
+		err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&items).Error
 	}
 	return
 }
@@ -568,8 +569,8 @@ type ReportApproveReq struct {
 
 // UpdateReport 更新报告
 func (m *Report) UpdateReport(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Select(cols).Updates(m).Error
 	return
 }
 
@@ -601,8 +602,8 @@ func GetClassifyList(startSize, pageSize int, keyWord, companyType string) (item
 	}
 	pars = append(pars, startSize, pageSize)
 
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -631,8 +632,8 @@ func GetClassifyListCount(keyWord, companyType string) (count int, err error) {
 	} else {
 		sqlCount = `SELECT COUNT(1) AS count FROM classify WHERE parent_id=0 ` + companyTypeSqlStr
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	err = o.Raw(sqlCount, pars...).QueryRow(&count)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sqlCount, pars...).Scan(&count).Error
 	return
 }
 
@@ -659,7 +660,7 @@ func GetClassifyListByKeywordV2(keyWord string, enabled int) (items []*ClassifyL
 	}
 	sql += ` ORDER BY sort ASC, create_time ASC`
 
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 19 - 9
models/report/report_chapter_permission_mapping.go

@@ -1,6 +1,7 @@
 package report
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
@@ -24,28 +25,37 @@ type ReportChapterPermissionMapping struct {
 // @param list []*ReportChapterPermissionMapping
 // @return err error
 func (m ReportChapterPermissionMapping) MultiAddReportChapterPermissionMappingPermission(reportChapterId int, list []*ReportChapterPermissionMapping) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	//o := orm.NewOrmUsingDB("rddp")
+	//to, err := o.Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = to.Rollback()
+	//	} else {
+	//		_ = to.Commit()
+	//	}
+	//}()
+
+	tx := global.DbMap[utils.DbNameReport].Begin()
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
+			tx.Rollback()
 		} else {
-			_ = to.Commit()
+			tx.Commit()
 		}
 	}()
 
 	sql := "DELETE from report_chapter_permission_mapping where report_chapter_id=?"
-	_, err = to.Raw(sql, reportChapterId).Exec()
+	err = tx.Exec(sql, reportChapterId).Error
 	if err != nil {
 		return
 	}
 
 	// 新增品种权限记录
 	if len(list) > 0 {
-		_, tmpErr := to.InsertMulti(500, list)
+		tmpErr := tx.CreateInBatches(list, 500).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return

+ 5 - 5
models/report_chapter.go

@@ -1,8 +1,8 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -45,9 +45,9 @@ type ReportChapter struct {
 
 // GetChapterListByReportId 根据ReportId获取章节列表
 func GetChapterListByReportId(reportId int) (list []*ReportChapter, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ` SELECT * FROM report_chapter WHERE report_id = ?  ORDER BY sort ASC`
-	_, err = o.Raw(sql, reportId).QueryRows(&list)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, reportId).Find(&list).Error
 
 	return
 }
@@ -131,9 +131,9 @@ func FormatReportChapterItem(origin *ReportChapter) (item *ReportChapterItem) {
 
 // GetPublishedChapterListByReportId 根据ReportId获取已发布章节列表
 func GetPublishedChapterListByReportId(reportId int) (list []*ReportChapter, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := ` SELECT * FROM report_chapter WHERE report_id = ? AND publish_state = 2 ORDER BY sort ASC`
-	_, err = o.Raw(sql, reportId).QueryRows(&list)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, reportId).Find(&list).Error
 
 	return
 }

+ 4 - 3
models/report_state_record.go

@@ -1,7 +1,8 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"time"
 )
 
@@ -16,7 +17,7 @@ type ReportStateRecord struct {
 }
 
 func AddReportStateRecord(item *ReportStateRecord) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Create(item).Error
 	return
 }

+ 10 - 9
models/resource.go

@@ -1,7 +1,8 @@
 package models
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"time"
 )
 
@@ -24,25 +25,25 @@ type ResourceResp struct {
 }
 
 func AddResource(item *Resource) (newId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 
 	sql := "INSERT INTO resource(resource_url,create_time,resource_type) VALUES(?,?,?)"
-	res, err := o.Raw(sql, item.ResourceUrl, item.CreateTime, item.ResourceType).Exec()
-	if err != nil {
-		return 0, err
-	}
-	newId, err = res.LastInsertId()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, item.ResourceUrl, item.CreateTime, item.ResourceType).Error
 	if err != nil {
 		return 0, err
 	}
+	//newId, err = res.LastInsertId()
+	//if err != nil {
+	//	return 0, err
+	//}
 
 	return newId, err
 }
 
 func GetResourceById(id string) (item *Resource, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := "SELECT * FROM resource WHERE id=? "
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }
 

+ 14 - 13
models/sandbox/sandbox.go

@@ -1,7 +1,8 @@
 package sandbox
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -31,16 +32,16 @@ type SandboxItem struct {
 
 // Update 沙盘字段变更
 func (sandbox *Sandbox) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(sandbox, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	err = global.DbMap[utils.DbNameIndex].Select(cols).Updates(sandbox).Error
 	return
 }
 
 // GetSandboxById 根据沙盘id获取沙盘详情
 func GetSandboxById(sandboxId int) (sandboxInfo *SandboxItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `select * from sandbox where sandbox_id = ? and is_delete = 0`
-	err = o.Raw(sql, sandboxId).QueryRow(&sandboxInfo)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, sandboxId).Scan(&sandboxInfo).Error
 	return
 }
 
@@ -72,7 +73,7 @@ type SandboxListItem struct {
 }
 
 func GetSandboxClassify(sandboxClassifyId int) (sandbox_classify_id string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT GROUP_CONCAT(t.sandbox_classify_id) AS sandbox_classify_id FROM (
 			SELECT a.sandbox_classify_id FROM sandbox_classify AS a 
 			WHERE a.sandbox_classify_id=?
@@ -86,7 +87,7 @@ func GetSandboxClassify(sandboxClassifyId int) (sandbox_classify_id string, err
 WHERE
 	parent_id IN ( SELECT sandbox_classify_id FROM sandbox_classify WHERE parent_id = ? )
 			)AS t`
-	err = o.Raw(sql, sandboxClassifyId, sandboxClassifyId, sandboxClassifyId).QueryRow(&sandbox_classify_id)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, sandboxClassifyId, sandboxClassifyId, sandboxClassifyId).Scan(&sandbox_classify_id).Error
 	return
 }
 
@@ -96,23 +97,23 @@ type SandboxListItems struct {
 }
 
 func GetSandboxListByCondition(condition string, pars []interface{}, startSize, pageSize int) (item []*SandboxListItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM sandbox WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += " ORDER BY create_time DESC LIMIT ?,? "
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars, startSize, pageSize).Find(&item).Error
 	return
 }
 
 func GetSandboxListCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT COUNT(1) AS count FROM sandbox WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
@@ -122,7 +123,7 @@ type SandboxListResp struct {
 }
 
 func GetSandboxAllParentByClassifyId(sandboxClassifyId int) (ids string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT
 	GROUP_CONCAT(DISTINCT m.sandbox_classify_id  ORDER BY m.level) AS ids 
 FROM
@@ -154,7 +155,7 @@ FROM
 	INNER JOIN sandbox_classify m 
 WHERE
 	sandbox_classify_id = vm._id `
-	err = o.Raw(sql, sandboxClassifyId).QueryRow(&ids)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, sandboxClassifyId).Scan(&ids).Error
 	return
 }
 

+ 30 - 28
models/sandbox/sandbox_classify.go

@@ -1,6 +1,8 @@
 package sandbox
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
@@ -29,17 +31,17 @@ func AddSandboxClassify(item *SandboxClassify) (lastId int64, err error) {
 
 // GetSandboxClassifyByParentId
 func GetSandboxClassifyByParentId(parentId int) (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM sandbox_classify WHERE parent_id=? order by sort asc,sandbox_classify_id asc`
-	_, err = o.Raw(sql, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId).Find(&items).Error
 	return
 }
 
 // GetSandboxClassifyAll
 func GetSandboxClassifyAll() (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM sandbox_classify WHERE parent_id<>0 order by sort asc,sandbox_classify_id asc`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
@@ -73,17 +75,17 @@ type AddSandboxClassifyReq struct {
 }
 
 func GetSandboxClassifyCount(sandboxClassifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT COUNT(1) AS count FROM sandbox_classify WHERE parent_id=? AND sandbox_classify_name=? `
-	err = o.Raw(sql, parentId, sandboxClassifyName).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId, sandboxClassifyName).Scan(&count).Error
 	return
 }
 
 // GetSandboxClassifyMaxSort 获取沙盘分类下最大的排序数
 func GetSandboxClassifyMaxSort(parentId int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT Max(sort) AS sort FROM sandbox_classify WHERE parent_id=? `
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
@@ -95,16 +97,16 @@ type EditSandboxClassifyReq struct {
 }
 
 func GetSandboxClassifyById(classifyId int) (item *SandboxClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM sandbox_classify WHERE sandbox_classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).Scan(&item).Error
 	return
 }
 
 func EditSandboxClassify(classifyId, ChartPermissionId int, sandboxClassifyName, ChartPermissionName string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `UPDATE sandbox_classify SET sandbox_classify_name=?,chart_permission_id = ?, chart_permission_name = ?, modify_time=NOW() WHERE sandbox_classify_id=? `
-	_, err = o.Raw(sql, sandboxClassifyName, ChartPermissionId, ChartPermissionName, classifyId).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, sandboxClassifyName, ChartPermissionId, ChartPermissionName, classifyId).Error
 	return
 }
 
@@ -113,7 +115,7 @@ type SandboxClassifyDeleteCheckReq struct {
 }
 
 func GetSandboxInfoCountByClassifyId(classifyId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT COUNT(1) AS count FROM sandbox AS a
 				WHERE a.sandbox_classify_id IN(
 				SELECT t.sandbox_classify_id FROM 
@@ -126,7 +128,7 @@ func GetSandboxInfoCountByClassifyId(classifyId int) (count int, err error) {
 				UNION SELECT * FROM sandbox_classify WHERE sandbox_classify_id = @pid 
 				)AS t
 				) AND a.is_delete = 0 `
-	err = o.Raw(sql, classifyId).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).Scan(&count).Error
 	return
 }
 
@@ -141,7 +143,7 @@ type DeleteSandboxClassifyReq struct {
 }
 
 func DeleteSandboxClassify(classifyId int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` DELETE FROM sandbox_classify
 				WHERE sandbox_classify_id IN(
 				SELECT t.sandbox_classify_id FROM
@@ -154,7 +156,7 @@ func DeleteSandboxClassify(classifyId int) (err error) {
 				UNION SELECT * FROM sandbox_classify WHERE sandbox_classify_id = @pid
 				)AS t
 				) `
-	_, err = o.Raw(sql, classifyId).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, classifyId).Error
 	return
 }
 
@@ -171,33 +173,33 @@ type MoveSandboxClassifyReq struct {
 
 // UpdateSandboxClassifySortByParentId 根据沙盘父类id更新排序
 func UpdateSandboxClassifySortByParentId(parentId, classifyId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` update sandbox_classify set sort = ` + updateSort + ` WHERE parent_id=? and sort > ? `
 	if classifyId > 0 {
 		sql += ` or ( sandbox_classify_id > ` + fmt.Sprint(classifyId) + ` and sort= ` + fmt.Sprint(nowSort) + `)`
 	}
-	_, err = o.Raw(sql, parentId, nowSort).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, parentId, nowSort).Error
 	return
 }
 
 // GetFirstSandboxClassifyByParentId 获取当前父级沙盘分类下的排序第一条的数据
 func GetFirstSandboxClassifyByParentId(parentId int) (item *SandboxClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM sandbox_classify WHERE parent_id=? order by sort asc,sandbox_classify_id asc limit 1`
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId).Scan(&item).Error
 	return
 }
 
 // Update 更新沙盘分类基础信息
 func (sandboxClassify *SandboxClassify) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(sandboxClassify, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	err = global.DbMap[utils.DbNameIndex].Select(cols).Updates(sandboxClassify).Error
 	return
 }
 
 // GetSandboxClassifyAndInfoByParentId
 func GetSandboxClassifyAndInfoByParentId(parentId int) (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT
 	0 AS sandbox_id,
 	sandbox_classify_id,
@@ -237,7 +239,7 @@ WHERE
 ORDER BY
 	sort ASC,
 	sandbox_classify_id ASC`
-	_, err = o.Raw(sql, parentId, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId, parentId).Find(&items).Error
 	return
 }
 
@@ -262,7 +264,7 @@ type SandboxLinkCheckResp struct {
 
 // 获取所有子级分类id
 func GetSandboxClassifySubcategories(classifyId int) (Ids string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT GROUP_CONCAT(sandbox_classify_id) AS ids
 FROM (
 SELECT @pv := ? AS sandbox_classify_id
@@ -272,14 +274,14 @@ FROM sandbox_classify sc
 JOIN (SELECT @pv := ?) initial
 WHERE sc.parent_id = @pv
 ) subcategories; `
-	err = o.Raw(sql, classifyId, classifyId).QueryRow(&Ids)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId, classifyId).Scan(&Ids).Error
 	return
 }
 
 // UpdateSandboxClassifyChartPermissionById 根据沙盘id更新品种
 func UpdateSandboxClassifyChartPermissionById(ChartPermissionId int, ChartPermissionName, Ids string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` UPDATE sandbox_classify SET chart_permission_id = ?, chart_permission_name = ? WHERE sandbox_classify_id IN ( ` + Ids + ` ) `
-	_, err = o.Raw(sql, ChartPermissionId, ChartPermissionName).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, ChartPermissionId, ChartPermissionName).Error
 	return
 }

+ 23 - 24
models/smart_report.go

@@ -1,9 +1,9 @@
 package models
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"html"
 	"strings"
@@ -60,12 +60,11 @@ func (m *SmartReport) PrimaryId() string {
 }
 
 func (m *SmartReport) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Create(m).Error
 	if err != nil {
 		return
 	}
-	m.SmartReportId = int(id)
 	return
 }
 
@@ -73,21 +72,21 @@ func (m *SmartReport) CreateMulti(items []*SmartReport) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].CreateInBatches(items, len(items)).Error
 	return
 }
 
 func (m *SmartReport) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SmartReport) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SmartReportId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, m.SmartReportId).Error
 	return
 }
 
@@ -95,39 +94,39 @@ func (m *SmartReport) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	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.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SmartReport) GetItemById(id int) (item *SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }
 
 func (m *SmartReport) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	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.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&item).Error
 	return
 }
 
 func (m *SmartReport) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&count).Error
 	return
 }
 
 func (m *SmartReport) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -137,12 +136,12 @@ func (m *SmartReport) 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.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Find(&items).Error
 	return
 }
 
 func (m *SmartReport) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -152,14 +151,14 @@ func (m *SmartReport) GetPageItemsByCondition(condition string, pars []interface
 		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.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
 func (m *SmartReport) GetMaxStageByClassifyId(classifyId int) (stage int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT MAX(stage) AS max_stage FROM %s WHERE classify_id_second = ?`, m.TableName())
-	err = o.Raw(sql, classifyId).QueryRow(&stage)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, classifyId).Scan(&stage).Error
 	return
 }
 

+ 16 - 16
models/smart_resource.go

@@ -1,8 +1,9 @@
 package models
 
 import (
+	"eta/eta_hub/global"
+	"eta/eta_hub/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -26,25 +27,24 @@ func (m *SmartReportResource) PrimaryId() string {
 }
 
 func (m *SmartReportResource) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Create(m).Error
 	if err != nil {
 		return
 	}
-	m.ResourceId = int(id)
 	return
 }
 
 func (m *SmartReportResource) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("rddp")
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SmartReportResource) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.ResourceId).Exec()
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Exec(sql, m.ResourceId).Error
 	return
 }
 
@@ -64,14 +64,14 @@ type SmartReportResourceListResp struct {
 }
 
 func (m *SmartReportResource) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars).Scan(&count).Error
 	return
 }
 
 func (m *SmartReportResource) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, startSize, pageSize int) (items []*SmartReportResourceItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -79,7 +79,7 @@ func (m *SmartReportResource) GetPageItemsByCondition(condition string, pars []i
 	order := ` ORDER BY create_time DESC`
 
 	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.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, pars, startSize, pageSize).Find(&items).Error
 	return
 }
 
@@ -91,9 +91,9 @@ type SmartReportResourceEditReq struct {
 }
 
 func (m *SmartReportResource) GetItemById(id int) (item *SmartReportResource, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }
 
@@ -111,8 +111,8 @@ type SmartReportResourceAddReq struct {
 }
 
 func GetResourceItemById(id int) (item *SmartReportResource, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	//o := orm.NewOrmUsingDB("rddp")
 	sql := fmt.Sprintf(`SELECT * FROM smart_report_resource WHERE resource_id = ? LIMIT 1`)
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.MYSQL_URL_RDDP].Raw(sql, id).Scan(&item).Error
 	return
 }

+ 5 - 5
models/system/sys_user.go

@@ -1,8 +1,8 @@
 package system
 
 import (
+	"eta/eta_hub/global"
 	"eta/eta_hub/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -86,7 +86,7 @@ type AdminItem struct {
 
 // GetSysUserByAdminName 账号获取用户
 func GetSysUserByAdminName(adminName string) (item *AdminItem, err error) {
-	o := orm.NewOrm()
+	//o := orm.NewOrm()
 	sql := `SELECT
 				a.*, b.role_type_code
 			FROM
@@ -95,15 +95,15 @@ func GetSysUserByAdminName(adminName string) (item *AdminItem, err error) {
 			WHERE
 				a.admin_name = ?
 			LIMIT 1`
-	err = o.Raw(sql, adminName).QueryRow(&item)
+	err = global.DEFAULT_DB.Raw(sql, adminName).Scan(&item).Error
 	return
 }
 
 // GetUserByAdminName 根据系统用户名获取用户信息
 func GetUserByAdminName(adminName string) (item *AdminItem, err error) {
-	o := orm.NewOrm()
+	//o := orm.NewOrm()
 	sql := `SELECT * FROM admin WHERE admin_name = ? LIMIT 1`
-	err = o.Raw(sql, adminName).QueryRow(&item)
+	err = global.DEFAULT_DB.Raw(sql, adminName).Scan(&item).Error
 
 	if err != nil && err.Error() == utils.ErrNoRow() {
 		return nil, nil

+ 7 - 0
utils/config.go

@@ -21,6 +21,7 @@ var (
 	Rc            RedisClient  //redis缓存
 	MgoDataCli    *qmgo.Client // mongodb客户端连接
 	MgoDataDbName string       // mongodb指标数据的库名
+	DbDriverName  string       // 数据库驱动名称
 )
 
 // 日志配置
@@ -295,4 +296,10 @@ func init() {
 		S3DisableSSL = config["s3_disable_ssl"]
 		S3OpenAcl = config["s3_open_acl"]
 	}
+
+	// 数据库驱动名称
+	DbDriverName = config["db_driver_name"]
+	if DbDriverName == "" {
+		DbDriverName = "mysql"
+	}
 }

+ 15 - 0
utils/constants.go

@@ -176,3 +176,18 @@ const (
 	STORAGESOURCE_MINIO_NAME = "minio"
 	STORAGESOURCE_S3_NAME    = "s3"
 )
+
+const (
+	DbDriverByMysql = "mysql"
+	DbDriverByDm    = "dm"
+)
+
+const (
+	DbNameMaster      = "eta_master"
+	DbNameReport      = "eta_report"
+	DbNameManualIndex = "eta_manual_index"
+	DbNameIndex       = "eta_index"
+	DbNameGL          = "eta_gl"
+	DbNameAI          = "eta_ai"
+	DbNameWeekly      = "weekly_report"
+)