Browse Source

数据库兼容改造

kobe6258 2 tháng trước cách đây
mục cha
commit
f8be0a2ae4

+ 36 - 32
models/data_manage/chart_theme/chart_theme.go

@@ -2,14 +2,16 @@ package chart_theme
 
 import (
 	"errors"
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_chart_lib/global"
+	"eta/eta_chart_lib/utils"
 	"time"
 )
 
 // ChartTheme
 // @Description: 图表主题表
 type ChartTheme struct {
-	ChartThemeId     int       `description:"图表主题类型ID" orm:"column(chart_theme_id);pk"`
+	//ChartThemeId     int       `description:"图表主题类型ID" orm:"column(chart_theme_id);pk"`
+	ChartThemeId     int       `description:"图表主题类型ID" gorm:"column:chart_theme_id;primaryKey"`
 	ChartThemeName   string    `description:"图表主题名称"`
 	ChartThemeTypeId int       `description:"图表主题类型ID"`
 	ChartImage       string    `description:"缩略图"`
@@ -30,10 +32,10 @@ type ChartTheme struct {
 // @return item *ChartTheme
 // @return err error
 func GetChartThemeId(chartThemeId int) (item *ChartTheme, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme where chart_theme_id = ? AND is_delete = 0`
-	err = o.Raw(sql, chartThemeId).QueryRow(&item)
-
+	//err = o.Raw(sql, chartThemeId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeId).First(&item).Error
 	return
 }
 
@@ -49,12 +51,13 @@ func (m *ChartTheme) Add() (err error) {
 		err = errors.New("该配置已存在")
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	lastId, err := o.Insert(m)
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err := o.Insert(m)
+	err = global.DbMap[utils.DbNameIndex].Create(&m).Error
 	if err != nil {
 		return
 	}
-	m.ChartThemeId = int(lastId)
+	//m.ChartThemeId = int(lastId)
 
 	return
 }
@@ -67,8 +70,9 @@ func (m *ChartTheme) Add() (err error) {
 // @param cols []string
 // @return err error
 func (m *ChartTheme) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(m, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&m).Select(cols).Updates(&m).Error
 	return
 }
 
@@ -79,10 +83,10 @@ func (m *ChartTheme) Update(cols []string) (err error) {
 // @return list []*ChartTheme
 // @return err error
 func GetChartThemeListByTypeId(chartThemeTypeId int) (list []*ChartTheme, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme WHERE chart_theme_type_id = ? AND  is_delete=0 ORDER BY chart_theme_id ASC `
-	_, err = o.Raw(sql, chartThemeTypeId).QueryRows(&list)
-
+	//_, err = o.Raw(sql, chartThemeTypeId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).Find(&list).Error
 	return
 }
 
@@ -93,10 +97,10 @@ func GetChartThemeListByTypeId(chartThemeTypeId int) (list []*ChartTheme, err er
 // @return list []*ChartTheme
 // @return err error
 func GetAllChartThemeList() (list []*ChartTheme, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme WHERE  is_delete=0 ORDER BY chart_theme_id ASC `
-	_, err = o.Raw(sql).QueryRows(&list)
-
+	//_, err = o.Raw(sql).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&list).Error
 	return
 }
 
@@ -125,12 +129,12 @@ type ChartThemeItem struct {
 // @return list []*ChartThemeConfig
 // @return err error
 func GetChartThemeItemList(chartThemeTypeId int) (list []*ChartThemeItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT a.*,b.default_chart_theme_id FROM chart_theme a 
          JOIN chart_theme_type b on a.chart_theme_type_id =b.chart_theme_type_id 
          WHERE a.chart_theme_type_id = ? AND a.is_delete=0 ORDER BY a.chart_theme_id ASC `
-	_, err = o.Raw(sql, chartThemeTypeId).QueryRows(&list)
-
+	//_, err = o.Raw(sql, chartThemeTypeId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).Find(&list).Error
 	return
 }
 
@@ -142,11 +146,11 @@ func GetChartThemeItemList(chartThemeTypeId int) (list []*ChartThemeItem, err er
 // @return item *ChartTheme
 // @return err error
 func GetSystemChartTheme(chartThemeTypeId int) (item *ChartTheme, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT a.* FROM chart_theme a
          WHERE a.chart_theme_type_id = ? AND a.is_system_theme=1 ORDER BY a.chart_theme_id ASC `
-	err = o.Raw(sql, chartThemeTypeId).QueryRow(&item)
-
+	//err = o.Raw(sql, chartThemeTypeId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).First(&item).Error
 	return
 }
 
@@ -191,7 +195,7 @@ type DrawOption struct {
 
 type LineOptions struct {
 	DashStyle string  `json:"dashStyle"`
-	LineWidth float64     `json:"lineWidth"`
+	LineWidth float64 `json:"lineWidth"`
 	LineType  string  `json:"lineType"`
 	Radius    float64 `json:"radius"`
 }
@@ -223,13 +227,13 @@ type NewLineOptions struct {
 }
 
 type LineStyleOptions struct {
-	DashStyle string `json:"dashStyle"`
-	Color     string `json:"color"`
-	LineWidth float64    `json:"lineWidth"`
-	LineType  string `json:"lineType"`
-	Radius    int    `json:"radius"`
-	DataMark  string `json:"dataMark"`
-	MarkType  string `json:"markType"`
-	MarkSize  int    `json:"markSize"`
-	MarkColor string `json:"markColor"`
+	DashStyle string  `json:"dashStyle"`
+	Color     string  `json:"color"`
+	LineWidth float64 `json:"lineWidth"`
+	LineType  string  `json:"lineType"`
+	Radius    int     `json:"radius"`
+	DataMark  string  `json:"dataMark"`
+	MarkType  string  `json:"markType"`
+	MarkSize  int     `json:"markSize"`
+	MarkColor string  `json:"markColor"`
 }

+ 19 - 16
models/data_manage/chart_theme/chart_theme_type.go

@@ -1,14 +1,16 @@
 package chart_theme
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_chart_lib/global"
+	"eta/eta_chart_lib/utils"
 	"time"
 )
 
 // ChartThemeType
 // @Description: 图表主题类型表
 type ChartThemeType struct {
-	ChartThemeTypeId    int       `description:"图表主题类型ID" orm:"column(chart_theme_type_id);pk"`
+	//ChartThemeTypeId    int       `description:"图表主题类型ID" orm:"column(chart_theme_type_id);pk"`
+	ChartThemeTypeId    int       `description:"图表主题类型ID" gorm:"column:chart_theme_type_id;primaryKey"`
 	ChartTypeName       string    `description:"类型名称"`
 	ChartType           int       `description:"图表类型"`
 	ChartSource         int       `description:"图表来源"`
@@ -25,8 +27,9 @@ type ChartThemeType struct {
 // @param cols []string
 // @return err error
 func (m *ChartThemeType) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(m, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&m).Select(cols).Updates(&m).Error
 	return
 }
 
@@ -37,10 +40,10 @@ func (m *ChartThemeType) Update(cols []string) (err error) {
 // @return list []*ChartThemeType
 // @return err error
 func GetAllChartThemeTypeList() (list []*ChartThemeType, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme_type ORDER BY chart_theme_type_id ASC `
-	_, err = o.Raw(sql).QueryRows(&list)
-
+	//_, err = o.Raw(sql).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&list).Error
 	return
 }
 
@@ -52,10 +55,10 @@ func GetAllChartThemeTypeList() (list []*ChartThemeType, err error) {
 // @return list []*ChartThemeType
 // @return err error
 func GetChartThemeTypeListBySource(source int) (list []*ChartThemeType, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme_type WHERE chart_source = ?  ORDER BY chart_theme_type_id ASC `
-	_, err = o.Raw(sql, source).QueryRows(&list)
-
+	//_, err = o.Raw(sql, source).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source).Find(&list).Error
 	return
 }
 
@@ -67,10 +70,10 @@ func GetChartThemeTypeListBySource(source int) (list []*ChartThemeType, err erro
 // @return item *ChartThemeType
 // @return err error
 func GetChartThemeTypeById(chartThemeTypeId int) (item *ChartThemeType, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme_type where chart_theme_type_id = ? `
-	err = o.Raw(sql, chartThemeTypeId).QueryRow(&item)
-
+	//err = o.Raw(sql, chartThemeTypeId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartThemeTypeId).First(&item).Error
 	return
 }
 
@@ -82,9 +85,9 @@ func GetChartThemeTypeById(chartThemeTypeId int) (item *ChartThemeType, err erro
 // @return item *ChartThemeType
 // @return err error
 func GetChartThemeTypeByChartTypeAndSource(chartType, source int) (item *ChartThemeType, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_theme_type where chart_type = ? AND chart_source = ? `
-	err = o.Raw(sql, chartType, source).QueryRow(&item)
-
+	//err = o.Raw(sql, chartType, source).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartType, source).First(&item).Error
 	return
 }

+ 14 - 10
models/data_manage/cross_variety/chart_tag.go

@@ -1,15 +1,16 @@
 package cross_variety
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ChartTag
 // @Description: chart_tag 图表标签表
 type ChartTag struct {
-	ChartTagId      int       `orm:"column(chart_tag_id);pk"`
+	//ChartTagId      int       `orm:"column(chart_tag_id);pk"`
+	ChartTagId      int       `gorm:"column:chart_tag_id;primaryKey"`
 	ChartTagName    string    `description:"标签名称"`
 	ChartTagNameEn  string    `description:"标签名称(英文)"`
 	SysUserId       int       `description:"创建人id"`
@@ -26,16 +27,18 @@ type ChartTag struct {
 // @param updateColList []string
 // @return err error
 func (item *ChartTag) Update(updateColList []string) (err error) {
-	to := orm.NewOrmUsingDB("data")
-	_, err = to.Update(item, updateColList...)
+	//to := orm.NewOrmUsingDB("data")
+	//_, err = to.Update(item, updateColList...)
 
+	err = global.DbMap[utils.DbNameIndex].Model(&item).Select(updateColList).Updates(&item).Error
 	return
 }
 
 // Delete 删除
 func (item *ChartTag) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(item)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(item)
+	err = global.DbMap[utils.DbNameIndex].Delete(&item).Error
 	return
 }
 
@@ -51,9 +54,10 @@ func GetTagListByIdList(idList []int) (items []*ChartTag, err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM chart_tag WHERE 1 = 1 AND chart_tag_id in (` + utils.GetOrmInReplace(num) + `)`
-	_, err = o.Raw(sql, idList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM chart_tag WHERE 1 = 1 AND chart_tag_id in (` + utils.GetOrmInReplace(num) + `)`
+	//_, err = o.Raw(sql, idList).QueryRows(&items)
+	sql := `SELECT * FROM chart_tag WHERE 1 = 1 AND chart_tag_id in ?`
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, idList).Find(&items).Error
 	return
 }

+ 8 - 6
models/data_manage/cross_variety/chart_tag_variety.go

@@ -1,15 +1,16 @@
 package cross_variety
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ChartTagVariety
 // @Description: chart_tag_variety 图表标签品种关系表
 type ChartTagVariety struct {
-	Id                        int       `orm:"column(id);pk"`
+	//Id                        int       `orm:"column(id);pk"`
+	Id                        int       `gorm:"column:id;primaryKey"`
 	ChartTagId                int       `description:"标签id"`
 	ChartVarietyId            int       `description:"品种id"`
 	EdbInfoId                 int       `description:"指标id"`
@@ -32,9 +33,10 @@ func GetChartTagVarietyListByTagAndVariety(chartTagId int, varietyIdList []int)
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM chart_tag_variety WHERE chart_tag_id = ? AND chart_variety_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, chartTagId, varietyIdList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM chart_tag_variety WHERE chart_tag_id = ? AND chart_variety_id in (` + utils.GetOrmInReplace(num) + `) `
+	sql := `SELECT * FROM chart_tag_variety WHERE chart_tag_id = ? AND chart_variety_id in ? `
+	//_, err = o.Raw(sql, chartTagId, varietyIdList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartTagId, varietyIdList).Find(&items).Error
 	return
 }

+ 27 - 23
models/data_manage/cross_variety/chart_variety.go

@@ -1,15 +1,16 @@
 package cross_variety
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ChartVariety
 // @Description: chart_variety 图表品种表
 type ChartVariety struct {
-	ChartVarietyId     int       `orm:"column(chart_variety_id);pk"`
+	//ChartVarietyId     int       `orm:"column(chart_variety_id);pk"`
+	ChartVarietyId     int       `gorm:"column:chart_variety_id;primaryKey"`
 	ChartVarietyName   string    `description:"品种名称"`
 	ChartVarietyNameEn string    `description:"品种名称(英文)"`
 	SysUserId          int       `description:"创建人id"`
@@ -26,10 +27,10 @@ type ChartVariety struct {
 // @return item *ChartVariety
 // @return err error
 func GetVarietyById(id int) (item *ChartVariety, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_variety WHERE chart_variety_id = ?`
-	err = o.Raw(sql, id).QueryRow(&item)
-
+	//err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, id).First(&item).Error
 	return
 }
 
@@ -41,10 +42,10 @@ func GetVarietyById(id int) (item *ChartVariety, err error) {
 // @return item *ChartVariety
 // @return err error
 func GetVarietyByName(name string) (item *ChartVariety, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_variety WHERE chart_variety_name = ?`
-	err = o.Raw(sql, name).QueryRow(&item)
-
+	//err = o.Raw(sql, name).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, name).First(&item).Error
 	return
 }
 
@@ -55,13 +56,14 @@ func GetVarietyByName(name string) (item *ChartVariety, err error) {
 // @param item *ChartVariety
 // @return err error
 func AddVariety(item *ChartVariety) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	lastId, err := o.Insert(item)
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err := o.Insert(item)
+	err = global.DbMap[utils.DbNameIndex].Create(&item).Error
 	if err != nil {
 		return
 	}
 
-	item.ChartVarietyId = int(lastId)
+	//item.ChartVarietyId = int(lastId)
 
 	return
 }
@@ -74,16 +76,17 @@ func AddVariety(item *ChartVariety) (err error) {
 // @param updateColList []string
 // @return err error
 func (item *ChartVariety) Update(updateColList []string) (err error) {
-	to := orm.NewOrmUsingDB("data")
-	_, err = to.Update(item, updateColList...)
-
+	//to := orm.NewOrmUsingDB("data")
+	//_, err = to.Update(item, updateColList...)
+	err = global.DbMap[utils.DbNameIndex].Model(&item).Select(updateColList).Updates(&item).Error
 	return
 }
 
 // Delete 删除
 func (item *ChartVariety) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(item)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(item)
+	err = global.DbMap[utils.DbNameIndex].Delete(&item).Error
 	return
 }
 
@@ -94,10 +97,10 @@ func (item *ChartVariety) Delete() (err error) {
 // @return items []*ChartVariety
 // @return err error
 func GetVarietyList() (items []*ChartVariety, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM chart_variety WHERE 1 = 1 `
-	_, err = o.Raw(sql).QueryRows(&items)
-
+	//_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
@@ -113,9 +116,10 @@ func GetVarietyListByIdList(idList []int) (items []*ChartVariety, err error) {
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM chart_variety WHERE 1 = 1 AND chart_variety_id in (` + utils.GetOrmInReplace(num) + `)`
-	_, err = o.Raw(sql, idList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM chart_variety WHERE 1 = 1 AND chart_variety_id in (` + utils.GetOrmInReplace(num) + `)`
+	sql := `SELECT * FROM chart_variety WHERE 1 = 1 AND chart_variety_id in ?`
+	//_, err = o.Raw(sql, idList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, idList).Find(&items).Error
 	return
 }

+ 27 - 16
models/data_manage/excel/excel_chart_data.go

@@ -1,14 +1,16 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/models"
+	"eta/eta_chart_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 type ExcelChartData struct {
-	ExcelChartDataId int `orm:"column(excel_chart_data_id);pk"`
+	//ExcelChartDataId int `orm:"column(excel_chart_data_id);pk"`
+	ExcelChartDataId int `gorm:"column:excel_chart_data_id;primaryKey"`
 	ExcelInfoId      int `description:"表格id"`
 	ExcelChartEdbId  int `description:"指标ID"`
 	ChartInfoId      int `description:"图表id"`
@@ -25,38 +27,43 @@ func (e *ExcelChartData) TableName() string {
 
 // 新增
 func (e *ExcelChartData) Add() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Insert(e)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Insert(e)
+	err = global.DbMap[utils.DbNameIndex].Create(&e).Error
 	return
 }
 
 // 修改
 func (e *ExcelChartData) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(e, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(e, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&e).Select(cols).Updates(&e).Error
 	return
 }
 
 // 删除
 func (e *ExcelChartData) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(e)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(e)
+	err = global.DbMap[utils.DbNameIndex].Delete(&e).Error
 	return
 }
 
 // 查询
 func GetExcelChartDataByExcelInfoId(excelInfoId int) (list []*ExcelChartData, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
              FROM excel_chart_data
 			 WHERE excel_info_id=? 
             ORDER BY excel_chart_edb_id ASC, data_time desc, excel_chart_data_id ASC `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&list).Error
 	return
 }
 
 func BatchUpdateChartEdbData(excelInfoId int, excelEdbMap map[int]*ExcelChartEdb, excelDataMap map[int][]*models.EdbDataList) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -69,7 +76,8 @@ func BatchUpdateChartEdbData(excelInfoId int, excelEdbMap map[int]*ExcelChartEdb
 	}()
 	//如果有数据则删除所有的数据
 	sql := `delete from excel_chart_data where excel_info_id = ?`
-	_, err = o.Raw(sql, excelInfoId).Exec()
+	//_, err = o.Raw(sql, excelInfoId).Exec()
+	err = o.Exec(sql, excelInfoId).Error
 	if err != nil {
 		return
 	}
@@ -96,7 +104,8 @@ func BatchUpdateChartEdbData(excelInfoId int, excelEdbMap map[int]*ExcelChartEdb
 			addList = append(addList, chartData)
 			// data信息入库
 			if len(addList) > 1000 {
-				_, err = o.InsertMulti(len(addList), addList)
+				//_, err = o.InsertMulti(len(addList), addList)
+				err = o.CreateInBatches(addList, len(addList)).Error
 				if err != nil {
 					return
 				}
@@ -107,7 +116,8 @@ func BatchUpdateChartEdbData(excelInfoId int, excelEdbMap map[int]*ExcelChartEdb
 
 	// data信息入库
 	if len(addList) > 0 {
-		_, err = o.InsertMulti(len(addList), addList)
+		//_, err = o.InsertMulti(len(addList), addList)
+		err = o.CreateInBatches(addList, len(addList)).Error
 		if err != nil {
 			return
 		}
@@ -116,11 +126,12 @@ func BatchUpdateChartEdbData(excelInfoId int, excelEdbMap map[int]*ExcelChartEdb
 }
 
 func GetExcelChartDataByChartInfoId(chartInfoId int) (list []*ExcelChartData, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
              FROM excel_chart_Data
 			 WHERE chart_info_id=? 
              ORDER BY excel_chart_edb_id ASC `
-	_, err = o.Raw(sql, chartInfoId).QueryRows(&list)
+	//_, err = o.Raw(sql, chartInfoId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoId).Find(&list).Error
 	return
 }

+ 86 - 47
models/data_manage/excel/excel_chart_edb.go

@@ -1,17 +1,20 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/models"
 	"eta/eta_chart_lib/utils"
 	"fmt"
 	"github.com/beego/beego/v2/client/orm"
+	"gorm.io/gorm"
 	"strconv"
 	"strings"
 	"time"
 )
 
 type ExcelChartEdb struct {
-	ExcelChartEdbId int       `orm:"column(excel_chart_edb_id);pk"`
+	//ExcelChartEdbId int       `orm:"column(excel_chart_edb_id);pk"`
+	ExcelChartEdbId int       `gorm:"column:excel_chart_edb_id;primaryKey"`
 	ExcelInfoId     int       `description:"表格id"`
 	ChartInfoId     int       `description:"图表id"`
 	EdbCode         string    `description:"指标编码"`
@@ -79,22 +82,25 @@ func (e *ExcelChartEdb) TableName() string {
 
 // 新增
 func (e *ExcelChartEdb) Add() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Insert(e)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Insert(e)
+	err = global.DbMap[utils.DbNameIndex].Create(&e).Error
 	return
 }
 
 // 修改
 func (e *ExcelChartEdb) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(e, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(e, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&e).Select(cols).Updates(&e).Error
 	return
 }
 
 // 删除
 func (e *ExcelChartEdb) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(e)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(e)
+	err = global.DbMap[utils.DbNameIndex].Delete(&e).Error
 	return
 }
 
@@ -105,7 +111,8 @@ type AddChartEdbAndDataItem struct {
 
 // 同时添加指标和指标数据
 func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chartInfo *models.ChartInfo, deleteEdbIds []int) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -119,8 +126,10 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
 
 	// 先删除原先的绑定的指标
 	if len(deleteEdbIds) > 0 && chartInfo.ChartInfoId > 0 {
-		sql := `DELETE FROM excel_chart_edb WHERE chart_info_id = ? AND excel_chart_edb_id in (` + utils.GetOrmInReplace(len(deleteEdbIds)) + `)`
-		_, err = o.Raw(sql, chartInfo.ChartInfoId, deleteEdbIds).Exec()
+		//sql := `DELETE FROM excel_chart_edb WHERE chart_info_id = ? AND excel_chart_edb_id in (` + utils.GetOrmInReplace(len(deleteEdbIds)) + `)`
+		sql := `DELETE FROM excel_chart_edb WHERE chart_info_id = ? AND excel_chart_edb_id in ?`
+		//_, err = o.Raw(sql, chartInfo.ChartInfoId, deleteEdbIds).Exec()
+		err = o.Exec(sql, chartInfo.ChartInfoId, deleteEdbIds).Error
 		if err != nil {
 			err = fmt.Errorf("删除原先的指标失败:%v", err)
 			return
@@ -141,14 +150,17 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
 	//新增图表
 	chartInfoId := chartInfo.ChartInfoId
 	if chartInfo.ChartInfoId <= 0 {
-		lastId, e := o.Insert(chartInfo)
-		if e != nil {
+		//lastId, e := o.Insert(chartInfo)
+		err = o.Create(&chartInfo).Error
+		if err != nil {
 			err = fmt.Errorf("新增图表失败,AddChartEdbAndData: %v", e)
 			return
 		}
-		chartInfoId = int(lastId)
+		//chartInfoId = int(lastId)
+		chartInfoId = chartInfo.ChartInfoId
 	} else {
-		_, err = o.Update(chartInfo)
+		//_, err = o.Update(chartInfo)
+		err = o.Save(&chartInfo).Error
 		if err != nil {
 			err = fmt.Errorf("更新图表失败,AddChartEdbAndData: %v", e)
 			return
@@ -156,8 +168,10 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
 	}
 
 	//更新图表id
-	sql := `update excel_chart_edb set chart_info_id = ? where excel_chart_edb_id in (` + utils.GetOrmInReplace(len(updateIds)) + `) and chart_info_id=0`
-	_, err = o.Raw(sql, chartInfoId, updateIds).Exec()
+	//sql := `update excel_chart_edb set chart_info_id = ? where excel_chart_edb_id in (` + utils.GetOrmInReplace(len(updateIds)) + `) and chart_info_id=0`
+	sql := `update excel_chart_edb set chart_info_id = ? where excel_chart_edb_id in ? and chart_info_id=0`
+	//_, err = o.Raw(sql, chartInfoId, updateIds).Exec()
+	err = o.Exec(sql, chartInfoId, updateIds).Error
 	if err != nil {
 		err = fmt.Errorf("更新图表id失败,AddChartEdbAndData: %v", err)
 		return
@@ -167,30 +181,36 @@ func (e *ExcelChartEdb) AddChartEdbAndData(list []*AddChartEdbAndDataItem, chart
 		edbInfoIdStr := strings.Join(edbInfoIdArrStr, ",")
 		//更新图表关联的指标id
 		sql = `update chart_info set edb_info_ids = ? where chart_info_id = ?`
-		_, err = o.Raw(sql, edbInfoIdStr, chartInfoId).Exec()
+		//_, err = o.Raw(sql, edbInfoIdStr, chartInfoId).Exec()
+		err = o.Exec(sql, edbInfoIdStr, chartInfoId).Error
 	}
 	return
 }
 
-func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*ExcelChartData) (err error) {
+// func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*ExcelChartData) (err error) {
+func addChartEdbAndData(o *gorm.DB, chartEdb *ExcelChartEdb, dataList []*ExcelChartData) (err error) {
 	// 图表指标信息入库
 	excelChartEdbId := chartEdb.ExcelChartEdbId
 	if chartEdb.ExcelChartEdbId <= 0 {
-		lastId, e := o.Insert(chartEdb)
+		//lastId, e := o.Insert(chartEdb)
+		e := o.Create(&chartEdb).Error
 		if e != nil {
 			err = fmt.Errorf("新增指标失败,addChartEdbAndData: %v", e)
 			return
 		}
-		excelChartEdbId = int(lastId)
+		//excelChartEdbId = int(lastId)
+		excelChartEdbId = chartEdb.ExcelChartEdbId
 	} else {
-		_, e := o.Update(chartEdb)
+		//_, e := o.Update(chartEdb)
+		e := o.Save(&chartEdb).Error
 		if e != nil {
 			err = fmt.Errorf("更新指标失败,addChartEdbAndData: %v", e)
 			return
 		}
 		//如果有数据则删除所有的数据
 		sql := `delete from excel_chart_data where excel_chart_edb_id = ?`
-		_, err = o.Raw(sql, excelChartEdbId).Exec()
+		//_, err = o.Raw(sql, excelChartEdbId).Exec()
+		err = o.Exec(sql, excelChartEdbId).Error
 		if err != nil {
 			return
 		}
@@ -215,7 +235,8 @@ func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*Exce
 			addList = append(addList, chartData)
 			// data信息入库
 			if len(addList) > 1000 {
-				_, err = o.InsertMulti(len(addList), addList)
+				//_, err = o.InsertMulti(len(addList), addList)
+				err = o.CreateInBatches(addList, len(addList)).Error
 				if err != nil {
 					return
 				}
@@ -226,7 +247,8 @@ func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*Exce
 
 	// data信息入库
 	if len(addList) > 0 {
-		_, err = o.InsertMulti(len(addList), addList)
+		//_, err = o.InsertMulti(len(addList), addList)
+		err = o.CreateInBatches(addList, len(addList)).Error
 		if err != nil {
 			return
 		}
@@ -235,53 +257,62 @@ func addChartEdbAndData(o orm.TxOrmer, chartEdb *ExcelChartEdb, dataList []*Exce
 }
 
 func GetExcelChartEdbMappingByExcelInfoId(excelInfoId int) (list []*ExcelChartEdb, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
              FROM excel_chart_edb 
 			 WHERE excel_info_id=? 
              ORDER BY chart_info_id asc, excel_chart_edb_id ASC `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&list).Error
 	return
 }
 
 func GetExcelChartEdbMappingByExcelInfoIds(excelInfoIds []int) (list []*ExcelChartEdb, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
+	//sql := ` SELECT *
+	//         FROM excel_chart_edb
+	//		 WHERE excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
 	sql := ` SELECT *
              FROM excel_chart_edb 
-			 WHERE excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
-	_, err = o.Raw(sql, excelInfoIds).QueryRows(&list)
+			 WHERE excel_info_id in ?`
+	//_, err = o.Raw(sql, excelInfoIds).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoIds).Find(&list).Error
 	return
 }
 
 func GetExcelChartEdbById(id int) (item *ExcelChartEdb, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_chart_edb WHERE excel_chart_edb_id=? `
-	err = o.Raw(sql, id).QueryRow(&item)
+	//err = o.Raw(sql, id).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, id).First(&item).Error
 	return
 }
 
 func GetExcelChartEdbMappingByChartInfoId(chartInfoId int) (list []*ExcelChartEdb, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
              FROM excel_chart_edb 
 			 WHERE chart_info_id=? 
              ORDER BY excel_chart_edb_id ASC `
-	_, err = o.Raw(sql, chartInfoId).QueryRows(&list)
+	//_, err = o.Raw(sql, chartInfoId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoId).Find(&list).Error
 	return
 }
 
 func GetExcelInfoByChartInfoId(chartInfoId int) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT i.*
              FROM excel_chart_edb e left join excel_info i on e.excel_info_id=i.excel_info_id
 			 WHERE e.chart_info_id=? limit 1`
-	err = o.Raw(sql, chartInfoId).QueryRow(&item)
+	//err = o.Raw(sql, chartInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoId).First(&item).Error
 	return
 }
 
 // 同时删除指标和指标数据
 func DeleteExcelChartEdbAndData(excelInfoIds []int, chartInfoIds []int) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -294,16 +325,20 @@ func DeleteExcelChartEdbAndData(excelInfoIds []int, chartInfoIds []int) (err err
 	}()
 	// 把对应的表格状态改成删除状态
 	//更新图表id
-	sql := `update excel_info set is_delete = 1, modify_time = ? where excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
-	_, err = o.Raw(sql, time.Now(), excelInfoIds).Exec()
+	//sql := `update excel_info set is_delete = 1, modify_time = ? where excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
+	sql := `update excel_info set is_delete = 1, modify_time = ? where excel_info_id in ?`
+	//_, err = o.Raw(sql, time.Now(), excelInfoIds).Exec()
+	err = o.Exec(sql, time.Now(), excelInfoIds).Error
 	if err != nil {
 		err = fmt.Errorf("更新图表id失败,AddChartEdbAndData: %v", err)
 		return
 	}
 	// 把删除图表状态
 	if len(chartInfoIds) > 0 {
-		sql := `DELETE FROM chart_info WHERE  chart_info_id in (` + utils.GetOrmInReplace(len(chartInfoIds)) + `)`
-		_, err = o.Raw(sql, chartInfoIds).Exec()
+		//sql := `DELETE FROM chart_info WHERE  chart_info_id in (` + utils.GetOrmInReplace(len(chartInfoIds)) + `)`
+		sql := `DELETE FROM chart_info WHERE  chart_info_id in ?`
+		//_, err = o.Raw(sql, chartInfoIds).Exec()
+		err = o.Exec(sql, chartInfoIds).Error
 		if err != nil {
 			err = fmt.Errorf("删除原先的指标失败:%v", err)
 			return
@@ -312,15 +347,19 @@ func DeleteExcelChartEdbAndData(excelInfoIds []int, chartInfoIds []int) (err err
 		// todo 如果加入到我的图库中,则删除我的图库中的数据
 	}
 	// 删除原先的绑定的指标
-	sql = `DELETE FROM excel_chart_edb WHERE  excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
-	_, err = o.Raw(sql, excelInfoIds).Exec()
+	//sql = `DELETE FROM excel_chart_edb WHERE  excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
+	//_, err = o.Raw(sql, excelInfoIds).Exec()
+	sql = `DELETE FROM excel_chart_edb WHERE  excel_info_id in ?`
+	err = o.Exec(sql, excelInfoIds).Error
 	if err != nil {
 		err = fmt.Errorf("删除原先的指标失败:%v", err)
 		return
 	}
 	// 删除指标数据
-	sql = `DELETE FROM excel_chart_data WHERE  excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
-	_, err = o.Raw(sql, excelInfoIds).Exec()
+	//sql = `DELETE FROM excel_chart_data WHERE  excel_info_id in (` + utils.GetOrmInReplace(len(excelInfoIds)) + `)`
+	//_, err = o.Raw(sql, excelInfoIds).Exec()
+	sql = `DELETE FROM excel_chart_data WHERE  excel_info_id in ?`
+	err = o.Exec(sql, excelInfoIds).Error
 	if err != nil {
 		err = fmt.Errorf("删除原先的指标失败:%v", err)
 		return
@@ -343,20 +382,20 @@ func DeleteBalanceExcelChartInfoAndData(chartInfoId int) (err error) {
 		}
 	}()
 
-	sql := ` DELETE FROM chart_info WHERE chart_info_id=? `
+	sql := ` DELETE FROM chart_info WHERE chart_info_id = ? `
 	_, err = to.Raw(sql, chartInfoId).Exec()
 	if err != nil {
 		err = fmt.Errorf("删除平衡表图表失败 %s", err.Error())
 		return
 	}
-	sql = ` DELETE FROM  excel_chart_edb WHERE chart_info_id=? `
+	sql = ` DELETE FROM  excel_chart_edb WHERE chart_info_id = ? `
 	_, err = to.Raw(sql, chartInfoId).Exec()
 	if err != nil {
 		err = fmt.Errorf("删除平衡表图表指标失败 %s", err.Error())
 		return
 	}
 	// 删除表格里的数据
-	sql = ` DELETE FROM  excel_chart_data WHERE chart_info_id=? `
+	sql = ` DELETE FROM  excel_chart_data WHERE chart_info_id = ? `
 	_, err = to.Raw(sql, chartInfoId).Exec()
 	if err != nil {
 		err = fmt.Errorf("删除平衡表图表指标失败 %s", err.Error())

+ 65 - 47
models/data_manage/excel/excel_classify.go

@@ -1,15 +1,16 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ExcelClassify excel表格分类
 type ExcelClassify struct {
-	ExcelClassifyId   int       `orm:"column(excel_classify_id);pk"`
+	//ExcelClassifyId   int       `orm:"column(excel_classify_id);pk"`
+	ExcelClassifyId   int       `gorm:"column:excel_classify_id;primaryKey"`
 	Source            int       `description:"表格来源,1:excel插件的表格,2:自定义表格,3:混合表格,4:自定义分析,默认:1"`
 	ExcelClassifyName string    `description:"分类名称"`
 	ParentId          int       `description:"父级id"`
@@ -26,28 +27,30 @@ type ExcelClassify struct {
 
 // AddExcelClassify 添加excel分类
 func AddExcelClassify(item *ExcelClassify) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	lastId, err = o.Insert(item)
-	if err != nil {
-		return
-	}
-	item.ExcelClassifyId = int(lastId)
-
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err = o.Insert(item)
+	//if err != nil {
+	//	return
+	//}
+	//item.ExcelClassifyId = int(lastId)
+	err = global.DbMap[utils.DbNameIndex].Create(&item).Error
 	return
 }
 
 // GetExcelClassifyCount 获取同级分类下存在同名分类的数量
 func GetExcelClassifyCount(ExcelClassifyName string, parentId, source int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT COUNT(1) AS count FROM excel_classify WHERE parent_id=? AND source = ? AND excel_classify_name=? AND is_delete=0 `
-	err = o.Raw(sql, parentId, source, ExcelClassifyName).QueryRow(&count)
+	//err = o.Raw(sql, parentId, source, ExcelClassifyName).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId, source, ExcelClassifyName).Scan(&count).Error
 	return
 }
 
 func GetExcelClassifyById(classifyId int) (item *ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM excel_classify WHERE excel_classify_id=? AND is_delete=0 `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	//err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).First(&item).Error
 	return
 }
 
@@ -63,9 +66,11 @@ func GetExcelClassifyByIdList(classifyIdList []int) (items []*ExcelClassify, err
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM excel_classify WHERE excel_classify_id in (` + utils.GetOrmInReplace(num) + `) AND is_delete=0 `
-	_, err = o.Raw(sql, classifyIdList).QueryRows(&items)
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM excel_classify WHERE excel_classify_id in (` + utils.GetOrmInReplace(num) + `) AND is_delete=0 `
+	//_, err = o.Raw(sql, classifyIdList).QueryRows(&items)
+	sql := `SELECT * FROM excel_classify WHERE excel_classify_id in ? AND is_delete=0 `
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyIdList).Find(&items).Error
 	return
 }
 
@@ -77,44 +82,49 @@ func GetExcelClassifyByIdList(classifyIdList []int) (items []*ExcelClassify, err
 // @return items []*ExcelClassify
 // @return err error
 func GetExcelClassifyBySourceAndIsJoinPermission(source, isJoinPermission int) (items []*ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM excel_classify WHERE source = ? AND is_join_permission = ? `
-	_, err = o.Raw(sql, source, isJoinPermission).QueryRows(&items)
-
+	//_, err = o.Raw(sql, source, isJoinPermission).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source, isJoinPermission).Find(&items).Error
 	return
 }
 
 func GetChildClassifyById(classifyId int) (items []*ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM excel_classify WHERE parent_id=? AND is_delete=0 `
-	_, err = o.Raw(sql, classifyId).QueryRows(&items)
+	//_, err = o.Raw(sql, classifyId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).Find(&items).Error
 	return
 }
 
 func GetExcelClassifyByParentId(parentId, source int) (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE parent_id=? AND source = ? AND is_delete=0 order by sort asc,excel_classify_id asc`
-	_, err = o.Raw(sql, parentId, source).QueryRows(&items)
+	//_, err = o.Raw(sql, parentId, source).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId, source).Find(&items).Error
 	return
 }
 
 func GetExcelClassifyBySource(source int) (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE  source = ? AND is_delete=0 order by sort asc,excel_classify_id asc`
-	_, err = o.Raw(sql, source).QueryRows(&items)
+	//_, err = o.Raw(sql, source).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source).Find(&items).Error
 	return
 }
 
 func GetExcelClassifyBySourceOrderByLevel(source int) (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE  source = ? AND is_delete=0 order by level asc, sort asc,excel_classify_id asc`
-	_, err = o.Raw(sql, source).QueryRows(&items)
+	//_, err = o.Raw(sql, source).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source).Find(&items).Error
 	return
 }
 func GetExcelClassifyAll() (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE parent_id<>0 AND is_delete=0 order by sort asc,excel_classify_id asc`
-	_, err = o.Raw(sql).QueryRows(&items)
+	//_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
@@ -135,58 +145,64 @@ type ExcelClassifyItems struct {
 }
 
 func GetExcelClassifyByCondition(condition string, pars []interface{}) (item *ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&item)
+	//err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).First(&item).Error
 	return
 }
 
 // GetNextExcelClassifyByCondition 获取下一个分类
 func GetNextExcelClassifyByCondition(condition string, pars []interface{}) (item *ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += " ORDER BY sort asc , create_time ASC LIMIT 1 "
-	err = o.Raw(sql, pars).QueryRow(&item)
+	//err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).First(&item).Error
 	return
 }
 
 // GetFirstExcelClassifyByParentId 获取当前父级图表分类下的排序第一条的数据
 func GetFirstExcelClassifyByParentId(parentId int) (item *ExcelClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_classify WHERE parent_id=? AND is_delete=0 order by sort asc,excel_classify_id asc limit 1`
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	//err = o.Raw(sql, parentId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId).First(&item).Error
 	return
 }
 
 // UpdateExcelClassifySortByParentId 根据图表父类id更新排序
 func UpdateExcelClassifySortByParentId(parentId, classifyId, nowSort int, updateSort string, source int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` update excel_classify set sort = ` + updateSort + ` WHERE parent_id=? and source=? and sort > ? AND is_delete=0 `
 	if classifyId > 0 {
 		sql += ` or ( excel_classify_id > ` + fmt.Sprint(classifyId) + ` and sort= ` + fmt.Sprint(nowSort) + `)`
 	}
-	_, err = o.Raw(sql, parentId, source, nowSort).Exec()
+	//_, err = o.Raw(sql, parentId, source, nowSort).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, parentId, source, nowSort).Error
 	return
 }
 
 // Update 更新图表分类基础信息
 func (ExcelClassify *ExcelClassify) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(ExcelClassify, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(ExcelClassify, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&ExcelClassify).Select(cols).Updates(&ExcelClassify).Error
 	return
 }
 
 // GetExcelClassifyMaxSort 获取图表分类下最大的排序数
 func GetExcelClassifyMaxSort(parentId int, source int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT Max(sort) AS sort FROM excel_classify WHERE parent_id=? AND source = ? AND is_delete=0 `
-	err = o.Raw(sql, parentId, source).QueryRow(&sort)
+	//err = o.Raw(sql, parentId, source).QueryRow(&sort)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, parentId, source).Scan(&sort).Error
 	return
 }
 
@@ -197,9 +213,10 @@ type ExcelClassifyView struct {
 }
 
 func GetExcelClassifyViewById(classifyId int) (item *ExcelClassifyView, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT * FROM excel_classify WHERE excel_classify_id=? AND is_delete=0 `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	//err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).First(&item).Error
 	return
 }
 
@@ -220,9 +237,10 @@ func GetClassifyByIdList(classifyIdList []int) (items []*ExcelClassify, err erro
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM excel_classify WHERE excel_classify_id in (` + utils.GetOrmInReplace(num) + `) AND is_delete=0 `
-	_, err = o.Raw(sql, classifyIdList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM excel_classify WHERE excel_classify_id in (` + utils.GetOrmInReplace(num) + `) AND is_delete=0 `
+	sql := `SELECT * FROM excel_classify WHERE excel_classify_id in ? AND is_delete=0 `
+	//_, err = o.Raw(sql, classifyIdList).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyIdList).Find(&items).Error
 	return
 }

+ 14 - 10
models/data_manage/excel/excel_draft.go

@@ -1,13 +1,15 @@
 package excel
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_chart_lib/global"
+	"eta/eta_chart_lib/utils"
 	"time"
 )
 
 // ExcelDraft 沙盘推演草稿表
 type ExcelDraft struct {
-	ExcelDraftId int       `orm:"column(excel_draft_id);pk" description:"excel表格草稿记录id"`
+	//ExcelDraftId int       `orm:"column(excel_draft_id);pk" description:"excel表格草稿记录id"`
+	ExcelDraftId int       `gorm:"column:excel_draft_id;primaryKey" description:"excel表格草稿记录id"`
 	ExcelId      int       `description:"excel表格id"`
 	Name         string    `description:"excel表格名称"`
 	Content      string    `description:"excel数据"`
@@ -18,20 +20,22 @@ type ExcelDraft struct {
 
 // AddExcelDraft 添加一个新的excel表格草稿
 func AddExcelDraft(excelDraft *ExcelDraft) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	// 新增草稿
-	id, err := o.Insert(excelDraft)
-	if err != nil {
-		return
-	}
-	excelDraft.ExcelDraftId = int(id)
+	//id, err := o.Insert(excelDraft)
+	//if err != nil {
+	//	return
+	//}
+	//excelDraft.ExcelDraftId = int(id)
+	err = global.DbMap[utils.DbNameIndex].Create(&excelDraft).Error
 	return
 }
 
 // GetLastExcelDraftById 根据沙盘id获取最后一条沙盘草稿详情
 func GetLastExcelDraftById(excelId int) (excelDraft *ExcelDraft, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `select * from excel_draft where excel_id = ? order by excel_draft_id desc `
-	err = o.Raw(sql, excelId).QueryRow(&excelDraft)
+	//err = o.Raw(sql, excelId).QueryRow(&excelDraft)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelId).First(&excelDraft).Error
 	return
 }

+ 30 - 22
models/data_manage/excel/excel_edb_mapping.go

@@ -1,15 +1,16 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ExcelEdbMapping excel与指标的关系表
 type ExcelEdbMapping struct {
-	ExcelEdbMappingId int       `orm:"column(excel_edb_mapping_id);pk"`
+	//ExcelEdbMappingId int       `orm:"column(excel_edb_mapping_id);pk"`
+	ExcelEdbMappingId int       `gorm:"column:excel_edb_mapping_id;primaryKey"`
 	ExcelInfoId       int       `description:"excel的id"`
 	Source            int       `description:"表格来源,1:excel插件的表格,2:自定义表格,3:混合表格,4:自定义分析,默认:1"`
 	EdbInfoId         int       `description:"计算指标id"`
@@ -19,35 +20,38 @@ type ExcelEdbMapping struct {
 
 // AddExcelEdbMappingMulti 批量添加excel与指标的关系
 func AddExcelEdbMappingMulti(items []*ExcelEdbMapping) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.InsertMulti(len(items), items)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.InsertMulti(len(items), items)
+	err = global.DbMap[utils.DbNameIndex].CreateInBatches(items, len(items)).Error
 	return
 }
 
 // Add 添加excel与指标的关系
 func (e *ExcelEdbMapping) Add() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Insert(e)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Insert(e)
+	err = global.DbMap[utils.DbNameIndex].Create(&e).Error
 	return
 }
 
 // GetExcelEdbMappingByEdbInfoId 根据指标id获取配置关系
 func GetExcelEdbMappingByEdbInfoId(edbInfoId int) (item *ExcelEdbMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *  FROM excel_edb_mapping WHERE 1=1 AND edb_info_id = ? `
 
-	err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	//err = o.Raw(sql, edbInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbInfoId).First(&item).Error
 	return
 }
 
 // GetExcelEdbMappingByExcelInfoId 根据excel的id获取配置关系
 func GetExcelEdbMappingByExcelInfoId(excelInfoId int) (items []*ExcelEdbMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *  FROM excel_edb_mapping AS a 
            join edb_info as b on a.edb_info_id = b.edb_info_id
            WHERE 1=1 AND a.excel_info_id = ? `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
-
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&items).Error
 	return
 }
 
@@ -71,30 +75,33 @@ type CalculateFormula struct {
 
 // GetAllExcelEdbMappingItemByExcelInfoId 根据品种id获取所有的指标结果集
 func GetAllExcelEdbMappingItemByExcelInfoId(excelInfoId int) (items []*ExcelEdbMappingItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT a.edb_info_id,a.unique_code,a.edb_name,a.classify_id,a.frequency,a.unit,calculate_formula FROM edb_info AS a 
          JOIN excel_edb_mapping AS b ON a.edb_info_id=b.edb_info_id 
          WHERE b.excel_info_id = ? ORDER BY b.excel_edb_mapping_id ASC `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&items).Error
 	return
 }
 
 // GetNoCustomAnalysisExcelEdbMappingCount 根据指标id获取非自定义分析的关联关系
 func GetNoCustomAnalysisExcelEdbMappingCount(edbInfoId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT COUNT(1) AS count FROM excel_edb_mapping a 
                           join excel_info b on a.excel_info_id=b.excel_info_id
                           WHERE edb_info_id=? AND a.source != 4 AND b.is_delete = 0`
-	err = o.Raw(sql, edbInfoId).QueryRow(&count)
+	//err = o.Raw(sql, edbInfoId).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, edbInfoId).Scan(&count).Error
 	return
 }
 
 // GetAllExcelEdbMappingByExcelInfoId 根据excel的id获取所有的指标
 func GetAllExcelEdbMappingByExcelInfoId(excelInfoId int) (items []*ExcelEdbMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT a.* FROM  excel_edb_mapping a
          WHERE a.excel_info_id = ? ORDER BY a.excel_edb_mapping_id ASC `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&items).Error
 	return
 }
 
@@ -105,16 +112,16 @@ func GetAllExcelEdbMappingByExcelInfoId(excelInfoId int) (items []*ExcelEdbMappi
 // @param excelInfoId int
 // @return err error
 func DeleteCustomAnalysisExcelEdbMappingByEdbInfoId(excelInfoId int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `DELETE FROM excel_edb_mapping WHERE source = ? AND edb_info_id = ? LIMIT 1`
-	_, err = o.Raw(sql, utils.CUSTOM_ANALYSIS_TABLE, excelInfoId).Exec()
-
+	//_, err = o.Raw(sql, utils.CUSTOM_ANALYSIS_TABLE, excelInfoId).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, utils.CUSTOM_ANALYSIS_TABLE, excelInfoId).Error
 	return
 }
 
 // GetExcelEdbMappingItemByExcelInfoIdOrKeyword 根据表格ID或关键词获取指标
 func GetExcelEdbMappingItemByExcelInfoIdOrKeyword(excelInfoId int, keyword string) (items []*ExcelEdbMappingItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	cond := `b.excel_info_id = ?`
 	pars := make([]interface{}, 0)
 	pars = append(pars, excelInfoId)
@@ -137,6 +144,7 @@ func GetExcelEdbMappingItemByExcelInfoIdOrKeyword(excelInfoId int, keyword strin
 			%s
 		ORDER BY
 			b.excel_edb_mapping_id ASC`, cond)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	//_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 153 - 95
models/data_manage/excel/excel_info.go

@@ -1,15 +1,16 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ExcelInfo excel表格详情表
 type ExcelInfo struct {
-	ExcelInfoId        int       `orm:"column(excel_info_id);pk"`
+	//ExcelInfoId        int       `orm:"column(excel_info_id);pk"`
+	ExcelInfoId        int       `gorm:"column:excel_info_id;primaryKey"`
 	Source             int       `description:"表格来源,1:excel插件的表格,2:自定义表格,3:混合表格,4:自定义分析,默认:1"`
 	ExcelType          int       `description:"表格类型,1:指标列,2:日期列,默认:1"`
 	ExcelName          string    `description:"表格名称"`
@@ -34,13 +35,15 @@ type ExcelInfo struct {
 
 // Update 更新 excel表格基础信息
 func (excelInfo *ExcelInfo) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(excelInfo, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(excelInfo, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&excelInfo).Select(cols).Updates(&excelInfo).Error
 	return
 }
 
 type MyExcelInfoList struct {
-	ExcelInfoId      int       `orm:"column(excel_info_id);pk"`
+	//ExcelInfoId      int       `orm:"column(excel_info_id);pk"`
+	ExcelInfoId      int       `gorm:"column:excel_info_id;primaryKey"`
 	Source           int       `description:"表格来源,1:excel插件的表格,2:自定义表格,默认:1"`
 	ExcelType        int       `description:"表格类型,1:指标列,2:日期列,默认:1"`
 	ExcelName        string    `description:"表格名称"`
@@ -59,7 +62,8 @@ type MyExcelInfoList struct {
 
 // AddExcelInfo 新增表格
 func AddExcelInfo(excelInfo *ExcelInfo, excelEdbMappingList []*ExcelEdbMapping) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -71,12 +75,15 @@ func AddExcelInfo(excelInfo *ExcelInfo, excelEdbMappingList []*ExcelEdbMapping)
 		}
 	}()
 	// 表格信息入库
-	lastId, err := o.Insert(excelInfo)
+	//lastId, err := o.Insert(excelInfo)
+	//if err != nil {
+	//	return
+	//}
+	//excelInfo.ExcelInfoId = int(lastId)
+	err = o.Create(&excelInfo).Error
 	if err != nil {
 		return
 	}
-	excelInfo.ExcelInfoId = int(lastId)
-
 	// excel与指标的关联关系
 	dataNum := len(excelEdbMappingList)
 	if dataNum > 0 {
@@ -84,7 +91,8 @@ func AddExcelInfo(excelInfo *ExcelInfo, excelEdbMappingList []*ExcelEdbMapping)
 			v.ExcelInfoId = excelInfo.ExcelInfoId
 			excelEdbMappingList[k] = v
 		}
-		_, err = o.InsertMulti(dataNum, excelEdbMappingList)
+		//_, err = o.InsertMulti(dataNum, excelEdbMappingList)
+		err = o.CreateInBatches(excelEdbMappingList, dataNum).Error
 	}
 
 	return
@@ -92,7 +100,8 @@ func AddExcelInfo(excelInfo *ExcelInfo, excelEdbMappingList []*ExcelEdbMapping)
 
 // EditExcelInfo 编辑表格
 func EditExcelInfo(excelInfo *ExcelInfo, updateExcelInfoParams []string, excelEdbMappingList []*ExcelEdbMapping) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -105,14 +114,16 @@ func EditExcelInfo(excelInfo *ExcelInfo, updateExcelInfoParams []string, excelEd
 	}()
 
 	// ETA表格信息变更
-	_, err = o.Update(excelInfo, updateExcelInfoParams...)
+	//_, err = o.Update(excelInfo, updateExcelInfoParams...)
+	err = o.Model(&excelInfo).Select(updateExcelInfoParams).Updates(&excelInfo).Error
 	if err != nil {
 		return
 	}
 
 	// 删除关系表
 	sql := `DELETE FROM excel_edb_mapping WHERE excel_info_id=? `
-	_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	//_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	err = o.Exec(sql, excelInfo.ExcelInfoId).Error
 
 	// excel与指标的关联关系
 	dataNum := len(excelEdbMappingList)
@@ -121,7 +132,8 @@ func EditExcelInfo(excelInfo *ExcelInfo, updateExcelInfoParams []string, excelEd
 			v.ExcelInfoId = excelInfo.ExcelInfoId
 			excelEdbMappingList[k] = v
 		}
-		_, err = o.InsertMulti(dataNum, excelEdbMappingList)
+		//_, err = o.InsertMulti(dataNum, excelEdbMappingList)
+		err = o.CreateInBatches(excelEdbMappingList, dataNum).Error
 	}
 
 	return
@@ -129,17 +141,18 @@ func EditExcelInfo(excelInfo *ExcelInfo, updateExcelInfoParams []string, excelEd
 
 // GetExcelInfoAll 获取所有表格列表,用于分类展示
 func GetExcelInfoAll() (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,excel_classify_id,excel_name AS excel_classify_name,
              unique_code,sys_user_id,sys_user_real_name,is_join_permission
             FROM excel_info where is_delete=0 ORDER BY sort asc,create_time ASC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	//_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql).Find(&items).Error
 	return
 }
 
 // GetNoContentExcelInfoAll 获取不含content的表格列表 用于分类展示
 func GetNoContentExcelInfoAll(source, userId int) (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,excel_classify_id,excel_name AS excel_classify_name,
              unique_code,sys_user_id,sys_user_real_name,sort,is_join_permission
             FROM excel_info where is_delete=0 AND source = ?  `
@@ -151,53 +164,59 @@ func GetNoContentExcelInfoAll(source, userId int) (items []*ExcelClassifyItems,
 		pars = append(pars, userId)
 	}
 	sql += `  ORDER BY sort asc,excel_info_id desc `
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	//_, err = o.Raw(sql, pars...).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetAllExcelInfoBySource 根据来源获取包含content的表格列表
 func GetAllExcelInfoBySource(source int) (items []*ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info where is_delete=0  AND source = ?  ORDER BY sort asc,create_time desc `
-	_, err = o.Raw(sql, source).QueryRows(&items)
+	//_, err = o.Raw(sql, source).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, source).Find(&items).Error
 	return
 }
 
 // GetExcelInfoById 根据id 获取eta表格详情
 func GetExcelInfoById(excelInfoId int) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE excel_info_id=? AND is_delete=0 `
-	err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	//err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).First(&item).Error
 	return
 }
 
 // GetExcelInfoByUnicode 编码获取表格
 func GetExcelInfoByUnicode(unicode string) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE unique_code = ? AND is_delete = 0 `
-	err = o.Raw(sql, unicode).QueryRow(&item)
+	//err = o.Raw(sql, unicode).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, unicode).First(&item).Error
 	return
 }
 
 func GetExcelInfoViewById(excelInfoId int) (item *ExcelInfoView, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE excel_info_id=? AND is_delete=0 `
-	err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	//err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).First(&item).Error
 	return
 }
 
 func GetExcelInfoCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT COUNT(1) AS count FROM excel_info WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	//err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func GetNoContentExcelInfoListByCondition(condition string, pars []interface{}, startSize, pageSize int) (items []*ExcelClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := `SELECT excel_info_id,excel_classify_id,excel_name AS excel_classify_name,
              unique_code,sys_user_id,sys_user_real_name,sort,is_join_permission FROM excel_info WHERE 1=1 `
 	if condition != "" {
@@ -205,51 +224,57 @@ func GetNoContentExcelInfoListByCondition(condition string, pars []interface{},
 	}
 
 	sql += ` AND is_delete=0 ORDER BY excel_info_id DESC LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	//_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func GetExcelInfoByCondition(condition string, pars []interface{}) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&item)
+	//err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).First(&item).Error
 	return
 }
 
 // GetNextExcelInfoByCondition 根据条件获取下一个表格
 func GetNextExcelInfoByCondition(condition string, pars []interface{}) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += " ORDER BY sort asc , create_time desc LIMIT 1 "
-	err = o.Raw(sql, pars).QueryRow(&item)
+	//err = o.Raw(sql, pars).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).First(&item).Error
 	return
 }
 
 // GetNextExcelInfo 根据分类id获取下一个excel表格
 func GetNextExcelInfo(classifyId, classifySort, source int) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT b.* FROM excel_classify AS a
 			INNER JOIN excel_info AS b ON a.excel_classify_id=b.excel_classify_id
 			WHERE (a.sort>? OR (a.sort=? and a.excel_classify_id>?) ) AND a.is_delete=0 AND b.is_delete=0
 			AND a.source = ? AND b.source = ? 
 			ORDER BY a.sort ASC,b.sort asc,b.create_time desc
 			LIMIT 1 `
-	err = o.Raw(sql, classifySort, classifySort, classifyId, source, source).QueryRow(&item)
+	//err = o.Raw(sql, classifySort, classifySort, classifyId, source, source).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifySort, classifySort, classifyId, source, source).First(&item).Error
 	return
 }
 
 // EditExcelInfoImage 修改excel表格的图片
 func EditExcelInfoImage(excelInfoId int, imageUrl string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 
 	sql := ` UPDATE  excel_info SET excel_image=?, modify_time = NOW() WHERE excel_info_id = ? AND is_delete=0 `
-	_, err = o.Raw(sql, imageUrl, excelInfoId).Exec()
+	//_, err = o.Raw(sql, imageUrl, excelInfoId).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, imageUrl, excelInfoId).Error
 	if err != nil {
 		fmt.Println("EditExcelInfoImage Err:", err.Error())
 		return err
@@ -260,35 +285,39 @@ func EditExcelInfoImage(excelInfoId int, imageUrl string) (err error) {
 
 // GetExcelInfoByUniqueCode 根据unique_code来获取excel表格详情
 func GetExcelInfoByUniqueCode(uniqueCode string) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE unique_code=? AND is_delete=0 `
-	err = o.Raw(sql, uniqueCode).QueryRow(&item)
+	//err = o.Raw(sql, uniqueCode).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, uniqueCode).First(&item).Error
 	return
 }
 
 // GetFirstExcelInfoByClassifyId 获取当前分类下,且排序数相同 的排序第一条的数据
 func GetFirstExcelInfoByClassifyId(classifyId int) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE excel_classify_id=? AND is_delete=0 order by sort asc,excel_info_id desc limit 1`
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	//err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).First(&item).Error
 	return
 }
 
 // UpdateExcelInfoSortByClassifyId 根据表格id更新排序
 func UpdateExcelInfoSortByClassifyId(classifyId, nowSort, prevExcelInfoId int, updateSort string, source int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` update excel_info set sort = ` + updateSort + ` WHERE excel_classify_id=? AND source=? AND is_delete=0 AND ( sort > ? `
 	// todo 前一个兄弟节点后移
 	if prevExcelInfoId > 0 {
 		sql += ` or (excel_info_id < ` + fmt.Sprint(prevExcelInfoId) + ` and sort = ` + fmt.Sprint(nowSort) + `)`
 	}
 	sql += `)`
-	_, err = o.Raw(sql, classifyId, source, nowSort).Exec()
+	//_, err = o.Raw(sql, classifyId, source, nowSort).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, classifyId, source, nowSort).Error
 	return
 }
 
 type ExcelInfoView struct {
-	ExcelInfoId       int    `orm:"column(excel_info_id);pk"`
+	//ExcelInfoId       int    `orm:"column(excel_info_id);pk"`
+	ExcelInfoId       int    `gorm:"column:excel_info_id;primaryKey"`
 	ExcelName         string `description:"来源名称"`
 	ExcelClassifyId   int    `description:"表格分类id"`
 	ExcelClassifyName string `description:"表格名称"`
@@ -321,15 +350,16 @@ type ExcelInfoView struct {
 
 // GetExcelInfoByClassifyIdAndName 根据分类id和表格名获取表格信息
 func GetExcelInfoByClassifyIdAndName(classifyId int, excelName string) (item *ExcelInfo, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT * FROM excel_info WHERE excel_classify_id = ? and excel_name=? AND is_delete=0 `
-	err = o.Raw(sql, classifyId, excelName).QueryRow(&item)
+	//err = o.Raw(sql, classifyId, excelName).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId, excelName).First(&item).Error
 	return
 }
 
 // GetNoContentExcelListByCondition 获取没有content的excel表格列表数据
 func GetNoContentExcelListByCondition(condition string, pars []interface{}, startSize, pageSize int) (item []*MyExcelInfoList, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,source,excel_type,excel_name,unique_code,excel_classify_id,sys_user_id,sys_user_real_name,excel_image,file_url,sort,create_time,modify_time,is_join_permission
 FROM excel_info WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
@@ -337,76 +367,84 @@ FROM excel_info WHERE 1=1 AND is_delete=0 `
 	}
 	//sql += " ORDER BY sort ASC,chart_info_id DESC LIMIT ?,? "
 	sql += " ORDER BY create_time DESC LIMIT ?,? "
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&item)
+	//_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&item)
+	pars = append(pars, pageSize, startSize)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Find(&item).Error
 	return
 }
 
 func GetExcelListCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT COUNT(1) AS count FROM excel_info WHERE 1=1 AND is_delete=0 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	//err = o.Raw(sql, pars).QueryRow(&count)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 // GetExcelViewInfoByExcelInfoId 根据excelInfoId 获取ETA表格详情
 func GetExcelViewInfoByExcelInfoId(excelInfoId int) (item *MyExcelInfoList, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,source,excel_type,excel_name,unique_code,excel_classify_id,sys_user_id,sys_user_real_name,excel_image,file_url,sort,create_time,modify_time,is_join_permission FROM excel_info WHERE excel_info_id = ? AND is_delete=0 `
-	err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	//err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).First(&item).Error
 	return
 }
 
 // GetExcelInfoCountByClassifyId 根据分类id获取名下表格数量
 func GetExcelInfoCountByClassifyId(classifyId int) (total int64, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT count(1) total FROM excel_info WHERE excel_classify_id = ? AND is_delete=0 `
-	err = o.Raw(sql, classifyId).QueryRow(&total)
+	//err = o.Raw(sql, classifyId).QueryRow(&total)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId).Count(&total).Error
 	return
 }
 
 // UpdateExcelInfoClassifyId 更改表格分类
 func UpdateExcelInfoClassifyId(classifyId, excelInfoId int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` update excel_info set excel_classify_id = ? WHERE excel_info_id=? `
-	_, err = o.Raw(sql, classifyId, excelInfoId).Exec()
-
+	//_, err = o.Raw(sql, classifyId, excelInfoId).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, classifyId, excelInfoId).Error
 	return
 }
 
 // GetNoContentExcelInfoByName 根据名称 获取eta表格详情
 func GetNoContentExcelInfoByName(excelName string, source int) (item *MyExcelInfoList, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,source,excel_type,excel_name,unique_code,excel_classify_id,sys_user_id,sys_user_real_name,excel_image,file_url,sort,create_time,modify_time,is_join_permission 
  FROM excel_info WHERE excel_name = ? AND source = ? AND is_delete=0 `
-	err = o.Raw(sql, excelName, source).QueryRow(&item)
-
+	//err = o.Raw(sql, excelName, source).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelName, source).First(&item).Error
 	return
 }
 
 // GetNoContentExcelInfoByUniqueCode 根据unique_code来获取excel表格详情
 func GetNoContentExcelInfoByUniqueCode(uniqueCode string) (item *MyExcelInfoList, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,source,excel_type,excel_name,unique_code,excel_classify_id,sys_user_id,sys_user_real_name,excel_image,file_url,sort,create_time,modify_time,is_join_permission 
  FROM excel_info WHERE unique_code=? AND is_delete=0 `
-	err = o.Raw(sql, uniqueCode).QueryRow(&item)
+	//err = o.Raw(sql, uniqueCode).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, uniqueCode).First(&item).Error
 	return
 }
 
 // GetNoContentExcelInfoByExcelId 根据表格id来获取excel表格详情
 func GetNoContentExcelInfoByExcelId(excelInfoId int) (item *MyExcelInfoList, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_info_id,source,excel_type,excel_name,unique_code,excel_classify_id,sys_user_id,sys_user_real_name,excel_image,file_url,sort,create_time,modify_time,is_join_permission 
  FROM excel_info WHERE excel_info_id=? AND is_delete=0 `
-	err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	//err = o.Raw(sql, excelInfoId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).First(&item).Error
 	return
 }
 
 // AddExcelInfoAndSheet 新增excel
 func AddExcelInfoAndSheet(excelInfo *ExcelInfo, sheetParamsList []AddExcelSheetParams) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -419,11 +457,15 @@ func AddExcelInfoAndSheet(excelInfo *ExcelInfo, sheetParamsList []AddExcelSheetP
 	}()
 
 	// 表格信息入库
-	lastId, err := o.Insert(excelInfo)
+	//lastId, err := o.Insert(excelInfo)
+	//if err != nil {
+	//	return
+	//}
+	//excelInfo.ExcelInfoId = int(lastId)
+	err = o.Create(&excelInfo).Error
 	if err != nil {
 		return
 	}
-	excelInfo.ExcelInfoId = int(lastId)
 
 	// sheet信息入库
 	for _, sheetInfo := range sheetParamsList {
@@ -442,12 +484,13 @@ func AddExcelInfoAndSheet(excelInfo *ExcelInfo, sheetParamsList []AddExcelSheetP
 			ModifyTime:   time.Now(),
 			CreateTime:   time.Now(),
 		}
-		sheetId, tmpErr := o.Insert(excelSheetInfo)
+		//sheetId, tmpErr := o.Insert(excelSheetInfo)
+		tmpErr := o.Create(&excelSheetInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		excelSheetInfo.ExcelSheetId = int(sheetId)
+		//excelSheetInfo.ExcelSheetId = int(sheetId)
 
 		// data信息入库
 		if dataNum > 0 {
@@ -455,7 +498,8 @@ func AddExcelInfoAndSheet(excelInfo *ExcelInfo, sheetParamsList []AddExcelSheetP
 				sheetInfo.DataList[k].ExcelSheetId = excelSheetInfo.ExcelSheetId
 				sheetInfo.DataList[k].ExcelInfoId = excelSheetInfo.ExcelInfoId
 			}
-			_, tmpErr = o.InsertMulti(dataNum, sheetInfo.DataList)
+			//_, tmpErr = o.InsertMulti(dataNum, sheetInfo.DataList)
+			tmpErr = o.CreateInBatches(sheetInfo.DataList, dataNum).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
@@ -468,7 +512,8 @@ func AddExcelInfoAndSheet(excelInfo *ExcelInfo, sheetParamsList []AddExcelSheetP
 
 // SaveExcelInfoAndSheet 编辑保存
 func SaveExcelInfoAndSheet(excelInfo *ExcelInfo, updateExcelInfoParam []string, sheetParamsList []AddExcelSheetParams) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	o := global.DbMap[utils.DbNameIndex].Begin()
 	if err != nil {
 		return
 	}
@@ -481,21 +526,24 @@ func SaveExcelInfoAndSheet(excelInfo *ExcelInfo, updateExcelInfoParam []string,
 	}()
 
 	// 表格信息入库
-	_, err = o.Update(excelInfo, updateExcelInfoParam...)
+	//_, err = o.Update(excelInfo, updateExcelInfoParam...)
+	err = o.Model(&excelInfo).Select(updateExcelInfoParam).Updates(&excelInfo).Error
 	if err != nil {
 		return
 	}
 
 	// 先删除历史的sheet信息
 	sql := `DELETE FROM excel_sheet WHERE excel_info_id = ?`
-	_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	//_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	err = o.Exec(sql, excelInfo.ExcelInfoId).Error
 	if err != nil {
 		return
 	}
 
 	// 再删除历史sheet中的cell data信息
 	sql = `DELETE FROM excel_sheet_data WHERE excel_info_id = ?`
-	_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	//_, err = o.Raw(sql, excelInfo.ExcelInfoId).Exec()
+	err = o.Exec(sql, excelInfo.ExcelInfoId).Error
 	if err != nil {
 		return
 	}
@@ -517,12 +565,13 @@ func SaveExcelInfoAndSheet(excelInfo *ExcelInfo, updateExcelInfoParam []string,
 			ModifyTime:   time.Now(),
 			CreateTime:   time.Now(),
 		}
-		sheetId, tmpErr := o.Insert(excelSheetInfo)
+		//sheetId, tmpErr := o.Insert(excelSheetInfo)
+		tmpErr := o.Create(&excelSheetInfo).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
-		excelSheetInfo.ExcelSheetId = int(sheetId)
+		//excelSheetInfo.ExcelSheetId = int(sheetId)
 
 		// data信息入库
 		if dataNum > 0 {
@@ -530,7 +579,8 @@ func SaveExcelInfoAndSheet(excelInfo *ExcelInfo, updateExcelInfoParam []string,
 				sheetInfo.DataList[k].ExcelSheetId = excelSheetInfo.ExcelSheetId
 				sheetInfo.DataList[k].ExcelInfoId = excelSheetInfo.ExcelInfoId
 			}
-			_, tmpErr = o.InsertMulti(dataNum, sheetInfo.DataList)
+			//_, tmpErr = o.InsertMulti(dataNum, sheetInfo.DataList)
+			tmpErr = o.CreateInBatches(sheetInfo.DataList, dataNum).Error
 			if tmpErr != nil {
 				err = tmpErr
 				return
@@ -551,9 +601,10 @@ type BatchRefreshExcelReq struct {
 
 // GetExcelMaxSortByClassifyId 获取当前分类下,且排序数最大的excel
 func GetExcelMaxSortByClassifyId(classifyId int, source int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT Max(sort) AS sort FROM excel_info WHERE excel_classify_id=? AND source = ? AND is_delete=0 order by sort desc,excel_info_id desc limit 1`
-	err = o.Raw(sql, classifyId, source).QueryRow(&sort)
+	//err = o.Raw(sql, classifyId, source).QueryRow(&sort)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, classifyId, source).Scan(&sort).Error
 	return
 }
 
@@ -567,10 +618,11 @@ func GetNoContentExcelListByExcelInfoIdList(excelInfoIdList []string) (items []*
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := ` SELECT * FROM excel_info WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) order by excel_info_id DESC `
-	_, err = o.Raw(sql, excelInfoIdList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := ` SELECT * FROM excel_info WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) order by excel_info_id DESC `
+	//_, err = o.Raw(sql, excelInfoIdList).QueryRows(&items)
+	sql := ` SELECT * FROM excel_info WHERE excel_info_id in ? order by excel_info_id DESC `
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoIdList).Find(&items).Error
 	return
 }
 
@@ -584,10 +636,11 @@ func GetNoContentExcelListByUserId(userIdList []int) (items []*MyExcelInfoList,
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := ` SELECT * FROM excel_info WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) order by excel_info_id DESC `
-	_, err = o.Raw(sql, userIdList).QueryRows(&items)
-
+	//o := orm.NewOrmUsingDB("data")
+	//sql := ` SELECT * FROM excel_info WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) order by excel_info_id DESC `
+	//_, err = o.Raw(sql, userIdList).QueryRows(&items)
+	sql := ` SELECT * FROM excel_info WHERE excel_info_id in ? order by excel_info_id DESC `
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, userIdList).Find(&items).Error
 	return
 }
 
@@ -604,9 +657,11 @@ func ModifyExcelInfoUserIdByCodeList(excelIdList []string, userId int, userName
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, userId, userName, excelIdList).Exec()
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE excel_info_id in (` + utils.GetOrmInReplace(num) + `) `
+	sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE excel_info_id in ? `
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, userId, userName, excelIdList).Error
+	//_, err = o.Raw(sql, userId, userName, excelIdList).Exec()
 	return
 }
 
@@ -623,15 +678,18 @@ func ModifyExcelInfoUserIdByOldUserId(oldUserIdList []int, userId int, userName
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE is_delete=0 AND sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, userId, userName, oldUserIdList).Exec()
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE is_delete=0 AND sys_user_id in (` + utils.GetOrmInReplace(num) + `) `
+	sql := `UPDATE excel_info SET sys_user_id=?,sys_user_real_name=? WHERE is_delete=0 AND sys_user_id in ?`
+	//_, err = o.Raw(sql, userId, userName, oldUserIdList).Exec()
+	err = global.DbMap[utils.DbNameIndex].Exec(sql, userId, userName, oldUserIdList).Error
 	return
 }
 
 // ExcelInfoDetail excel表格详情(前端使用)
 type ExcelInfoDetail struct {
-	ExcelInfoId     int         `orm:"column(excel_info_id);pk"`
+	//ExcelInfoId     int         `orm:"column(excel_info_id);pk"`
+	ExcelInfoId     int         `gorm:"column:excel_info_id;primaryKey"`
 	Source          int         `description:"表格来源,1:excel插件的表格,2:自定义表格,默认:1"`
 	ExcelType       int         `description:"表格类型,1:指标列,2:日期列,默认:1"`
 	ExcelName       string      `description:"表格名称"`

+ 24 - 16
models/data_manage/excel/excel_sheet.go

@@ -1,13 +1,15 @@
 package excel
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_chart_lib/global"
+	"eta/eta_chart_lib/utils"
 	"time"
 )
 
 // ExcelSheet excel表格详情表
 type ExcelSheet struct {
-	ExcelSheetId int       `orm:"column(excel_sheet_id);pk"`
+	//ExcelSheetId int       `orm:"column(excel_sheet_id);pk"`
+	ExcelSheetId int       `gorm:"column:excel_sheet_id;primaryKey"`
 	ExcelInfoId  int       `description:"excel的id"`
 	SheetName    string    `description:"sheet名称"`
 	PageNum      int       `description:"总页码数"`
@@ -21,38 +23,41 @@ type ExcelSheet struct {
 
 // Update 更新 excel表格的sheet基础信息
 func (excelSheet *ExcelSheet) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(excelSheet, cols...)
-
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(excelSheet, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&excelSheet).Select(cols).Updates(&excelSheet).Error
 	return
 }
 
 // AddExcelSheet 新增excel表格的sheet基础信息
 func AddExcelSheet(excelInfo *ExcelSheet) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	// 表格信息入库
-	lastId, err := o.Insert(excelInfo)
+	//lastId, err := o.Insert(excelInfo)
+	err = global.DbMap[utils.DbNameIndex].Create(&excelInfo).Error
 	if err != nil {
 		return
 	}
-	excelInfo.ExcelInfoId = int(lastId)
+	//excelInfo.ExcelInfoId = int(lastId)
 
 	return
 }
 
 // GetAllSheetList 根据excel_id获取所有的sheet
 func GetAllSheetList(excelInfoId int) (item []*ExcelSheet, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
 FROM excel_sheet WHERE 1=1 AND excel_info_id = ? `
 	sql += " ORDER BY sort asc "
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&item).Error
 	return
 }
 
 // SheetItem excel表格详情表
 type SheetItem struct {
-	ExcelSheetId int             `orm:"column(excel_sheet_id);pk" json:"-"`
+	//ExcelSheetId int             `orm:"column(excel_sheet_id);pk" json:"-"`
+	ExcelSheetId int             `gorm:"column:excel_sheet_id;primaryKey" json:"-"`
 	ExcelInfoId  int             `description:"excel的id"  json:"-"`
 	SheetName    string          `description:"sheet名称"`
 	PageNum      int             `description:"数据总页码数"`
@@ -67,27 +72,30 @@ type SheetItem struct {
 
 // GetAllSheetItemList 根据excel_id获取所有的sheet详情
 func GetAllSheetItemList(excelInfoId int) (item []*SheetItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
 FROM excel_sheet WHERE 1=1 AND excel_info_id = ? `
 	sql += " ORDER BY sort asc "
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&item).Error
 	return
 }
 
 // GetAllNoConfigSheetItemList 根据excel_id获取所有的sheet详情
 func GetAllNoConfigSheetItemList(excelInfoId int) (item []*SheetItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT excel_sheet_id,excel_info_id,sheet_name,sort,page_num,create_time
 FROM excel_sheet WHERE 1=1 AND excel_info_id = ? `
 	sql += " ORDER BY sort asc "
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&item)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&item).Error
 	return
 }
 
 // AddExcelSheetParams excel表格详情表
 type AddExcelSheetParams struct {
-	ExcelSheetId int               `orm:"column(excel_sheet_id);pk"`
+	//ExcelSheetId int               `orm:"column(excel_sheet_id);pk"`
+	ExcelSheetId int               `gorm:"column:excel_sheet_id;primaryKey"`
 	ExcelInfoId  int               `description:"excel的id"`
 	SheetName    string            `description:"sheet名称"`
 	Index        string            `description:"excel数据中的index"`

+ 19 - 15
models/data_manage/excel/excel_sheet_data.go

@@ -1,14 +1,15 @@
 package excel
 
 import (
+	"eta/eta_chart_lib/global"
 	"eta/eta_chart_lib/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // ExcelSheetData excel表格详情表
 type ExcelSheetData struct {
-	ExcelDataId  int       `orm:"column(excel_data_id);pk"`
+	//ExcelDataId  int       `orm:"column(excel_data_id);pk"`
+	ExcelDataId  int       `gorm:"column:excel_data_id;primaryKey"`
 	ExcelInfoId  int       `description:"数据归属的excel_info的id"`
 	ExcelSheetId int       `description:"数据归属sheet"`
 	Sort         int       `description:"数据排序"`
@@ -19,21 +20,22 @@ type ExcelSheetData struct {
 
 // Update 更新 excel表格的sheet基础信息
 func (ExcelSheetData *ExcelSheetData) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(ExcelSheetData, cols...)
-
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(ExcelSheetData, cols...)
+	err = global.DbMap[utils.DbNameIndex].Model(&ExcelSheetData).Select(cols).Updates(&ExcelSheetData).Error
 	return
 }
 
 // AddExcelSheetData 新增excel表格的sheet基础信息
 func AddExcelSheetData(excelInfo *ExcelSheetData) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	// 表格信息入库
-	lastId, err := o.Insert(excelInfo)
+	//lastId, err := o.Insert(excelInfo)
+	err = global.DbMap[utils.DbNameIndex].Create(&excelInfo).Error
 	if err != nil {
 		return
 	}
-	excelInfo.ExcelInfoId = int(lastId)
+	//excelInfo.ExcelInfoId = int(lastId)
 
 	return
 }
@@ -44,20 +46,22 @@ func GetSheetDataListBySheetIdListAndPage(excelSheetIdList []int, page int) (ite
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
+	//	sql := ` SELECT *
+	//FROM excel_sheet_data WHERE 1=1 AND excel_sheet_id in (` + utils.GetOrmInReplace(num) + `) AND sort = ? `
 	sql := ` SELECT *
-FROM excel_sheet_data WHERE 1=1 AND excel_sheet_id in (` + utils.GetOrmInReplace(num) + `) AND sort = ? `
-	_, err = o.Raw(sql, excelSheetIdList, page).QueryRows(&items)
-
+FROM excel_sheet_data WHERE 1=1 AND excel_sheet_id in ? AND sort = ? `
+	//_, err = o.Raw(sql, excelSheetIdList, page).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelSheetIdList, page).Find(&items).Error
 	return
 }
 
 // GetAllSheetDataListByExcelInfoId 根据表格id获取所有的sheet的所有数据详情
 func GetAllSheetDataListByExcelInfoId(excelInfoId int) (items []*ExcelSheetData, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
 	sql := ` SELECT *
 FROM excel_sheet_data WHERE 1=1 AND excel_info_id = ? ORDER BY sort ASC `
-	_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
-
+	//_, err = o.Raw(sql, excelInfoId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameIndex].Raw(sql, excelInfoId).Find(&items).Error
 	return
 }