2021-12-07 10:46:44 +00:00
|
|
|
package initialize
|
|
|
|
|
|
|
|
|
|
import (
|
2022-05-22 09:52:14 +00:00
|
|
|
"github.com/flipped-aurora/gin-vue-admin/server/config"
|
2021-12-07 10:46:44 +00:00
|
|
|
"github.com/flipped-aurora/gin-vue-admin/server/global"
|
|
|
|
|
"gorm.io/gorm"
|
|
|
|
|
)
|
|
|
|
|
|
2021-12-08 05:16:25 +00:00
|
|
|
const sys = "system"
|
2021-12-08 04:57:15 +00:00
|
|
|
|
2021-12-07 10:46:44 +00:00
|
|
|
func DBList() {
|
|
|
|
|
dbMap := make(map[string]*gorm.DB)
|
|
|
|
|
for _, info := range global.GVA_CONFIG.DBList {
|
|
|
|
|
if info.Disable {
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
switch info.Type {
|
|
|
|
|
case "mysql":
|
2022-05-26 06:24:59 +00:00
|
|
|
dbMap[info.AliasName] = GormMysqlByConfig(config.Mysql{GeneralDB: info.GeneralDB})
|
2022-12-31 17:26:57 +00:00
|
|
|
case "mssql":
|
|
|
|
|
dbMap[info.AliasName] = GormMssqlByConfig(config.Mssql{GeneralDB: info.GeneralDB})
|
2021-12-07 10:46:44 +00:00
|
|
|
case "pgsql":
|
2022-05-26 06:24:59 +00:00
|
|
|
dbMap[info.AliasName] = GormPgSqlByConfig(config.Pgsql{GeneralDB: info.GeneralDB})
|
2022-10-23 13:04:17 +00:00
|
|
|
case "oracle":
|
|
|
|
|
dbMap[info.AliasName] = GormOracleByConfig(config.Oracle{GeneralDB: info.GeneralDB})
|
2021-12-07 10:46:44 +00:00
|
|
|
default:
|
|
|
|
|
continue
|
|
|
|
|
}
|
|
|
|
|
}
|
2021-12-08 04:57:15 +00:00
|
|
|
// 做特殊判断,是否有迁移
|
|
|
|
|
// 适配低版本迁移多数据库版本
|
2021-12-08 05:16:25 +00:00
|
|
|
if sysDB, ok := dbMap[sys]; ok {
|
2021-12-08 04:57:15 +00:00
|
|
|
global.GVA_DB = sysDB
|
|
|
|
|
}
|
2021-12-07 10:46:44 +00:00
|
|
|
global.GVA_DBList = dbMap
|
|
|
|
|
}
|