Browse Source

改成gorm查询

xyxie 1 month ago
parent
commit
43e5706e98
75 changed files with 1700 additions and 1845 deletions
  1. 1 1
      models/ai_summary/ai_summary.go
  2. 13 13
      models/ai_summary/ai_summary_classify.go
  3. 1 1
      models/bi_dashboard/bi_dashboard_classify.go
  4. 6 6
      models/company/company_permission.go
  5. 3 4
      models/company/company_seller.go
  6. 5 5
      models/data_source/guagnzhouqihuo.go
  7. 22 14
      models/document_manage_model/outside_report.go
  8. 19 18
      models/document_manage_model/outside_report_attachment.go
  9. 3 2
      models/edb_monitor/edb_monitor.go
  10. 40 43
      models/edb_monitor/edb_monitor_classify.go
  11. 21 18
      models/edb_monitor/edb_monitor_message.go
  12. 1 1
      models/edb_monitor/response/edb_monitor_classify.go
  13. 5 9
      models/eta_trial/questionnaire_fill_record.go
  14. 28 42
      models/fe_calendar/fe_calendar_matter.go
  15. 40 35
      models/material/material.go
  16. 46 42
      models/material/material_classify.go
  17. 62 45
      models/ppt_english/ppt_english.go
  18. 16 19
      models/ppt_english/ppt_english_grant.go
  19. 39 41
      models/ppt_english/ppt_english_group.go
  20. 47 58
      models/ppt_english/ppt_english_group_mapping.go
  21. 6 8
      models/ppt_english/report_ppt_english_img.go
  22. 11 14
      models/report/report_chapter_grant.go
  23. 14 20
      models/report/report_chapter_permission_mapping.go
  24. 13 16
      models/report/report_grant.go
  25. 41 46
      models/report_approve/report_approve.go
  26. 38 50
      models/report_approve/report_approve_flow.go
  27. 22 25
      models/report_approve/report_approve_message.go
  28. 22 25
      models/report_approve/report_approve_node.go
  29. 24 27
      models/report_approve/report_approve_record.go
  30. 10 10
      models/residual_analysis_model/calculate_residual_analysis_config.go
  31. 9 6
      models/residual_analysis_model/calculate_residual_analysis_config_mapping.go
  32. 12 9
      models/residual_analysis_model/edb_data_residual_analysis.go
  33. 9 8
      models/roadshow/calendar.go
  34. 61 72
      models/sandbox/sandbox.go
  35. 52 48
      models/sandbox/sandbox_classify.go
  36. 7 9
      models/sandbox/sandbox_draft.go
  37. 17 16
      models/sandbox/sandbox_version.go
  38. 44 56
      models/semantic_analysis/sa_compare.go
  39. 21 23
      models/semantic_analysis/sa_compare_classify.go
  40. 22 24
      models/semantic_analysis/sa_compare_doc.go
  41. 26 28
      models/semantic_analysis/sa_compare_label.go
  42. 24 29
      models/semantic_analysis/sa_compare_search_keyword.go
  43. 42 52
      models/semantic_analysis/sa_doc.go
  44. 21 23
      models/semantic_analysis/sa_doc_classify.go
  45. 20 22
      models/semantic_analysis/sa_doc_section.go
  46. 20 22
      models/semantic_analysis/sa_label.go
  47. 31 34
      models/smart_report/smart_report.go
  48. 22 25
      models/smart_report/smart_report_save_log.go
  49. 19 21
      models/smart_report/smart_resource.go
  50. 47 68
      models/speech_recognition/speech_recognition.go
  51. 22 25
      models/speech_recognition/speech_recognition_api_log.go
  52. 26 36
      models/speech_recognition/speech_recognition_content.go
  53. 30 33
      models/speech_recognition/speech_recognition_menu.go
  54. 30 33
      models/speech_recognition/speech_recognition_tag.go
  55. 26 29
      models/speech_recognition/speech_recognition_tag_mapping.go
  56. 30 33
      models/speech_recognition/speech_recognition_tag_menu.go
  57. 10 13
      models/system/admin_config.go
  58. 4 3
      models/system/admin_operate_record.go
  59. 21 23
      models/system/admin_verify_code_record.go
  60. 16 19
      models/system/research_group.go
  61. 63 63
      models/system/sys_admin.go
  62. 32 36
      models/system/sys_department.go
  63. 44 49
      models/system/sys_group.go
  64. 13 12
      models/system/sys_menu.go
  65. 23 14
      models/system/sys_menu_button.go
  66. 49 40
      models/system/sys_role.go
  67. 31 33
      models/system/sys_role_admin.go
  68. 12 15
      models/system/sys_session.go
  69. 16 18
      models/system/sys_team.go
  70. 30 30
      models/system/sys_user.go
  71. 4 3
      models/system/sys_user_login_record.go
  72. 8 15
      models/yb/price_driven.go
  73. 4 3
      models/yb/price_driven_tag.go
  74. 6 9
      models/yb/yb_community_question_process.go
  75. 5 5
      models/yb/yb_poster_resource.go

+ 1 - 1
models/ai_summary/ai_summary.go

@@ -39,7 +39,7 @@ type AiSummaryItems struct {
 	OpenaiFileName  string // 文件名称
 	OpenaiFilePath  string // 文件路径
 	Sort            int    // 排序字段,越小越靠前,默认值:10
-	ParentIds       string
+	ParentIds       string `gorm:"-"`
 }
 
 func GetAiChatTopicList(sysUserId int) (item []*AiSummary, err error) {

+ 13 - 13
models/ai_summary/ai_summary_classify.go

@@ -35,19 +35,19 @@ func AddAiSummaryClassify(item *AiSummaryClassify) (lastId int64, err error) {
 
 type AiSummaryClassifyItems struct {
 	AiSummaryClassifyId int
-	Title               string    `description:"标题" json:"-"`
-	ClassifyName        string    `description:"分类名称"`
-	ParentId            int       `description:"父级id"`
-	HasData             int       `description:"是否含有指标数据"`
-	CreateTime          time.Time `description:"创建时间"`
-	ModifyTime          time.Time `description:"修改时间"`
-	SysUserId           int       `description:"创建人id"`
-	SysUserRealName     string    `description:"创建人姓名"`
-	Level               int       `description:"层级"`
-	Sort                int       `description:"排序字段,越小越靠前,默认值:10"`
-	AiSummaryId         int       `description:"纪要id"`
-	UniqueCode          string    `description:"唯一编码"`
-	Children            []*AiSummaryClassifyItems
+	Title               string                    `description:"标题" json:"-"`
+	ClassifyName        string                    `description:"分类名称"`
+	ParentId            int                       `description:"父级id"`
+	HasData             int                       `description:"是否含有指标数据"`
+	CreateTime          time.Time                 `description:"创建时间"`
+	ModifyTime          time.Time                 `description:"修改时间"`
+	SysUserId           int                       `description:"创建人id"`
+	SysUserRealName     string                    `description:"创建人姓名"`
+	Level               int                       `description:"层级"`
+	Sort                int                       `description:"排序字段,越小越靠前,默认值:10"`
+	AiSummaryId         int                       `description:"纪要id"`
+	UniqueCode          string                    `description:"唯一编码"`
+	Children            []*AiSummaryClassifyItems `gorm:"-"`
 }
 
 type AiSummaryClassifyListResp struct {

+ 1 - 1
models/bi_dashboard/bi_dashboard_classify.go

@@ -129,7 +129,7 @@ type RespPublicGroupListItem struct {
 	GroupName     string `description:"目录名称"`
 	AdminId       int    `description:"目录创建者账号ID"`
 	DashboardList []*BiDashboard
-	Children      []*RespPublicGroupListItem
+	Children      []*RespPublicGroupListItem `gorm:"-"`
 }
 
 // getByName

+ 6 - 6
models/company/company_permission.go

@@ -26,7 +26,7 @@ type PermissionSetItem struct {
 	PermissionName    string               `description:"权限名称"`
 	PermissionType    int                  `description:"1主观,2客观"`
 	Checked           bool                 `description:"选中状态"`
-	Child             []*PermissionSetItem `description:"具体的主客观-方便前端的排版用的"`
+	Child             []*PermissionSetItem `description:"具体的主客观-方便前端的排版用的" gorm:"-"`
 }
 
 type PermissionSetItemType struct {
@@ -38,14 +38,14 @@ type PermissionSetItemType struct {
 }
 
 type PermissionSetList struct {
-	PermissionName string `description:"分类"`
-	Child          []*PermissionSetItem
+	PermissionName string               `description:"分类"`
+	Child          []*PermissionSetItem `gorm:"-"`
 	CheckList      []int
 }
 
 type PermissionSetListType struct {
-	PermissionName string `description:"分类"`
-	Child          []*PermissionSetItemType
+	PermissionName string                   `description:"分类"`
+	Child          []*PermissionSetItemType `gorm:"-"`
 	CheckList      []int
 }
 
@@ -77,7 +77,7 @@ type PermissionLookItem struct {
 	IsMerge            bool                  `description:"是否合并行业, 给前端的标识, 暂时仅权益使用"`
 	RaiBothHas         bool                  `description:"权益-是否主客观都有"`
 	IsUpgrade          int                   `description:"是否升级,1是,0否"`
-	Child              []*PermissionLookItem `description:"子权限"`
+	Child              []*PermissionLookItem `description:"子权限" gorm:"-"`
 }
 
 type PermissionVarietyResp struct {

+ 3 - 4
models/company/company_seller.go

@@ -19,17 +19,16 @@ type DepartmentGroupSellers struct {
 	AdminId string `description:"系统用户id"`
 	//AdminName string `description:"系统用户名称"`
 	RealName     string                   `description:"用户真实名称"`
-	ChildrenList []DepartmentGroupSellers `description:"销售列表"`
+	ChildrenList []DepartmentGroupSellers `description:"销售列表" gorm:"-"`
 	RoleTypeCode string                   `description:"角色编码"`
 	Authority    int                      `description:"管理权限,0:无,1:部门负责人,2:小组负责人,或者ficc销售主管,4:ficc销售组长"`
 }
 
-
 type DepartmentGroupAdmins struct {
 	AdminId string `description:"系统用户id"`
 	//AdminName string `description:"系统用户名称"`
 	RealName     string                   `description:"用户真实名称"`
-	ChildrenList []*DepartmentGroupAdmins `description:"角色列表"`
+	ChildrenList []*DepartmentGroupAdmins `description:"角色列表" gorm:"-"`
 	RoleTypeCode string                   `description:"角色编码"`
 	Authority    int                      `description:"管理权限,0:无,1:部门负责人,2:小组负责人,或者ficc销售主管,4:ficc销售组长"`
-}
+}

+ 5 - 5
models/data_source/guagnzhouqihuo.go

@@ -40,11 +40,11 @@ type BaseFromTradeGuangzhouData struct {
 }
 
 type BaseFromTradeGuangzhouClassifyView struct {
-	BaseFromTradeGuangzhouClassifyId int    `orm:"column(base_from_trade_guangzhou_classify_id);pk" gorm:"primaryKey"`
-	ClassifyName                     string `description:"分类名称"`
-	ClassifyCode                     string `description:"分类编码"`
-	ParentId                         int    `description:"分类父级id"`
-	Children                         []*BaseFromTradeGuangzhouClassifyView
+	BaseFromTradeGuangzhouClassifyId int                                   `orm:"column(base_from_trade_guangzhou_classify_id);pk" gorm:"primaryKey"`
+	ClassifyName                     string                                `description:"分类名称"`
+	ClassifyCode                     string                                `description:"分类编码"`
+	ParentId                         int                                   `description:"分类父级id"`
+	Children                         []*BaseFromTradeGuangzhouClassifyView `gorm:"-"`
 }
 
 type BaseFromTradeGuangzhouContract struct {

+ 22 - 14
models/document_manage_model/outside_report.go

@@ -2,6 +2,8 @@
 package document_manage_model
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
@@ -51,7 +53,7 @@ func init() {
 
 // GetOutsideReportListByConditionCount 根据条件查询列表条数
 func GetOutsideReportListByConditionCount(condition string, pars []interface{}, chartPermissionIdList []string) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	var sql string
 	if len(chartPermissionIdList) > 0 {
 		sql = `select count(1) from (`
@@ -65,7 +67,7 @@ func GetOutsideReportListByConditionCount(condition string, pars []interface{},
 		sql += ` ) t`
 	}
 
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	if err != nil && err != orm.ErrNoRows {
 		return 0, err
 	}
@@ -75,13 +77,13 @@ func GetOutsideReportListByConditionCount(condition string, pars []interface{},
 
 // GetOutsideReportListByCondition 根据条件查询列表
 func GetOutsideReportListByCondition(condition string, pars []interface{}) (list []OutsideReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select DISTINCT t1.outside_report_id, t1.source, t1.title, t1.abstract, t1.classify_id, 
 t1.classify_name, t1.sys_user_id, t1.sys_user_name, t1.email_message_uid, t1.report_update_time, 
 t1.modify_time, t1.create_time, t1.report_code from outside_report t1 
 left join chart_permission_search_key_word_mapping t2 on t1.classify_id = t2.classify_id  where 1 = 1 `
 	sql += condition
-	_, err = o.Raw(sql, pars).QueryRows(&list)
+	err = o.Raw(sql, pars...).Find(&list).Error
 	if err != nil && err != orm.ErrNoRows {
 		return nil, err
 	}
@@ -91,40 +93,46 @@ left join chart_permission_search_key_word_mapping t2 on t1.classify_id = t2.cla
 
 // SaveOutsideReport 保存报告
 func SaveOutsideReport(outsideReport OutsideReport) (id int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err = o.Insert(&outsideReport)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(&outsideReport).Error
+	if err != nil {
+		return
+	}
+	id = int64(outsideReport.OutsideReportId)
 	return
 }
 
 // GetOutsideReportById 根据ID获取报告
 func GetOutsideReportById(id int) (outsideReport *OutsideReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 
 	outsideReport = &OutsideReport{}
 
-	err = o.QueryTable("outside_report").Filter("outside_report_id", id).One(outsideReport)
+	//err = o.QueryTable("outside_report").Filter("outside_report_id", id).One(outsideReport)
+	err = o.Raw("select * from outside_report where outside_report_id = ?", id).First(outsideReport).Error
 	return
 }
 
 // UpdateOutsideReport 更新报告
 func UpdateOutsideReport(outsideReport *OutsideReport) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(outsideReport)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Updates(outsideReport).Error
 	return
 }
 
 // DeleteOutsideReport 删除报告
 func DeleteOutsideReport(id int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.QueryTable("outside_report").Filter("outside_report_id", id).Delete()
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Exec("delete from outside_report where outside_report_id = ?", id).Error
+	//err = o.QueryTable("outside_report").Filter("outside_report_id", id).Delete()
 	return
 }
 
 // GetOutsideReportListByClassifyId 根据分类id查询报告列表
 func GetOutsideReportListByClassifyId(classifyId int) (list []OutsideReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select * from outside_report where classify_id = ?`
-	_, err = o.Raw(sql, classifyId).QueryRows(&list)
+	err = o.Raw(sql, classifyId).Find(&list).Error
 	if err != nil {
 		return nil, err
 	}

+ 19 - 18
models/document_manage_model/outside_report_attachment.go

@@ -2,6 +2,8 @@
 package document_manage_model
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"github.com/beego/beego/v2/client/orm"
 )
 
@@ -21,28 +23,27 @@ func init() {
 
 // SaveOutsideReportAttachment 保存附件
 func SaveOutsideReportAttachment(attachment *OutsideReportAttachment) (int64, error) {
-	o := orm.NewOrmUsingDB("rddp")
-	return o.Insert(attachment)
+	o := global.DbMap[utils.DbNameReport]
+	err := o.Create(attachment).Error
+	if err != nil {
+		return 0, err
+	}
+	id := int64(attachment.OutsideReportAttachmentId)
+	return id, err
 }
 
 // GetOutsideReportAttachmentListByReportId 根据报告id获取附件列表
-func GetOutsideReportAttachmentListByReportId(outsideReportId int) ([]*OutsideReportAttachment, error) {
-	o := orm.NewOrmUsingDB("rddp")
-	var attachmentList []*OutsideReportAttachment
-	_, err := o.QueryTable("outside_report_attachment").
-		Filter("outside_report_id", outsideReportId).
-		All(&attachmentList)
-	if err != nil {
-		return nil, err
-	}
-	return attachmentList, nil
+func GetOutsideReportAttachmentListByReportId(outsideReportId int) (attachmentList []*OutsideReportAttachment, err error) {
+	o := global.DbMap[utils.DbNameReport]
+	sql := "SELECT * FROM outside_report_attachment WHERE outside_report_id = ?"
+	err = o.Raw(sql, outsideReportId).Find(&attachmentList).Error
+	return
 }
 
 // DeleteReportAttachmentByReportId 根据报告id删除附件
-func DeleteReportAttachmentByReportId(outsideReportId int) error {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err := o.QueryTable("outside_report_attachment").
-		Filter("outside_report_id", outsideReportId).
-		Delete()
-	return err
+func DeleteReportAttachmentByReportId(outsideReportId int) (err error) {
+	o := global.DbMap[utils.DbNameReport]
+	sql := "DELETE FROM outside_report_attachment WHERE outside_report_id = ?"
+	err = o.Exec(sql, outsideReportId).Error
+	return
 }

+ 3 - 2
models/edb_monitor/edb_monitor.go

@@ -113,7 +113,7 @@ func GetEdbMonitorInfoCountByCondition(condition string, pars []interface{}) (co
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).Scan(&count).Error
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -124,7 +124,8 @@ func GetEdbMonitorInfoPageByCondition(condition string, pars []interface{}, star
 		sql += condition
 	}
 	sql += ` ORDER BY create_time DESC LIMIT?,?`
-	err = o.Raw(sql, pars, startSize, pageSize).Find(&items).Error
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 
 	return
 }

+ 40 - 43
models/edb_monitor/edb_monitor_classify.go

@@ -1,11 +1,10 @@
 package edbmonitor
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 type EdbMonitorClassify struct {
@@ -19,20 +18,17 @@ type EdbMonitorClassify struct {
 }
 
 func (e *EdbMonitorClassify) Insert() (id int64, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 
 	var edbMonitorIds []int
 	if e.ParentId != 0 {
 		sql := `SELECT edb_monitor_id FROM edb_monitor_info WHERE edb_monitor_classify_id = ?`
-		_, err = o.Raw(sql, e.ParentId).QueryRows(&edbMonitorIds)
+		err = o.Raw(sql, e.ParentId).Find(&edbMonitorIds).Error
 		if err != nil {
 			return
 		}
 	}
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			tx.Rollback()
@@ -41,10 +37,14 @@ func (e *EdbMonitorClassify) Insert() (id int64, err error) {
 		}
 	}()
 
-	id, err = tx.Insert(e)
+	err = tx.Create(e).Error
+	if err != nil {
+		return
+	}
+	id = int64(e.ClassifyId)
 	if len(edbMonitorIds) > 0 {
 		sql := `UPDATE edb_monitor_info SET edb_monitor_classify_id = ? WHERE edb_monitor_id IN (` + utils.GetOrmInReplace(len(edbMonitorIds)) + `)`
-		_, err = tx.Raw(sql, id, edbMonitorIds).Exec()
+		err = tx.Exec(sql, id, edbMonitorIds).Error
 		if err != nil {
 			return
 		}
@@ -53,20 +53,17 @@ func (e *EdbMonitorClassify) Insert() (id int64, err error) {
 }
 
 func (e *EdbMonitorClassify) Update(cols []string, classifyId []int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	var edbMonitorIds []int
 	if e.ParentId != 0 {
 		sql := `SELECT edb_monitor_id FROM edb_monitor_info WHERE edb_monitor_classify_id = ?`
-		_, err = o.Raw(sql, e.ParentId).QueryRows(&edbMonitorIds)
+		err = o.Raw(sql, e.ParentId).Scan(&edbMonitorIds).Error
 		if err != nil {
 			return
 		}
 	}
 
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			tx.Rollback()
@@ -74,20 +71,20 @@ func (e *EdbMonitorClassify) Update(cols []string, classifyId []int) (err error)
 			tx.Commit()
 		}
 	}()
-	_, err = tx.Update(e, cols...)
+	err = tx.Select(cols).Updates(e).Error
 	if err != nil {
 		return
 	}
 	if len(classifyId) > 0 {
 		sql := `UPDATE edb_monitor_classify SET root_id = ? WHERE classify_id IN (` + utils.GetOrmInReplace(len(classifyId)) + `)`
-		_, err = tx.Raw(sql, e.RootId, classifyId).Exec()
+		err = tx.Exec(sql, e.RootId, classifyId).Error
 		if err != nil {
 			return
 		}
 	}
 	if len(edbMonitorIds) > 0 {
 		sql := `UPDATE edb_monitor_info SET edb_monitor_classify_id = ? WHERE edb_monitor_id IN (` + utils.GetOrmInReplace(len(edbMonitorIds)) + `)`
-		_, err = tx.Raw(sql, e.ClassifyId, edbMonitorIds).Exec()
+		err = tx.Exec(sql, e.ClassifyId, edbMonitorIds).Error
 		if err != nil {
 			return
 		}
@@ -96,8 +93,8 @@ func (e *EdbMonitorClassify) Update(cols []string, classifyId []int) (err error)
 }
 
 func DeleteEdbMonitorClassifyById(id int) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Raw("DELETE FROM edb_monitor_classify WHERE classify_id =?", id).Exec()
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Exec("DELETE FROM edb_monitor_classify WHERE classify_id =?", id).Error
 	return
 }
 
@@ -105,51 +102,51 @@ func DeleteEdbMonitorClassifyByIdList(ids []int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "DELETE FROM edb_monitor_classify WHERE classify_id IN (" + utils.GetOrmInReplace(len(ids)) + ")"
-	_, err = o.Raw(sql, ids).Exec()
+	err = o.Exec(sql, ids).Error
 	return
 }
 
 func GetEdbMonitorClassifyList() (items []*EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_classify ORDER BY sort ASC"
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 func GetEdbMonitorClassifyById(id int) (item *EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_classify WHERE classify_id =?"
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func GetEdbMonitorClassifyMaxSortByParentId(parentId int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT MAX(sort) FROM edb_monitor_classify WHERE parent_id =?"
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = o.Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
 func GetChildEdbMonitorClassifyIdById(id int) (classifyId []int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT classify_id FROM edb_monitor_classify WHERE parent_id =?"
-	_, err = o.Raw(sql, id).QueryRows(&classifyId)
+	err = o.Raw(sql, id).Scan(&classifyId).Error
 	return
 }
 
 func GetChildEdbMonitorClassifyById(id int) (items []*EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_classify WHERE parent_id =?"
-	_, err = o.Raw(sql, id).QueryRows(&items)
+	err = o.Raw(sql, id).Find(&items).Error
 	return
 }
 
 func GetChildEdbMonitorClassifyByRootId(rootId int) (items []*EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_classify WHERE root_id =?"
-	_, err = o.Raw(sql, rootId).QueryRows(&items)
+	err = o.Raw(sql, rootId).Find(&items).Error
 	return
 }
 
@@ -157,35 +154,35 @@ func GetEdbMonitorClassifyCountByIdList(ids []int) (count int, err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT COUNT(*) FROM edb_monitor_classify WHERE classify_id IN (` + utils.GetOrmInReplace(len(ids)) + `)`
-	err = o.Raw(sql, ids).QueryRow(&count)
+	err = o.Raw(sql, ids).Scan(&count).Error
 	return
 }
 
 // GetEdbMonitorClassifyByParentIdAndName 根据父级ID和名称获取分类
 func GetEdbMonitorClassifyByParentIdAndName(parentId int, classifyName string, classifyId int) (item *EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM edb_monitor_classify WHERE parent_id = ? AND classify_name = ? AND classify_id <> ? LIMIT 1`
-	err = o.Raw(sql, parentId, classifyName, classifyId).QueryRow(&item)
+	err = o.Raw(sql, parentId, classifyName, classifyId).First(&item).Error
 	return
 }
 
 // UpdateEdbMonitorClassifySortByParentId 根据分类父类id更新排序
 func UpdateEdbMonitorClassifySortByParentId(parentId, classifyId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` update edb_monitor_classify set sort = ` + updateSort + ` WHERE parent_id=? and sort > ? `
 	if classifyId > 0 {
 		sql += ` or ( classify_id > ` + fmt.Sprint(classifyId) + ` and sort= ` + fmt.Sprint(nowSort) + `)`
 	}
-	_, err = o.Raw(sql, parentId, nowSort).Exec()
+	err = o.Exec(sql, parentId, nowSort).Error
 	return
 }
 
 // GetFirstEdbMonitorClassifyByParentId 获取当前父级图表分类下的排序第一条的数据
 func GetFirstEdbMonitorClassifyByParentId(parentId int) (item *EdbMonitorClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM edb_monitor_classify WHERE parent_id=? order by sort asc,classify_id asc limit 1`
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	err = o.Raw(sql, parentId).First(&item).Error
 	return
 }

+ 21 - 18
models/edb_monitor/edb_monitor_message.go

@@ -1,11 +1,10 @@
 package edbmonitor
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 type EdbMonitorMessage struct {
@@ -22,14 +21,18 @@ type EdbMonitorMessage struct {
 }
 
 func (m *EdbMonitorMessage) Insert() (insertId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	insertId, err = o.Insert(m)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(m).Error
+	if err != nil {
+		return
+	}
+	insertId = int64(m.EdbMonitorMessageId)
 	return
 }
 
 func (m *EdbMonitorMessage) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
@@ -37,43 +40,43 @@ func BatchModifyEdbMonitorMessageIsRead(ids []int, adminId int) (err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `UPDATE edb_monitor_message SET is_read =1 WHERE admin_id =? AND is_read = 0 AND edb_monitor_message_id IN (` + utils.GetOrmInReplace(len(ids)) + `)`
-	_, err = o.Raw(sql, adminId, ids).Exec()
+	err = o.Exec(sql, adminId, ids).Error
 	return
 }
 
 func (m *EdbMonitorMessage) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM edb_monitor_message WHERE 1=1 %s`, condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func GetEdbMonitorMessageById(id int) (item *EdbMonitorMessage, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_message WHERE edb_monitor_message_id =?"
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func GetEdbMonitorMessageByAdminId(adminId int) (items []*EdbMonitorMessage, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_message WHERE admin_id =? AND is_read = 0 ORDER BY create_time DESC"
-	_, err = o.Raw(sql, adminId).QueryRows(&items)
+	err = o.Raw(sql, adminId).Find(&items).Error
 	return
 }
 
 func GetEdbMonitorMessageCountByAdminId(adminId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT COUNT(*) FROM edb_monitor_message WHERE admin_id =? ORDER BY is_read ASC, create_time DESC"
-	err = o.Raw(sql, adminId).QueryRow(&count)
+	err = o.Raw(sql, adminId).Scan(&count).Error
 	return
 }
 
 func GetEdbMonitorMessagePageByAdminId(adminId, startSize, pageSize int) (items []*EdbMonitorMessage, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM edb_monitor_message WHERE admin_id =? ORDER BY is_read ASC, create_time DESC LIMIT?,?"
-	_, err = o.Raw(sql, adminId, startSize, pageSize).QueryRows(&items)
+	err = o.Raw(sql, adminId, startSize, pageSize).Find(&items).Error
 	return
 }

+ 1 - 1
models/edb_monitor/response/edb_monitor_classify.go

@@ -4,5 +4,5 @@ type EdbMonitorClassifyTree struct {
 	ClassifyId   int                       `description:"分类id"`
 	ClassifyName string                    `description:"分类名称"`
 	Level        int                       `description:"分类层级"`
-	Children     []*EdbMonitorClassifyTree `description:"子分类"`
+	Children     []*EdbMonitorClassifyTree `description:"子分类" gorm:"-"`
 }

+ 5 - 9
models/eta_trial/questionnaire_fill_record.go

@@ -1,8 +1,8 @@
 package eta_trial
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -20,9 +20,9 @@ func GetQuestionnaireFillRecordCountByMobile(mobile string) (item *Questionnaire
 	if utils.BusinessCode != utils.BusinessCodeSandbox {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM questionnaire_fill_record WHERE mobile=? ORDER BY create_time DESC LIMIT 1`
-	err = o.Raw(sql, mobile).QueryRow(&item)
+	err = o.Raw(sql, mobile).First(&item).Error
 	return
 }
 
@@ -31,11 +31,7 @@ func AddQuestionnaireFillRecord(item *QuestionnaireFillRecord) (err error) {
 	if utils.BusinessCode != utils.BusinessCodeSandbox {
 		return
 	}
-	o := orm.NewOrm()
-	id, err := o.Insert(item)
-	if err != nil {
-		return
-	}
-	item.RecordId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }

+ 28 - 42
models/fe_calendar/fe_calendar_matter.go

@@ -1,9 +1,9 @@
 package fe_calendar
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -85,12 +85,8 @@ func (m *FeCalendarMatter) PrimaryId() string {
 }
 
 func (m *FeCalendarMatter) Create() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.FeCalendarMatterId = int(id)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(m).Error
 	return
 }
 
@@ -98,21 +94,21 @@ func (m *FeCalendarMatter) CreateMulti(items []*FeCalendarMatter) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *FeCalendarMatter) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *FeCalendarMatter) Del() (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.FeCalendarMatterId).Exec()
+	err = o.Exec(sql, m.FeCalendarMatterId).Error
 	return
 }
 
@@ -120,39 +116,39 @@ func (m *FeCalendarMatter) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *FeCalendarMatter) GetItemById(id int) (item *FeCalendarMatter, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *FeCalendarMatter) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *FeCalendarMatter, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *FeCalendarMatter) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *FeCalendarMatter) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*FeCalendarMatter, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -162,12 +158,12 @@ func (m *FeCalendarMatter) GetItemsByCondition(condition string, pars []interfac
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *FeCalendarMatter) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*FeCalendarMatter, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -177,7 +173,8 @@ func (m *FeCalendarMatter) GetPageItemsByCondition(condition string, pars []inte
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -252,12 +249,8 @@ type FeCalendarMatterSaveItem struct {
 }
 
 func (m *FeCalendarMatter) Save(addMatters, editMatters, removeMatters []*FeCalendarMatter, updateCols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	tx, e := o.Begin()
-	if e != nil {
-		err = fmt.Errorf("begin tx err: %s", e.Error())
-		return
-	}
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -267,7 +260,7 @@ func (m *FeCalendarMatter) Save(addMatters, editMatters, removeMatters []*FeCale
 	}()
 
 	if len(addMatters) > 0 {
-		_, e = tx.InsertMulti(len(addMatters), addMatters)
+		e := tx.CreateInBatches(addMatters, utils.MultiAddNum).Error
 		if e != nil {
 			err = fmt.Errorf("insert multi err: %s", e.Error())
 			return
@@ -275,7 +268,7 @@ func (m *FeCalendarMatter) Save(addMatters, editMatters, removeMatters []*FeCale
 	}
 	if len(editMatters) > 0 {
 		for _, v := range editMatters {
-			_, e = tx.Update(v, updateCols...)
+			e := tx.Select(updateCols).Updates(v).Error
 			if e != nil {
 				err = fmt.Errorf("update err: %s", e.Error())
 				return
@@ -283,16 +276,9 @@ func (m *FeCalendarMatter) Save(addMatters, editMatters, removeMatters []*FeCale
 		}
 	}
 	if len(removeMatters) > 0 {
-		p, e := tx.Raw(fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())).Prepare()
-		if e != nil {
-			err = fmt.Errorf("remove prepare err: %s", e.Error())
-			return
-		}
-		defer func() {
-			_ = p.Close()
-		}()
+		sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
 		for _, v := range removeMatters {
-			_, e = p.Exec(v.FeCalendarMatterId)
+			e := tx.Exec(sql, v.FeCalendarMatterId).Error
 			if e != nil {
 				err = fmt.Errorf("remove exec err: %s", e.Error())
 				return

+ 40 - 35
models/material/material.go

@@ -1,8 +1,8 @@
 package material
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -22,36 +22,36 @@ type Material struct {
 
 // Update 素材字段变更
 func (material *Material) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(material, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(material).Error
 	return
 }
 
 // GetMaterialById 根据素材id获取素材详情
 func GetMaterialById(MaterialId int) (materialInfo *Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select * FROM material where material_id = ?`
-	err = o.Raw(sql, MaterialId).QueryRow(&materialInfo)
+	err = o.Raw(sql, MaterialId).First(&materialInfo).Error
 	return
 }
 func DeleteByMaterialIds(ids []int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM material WHERE material_id in (` + utils.GetOrmInReplace(len(ids)) + `)`
-	_, err = o.Raw(sql, ids).Exec()
+	err = o.Exec(sql, ids).Error
 	return
 }
 
 func UpdateClassifyByMaterialIds(ids []int, classifyId int, now time.Time) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `UPDATE material SET classify_id=?, modify_time=? WHERE material_id in (` + utils.GetOrmInReplace(len(ids)) + `) and classify_id != ?`
-	_, err = o.Raw(sql, classifyId, now, ids, classifyId).Exec()
+	err = o.Exec(sql, classifyId, now, ids, classifyId).Error
 	return
 }
 
 // AddMultiMaterial 批量添加素材
 func AddMultiMaterial(materialInfoList []*Material) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(utils.MultiAddNum, materialInfoList)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(materialInfoList, utils.MultiAddNum).Error
 	if err != nil {
 		return
 	}
@@ -83,34 +83,35 @@ type MaterialListItems struct {
 }
 
 func GetMaterialListPageByCondition(condition string, pars []interface{}, startSize, pageSize int) (item []*MaterialListItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += " ORDER BY create_time DESC, material_id DESC LIMIT ?,? "
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&item)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&item).Error
 	return
 }
 
 func GetMaterialListByCondition(condition string, pars []interface{}) (item []*MaterialListItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += " ORDER BY create_time DESC, material_id DESC"
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = o.Raw(sql, pars...).Find(&item).Error
 	return
 }
 
 func GetMaterialListCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT COUNT(1) AS count FROM material WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -120,24 +121,28 @@ type MaterialListResp struct {
 }
 
 func AddMaterial(item *Material) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.MaterialId)
 	return
 }
 
 // GetMaterialByClassifyIdAndName 根据分类id和素材名获取图表信息
 func GetMaterialByClassifyIdAndName(classifyId int, name string) (item *Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material WHERE classify_id = ? and material_name=? `
-	err = o.Raw(sql, classifyId, name).QueryRow(&item)
+	err = o.Raw(sql, classifyId, name).First(&item).Error
 	return
 }
 
 // GetMaterialByIds 根据素材id获取素材信息
 func GetMaterialByIds(ids []int) (items []*MaterialListItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material WHERE material_id in (` + utils.GetOrmInReplace(len(ids)) + `) `
-	_, err = o.Raw(sql, ids).QueryRows(&items)
+	err = o.Raw(sql, ids).Find(&items).Error
 	return
 }
 
@@ -203,44 +208,44 @@ type RenameMaterialReq struct {
 }
 
 func GetMaterialInfoCountByClassifyIds(classifyIds []int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT COUNT(1) AS count FROM material WHERE classify_id in(` + utils.GetOrmInReplace(len(classifyIds)) + `)`
-	err = o.Raw(sql, classifyIds).QueryRow(&count)
+	err = o.Raw(sql, classifyIds).Scan(&count).Error
 	return
 }
 
 func GetMaterialByNames(materialNames []string) (items []*Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material WHERE material_name in (` + utils.GetOrmInReplace(len(materialNames)) + `)`
-	_, err = o.Raw(sql, materialNames).QueryRows(&items)
+	err = o.Raw(sql, materialNames).Find(&items).Error
 	return
 }
 
 func GetMaterialByNameEns(materialNames []string) (items []*Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material WHERE material_name_en in (` + utils.GetOrmInReplace(len(materialNames)) + `)`
-	_, err = o.Raw(sql, materialNames).QueryRows(&items)
+	err = o.Raw(sql, materialNames).Find(&items).Error
 	return
 }
 
 func GetMaterialByName(materialName string) (item *Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material WHERE material_name = ?`
-	err = o.Raw(sql, materialName).QueryRow(&item)
+	err = o.Raw(sql, materialName).First(&item).Error
 	return
 }
 func GetMaterialByNameEn(materialName string) (item *Material, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material WHERE material_name_en = ?`
-	err = o.Raw(sql, materialName).QueryRow(&item)
+	err = o.Raw(sql, materialName).First(&item).Error
 	return
 }
 
 // GetMaterialMaxSort 获取最大的排序数
 func GetMaterialMaxSort() (sort int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT MAX(sort) AS sort FROM material `
-	err = o.Raw(sql).QueryRow(&sort)
+	err = o.Raw(sql).Scan(&sort).Error
 	return
 }
 

+ 46 - 42
models/material/material_classify.go

@@ -1,9 +1,9 @@
 package material
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -22,39 +22,43 @@ type MaterialClassify struct {
 }
 
 func AddMaterialClassify(item *MaterialClassify) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.ClassifyId)
 	return
 }
 
 // GetMaterialClassifyByParentId
 func GetMaterialClassifyByParentId(parentId int) (items []*MaterialClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material_classify WHERE parent_id=? order by sort asc,classify_id asc`
-	_, err = o.Raw(sql, parentId).QueryRows(&items)
+	err = o.Raw(sql, parentId).Find(&items).Error
 	return
 }
 
 // GetMaterialClassifyAll
 func GetMaterialClassifyAll() (items []*MaterialClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material_classify WHERE parent_id<>0 order by sort asc,classify_id asc`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 type MaterialClassifyItems struct {
-	ClassifyId     int       `orm:"column(classify_id);pk" gorm:"primaryKey"`
-	ClassifyName   string    `description:"分类名称"`
-	ClassifyNameEn string    `description:"英文分类名称"`
-	ParentId       int       `description:"父级id"`
-	CreateTime     time.Time `description:"创建时间"`
-	ModifyTime     time.Time `description:"修改时间"`
-	SysUserId      int       `description:"创建人id"`
-	SysUserName    string    `description:"创建人姓名"`
-	Level          int       `description:"层级"`
-	Sort           int       `description:"排序字段,越小越靠前,默认值:10"`
-	Children       []*MaterialClassifyItems
+	ClassifyId     int                      `orm:"column(classify_id);pk" gorm:"primaryKey"`
+	ClassifyName   string                   `description:"分类名称"`
+	ClassifyNameEn string                   `description:"英文分类名称"`
+	ParentId       int                      `description:"父级id"`
+	CreateTime     time.Time                `description:"创建时间"`
+	ModifyTime     time.Time                `description:"修改时间"`
+	SysUserId      int                      `description:"创建人id"`
+	SysUserName    string                   `description:"创建人姓名"`
+	Level          int                      `description:"层级"`
+	Sort           int                      `description:"排序字段,越小越靠前,默认值:10"`
+	Children       []*MaterialClassifyItems `gorm:"-"`
 }
 
 type MaterialClassifyListResp struct {
@@ -68,38 +72,38 @@ type AddMaterialClassifyReq struct {
 }
 
 func GetMaterialClassifyNameCount(classifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT COUNT(1) AS count FROM material_classify WHERE parent_id=? AND classify_name=? `
-	err = o.Raw(sql, parentId, classifyName).QueryRow(&count)
+	err = o.Raw(sql, parentId, classifyName).Scan(&count).Error
 	return
 }
 
 func GetMaterialClassifyNameEnCount(classifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT COUNT(1) AS count FROM material_classify WHERE parent_id=? AND classify_name_en=? `
-	err = o.Raw(sql, parentId, classifyName).QueryRow(&count)
+	err = o.Raw(sql, parentId, classifyName).Scan(&count).Error
 	return
 }
 
 func GetMaterialClassifyNameNotSelfCount(id int, classifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT COUNT(1) AS count FROM material_classify WHERE classify_id !=? AND parent_id=? AND classify_name=? `
-	err = o.Raw(sql, id, parentId, classifyName).QueryRow(&count)
+	err = o.Raw(sql, id, parentId, classifyName).Scan(&count).Error
 	return
 }
 
 func GetMaterialClassifyNameEnNotSelfCount(id int, classifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT COUNT(1) AS count FROM material_classify WHERE classify_id !=? AND parent_id=? AND classify_name_en=? `
-	err = o.Raw(sql, id, parentId, classifyName).QueryRow(&count)
+	err = o.Raw(sql, id, parentId, classifyName).Scan(&count).Error
 	return
 }
 
 // GetMaterialClassifyMaxSort 获取沙盘分类下最大的排序数
 func GetMaterialClassifyMaxSort(parentId int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT MAX(sort) AS sort FROM material_classify WHERE parent_id=? `
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = o.Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
@@ -109,9 +113,9 @@ type EditMaterialClassifyReq struct {
 }
 
 func GetMaterialClassifyById(classifyId int) (item *MaterialClassify, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material_classify WHERE classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = o.Raw(sql, classifyId).First(&item).Error
 	return
 }
 
@@ -130,9 +134,9 @@ type DeleteMaterialClassifyReq struct {
 }
 
 func DeleteMaterialClassify(classifyIds []int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` DELETE FROM material_classify WHERE classify_id IN(` + utils.GetOrmInReplace(len(classifyIds)) + `) `
-	_, err = o.Raw(sql, classifyIds).Exec()
+	err = o.Exec(sql, classifyIds).Error
 	return
 }
 
@@ -149,33 +153,33 @@ type MoveMaterialClassifyReq struct {
 
 // UpdateMaterialClassifySortByParentId 根据沙盘父类id更新排序
 func UpdateMaterialClassifySortByParentId(parentId, classifyId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` update material_classify set sort = ` + updateSort + ` WHERE parent_id=? and sort > ? `
 	if classifyId > 0 {
 		sql += ` or ( classify_id > ` + fmt.Sprint(classifyId) + ` and sort= ` + fmt.Sprint(nowSort) + `)`
 	}
-	_, err = o.Raw(sql, parentId, nowSort).Exec()
+	err = o.Exec(sql, parentId, nowSort).Error
 	return
 }
 
 // GetFirstMaterialClassifyByParentId 获取当前父级沙盘分类下的排序第一条的数据
 func GetFirstMaterialClassifyByParentId(parentId int) (item *MaterialClassify, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT * FROM material_classify WHERE parent_id=? order by sort asc,classify_id asc limit 1`
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	err = o.Raw(sql, parentId).First(&item).Error
 	return
 }
 
 // Update 更新沙盘分类基础信息
 func (m *MaterialClassify) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 // GetMaterialClassifyAndInfoByParentId
 func GetMaterialClassifyAndInfoByParentId(parentId int) (items []*MaterialClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` SELECT *
 FROM
 	material_classify 
@@ -184,7 +188,7 @@ WHERE
 ORDER BY
 	sort ASC,
 	classify_id ASC`
-	_, err = o.Raw(sql, parentId).QueryRows(&items)
+	err = o.Raw(sql, parentId).Find(&items).Error
 	return
 }
 
@@ -208,8 +212,8 @@ type SandboxLinkCheckResp struct {
 }
 
 func GetMaterialClassifyByLevelPath(levelPath string) (items []*MaterialClassify, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM material_classify where level_path like "` + levelPath + `%"`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }

+ 62 - 45
models/ppt_english/ppt_english.go

@@ -1,10 +1,11 @@
 package ppt_english
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/models/data_manage/excel"
+	"eta/eta_api/utils"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -55,7 +56,7 @@ type PptEnglishItem struct {
 }
 
 func GetPptEnglishList(condition string, pars []interface{}, startSize, pageSize int) (items []*PptEnglishItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 `
 	if condition != "" {
 		sql += condition
@@ -63,12 +64,13 @@ func GetPptEnglishList(condition string, pars []interface{}, startSize, pageSize
 	//
 	sql += `ORDER BY modify_time DESC LIMIT ?,?`
 	//sql += `ORDER BY create_time DESC LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func GetPptEnglishByCondition(condition string, pars []interface{}) (items []*PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 `
 	if condition != "" {
 		sql += condition
@@ -76,17 +78,17 @@ func GetPptEnglishByCondition(condition string, pars []interface{}) (items []*Pp
 	//
 	sql += `ORDER BY modify_time DESC`
 	//sql += `ORDER BY create_time DESC LIMIT ?,?`
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func GetPptEnglishListCount(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT COUNT(1) AS count FROM ppt_english WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -97,16 +99,20 @@ type PptEnglishListResp struct {
 
 // AddPptEnglish 新增PPT
 func AddPptEnglish(item *PptEnglish) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.PptId)
 	return
 }
 
 // DeletePptEnglish 删除ppt
 func DeletePptEnglish(pptId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM ppt_english WHERE ppt_id=? `
-	_, err = o.Raw(sql, pptId).Exec()
+	err = o.Exec(sql, pptId).Error
 	return
 }
 
@@ -155,16 +161,16 @@ type EditPptEnglishReq struct {
 
 // Update 更新ppt基础信息
 func (item *PptEnglish) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 // EditPptEnglish 编辑ppt
 func EditPptEnglish(item *PptEnglish) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `UPDATE ppt_english SET title = ?,ppt_date= ?, report_type=?,modify_time=NOW()  WHERE ppt_id = ? `
-	_, err = o.Raw(sql, item.Title, item.PptDate, item.ReportType, item.PptId).Exec()
+	err = o.Exec(sql, item.Title, item.PptDate, item.ReportType, item.PptId).Error
 	return
 }
 
@@ -179,24 +185,27 @@ type SavePptEnglishPathReq struct {
 }
 
 func GetPptEnglishById(pptId int) (item *PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 AND ppt_id=? `
-	err = o.Raw(sql, pptId).QueryRow(&item)
+	err = o.Raw(sql, pptId).First(&item).Error
 	return
 }
 
 func GetPptEnglishByIds(pptIds []int) (list []*PptEnglish, err error) {
-	_, err = orm.NewOrmUsingDB("rddp").
-		QueryTable("ppt_english").
-		Filter("ppt_id__in", pptIds).
-		All(&list)
+	/*err = global.DbMap[utils.DbNameReport].
+	QueryTable("ppt_english").
+	Filter("ppt_id__in", pptIds).
+	All(&list)*/
+	sql := `SELECT * FROM ppt_english WHERE ppt_id in (` + utils.GetOrmInReplace(len(pptIds)) + `)`
+
+	err = global.DbMap[utils.DbNameReport].Raw(sql, pptIds).Find(&list).Error
 	return
 }
 
 func GetPptEnglishByTitle(title string) (item *PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 AND title=? `
-	err = o.Raw(sql, title).QueryRow(&item)
+	err = o.Raw(sql, title).First(&item).Error
 	return
 }
 
@@ -228,8 +237,8 @@ type PptEnglishPublishReq struct {
 // EditPptEnglishPath 编辑Ppt的下载地址
 func EditPptEnglishPath(pptId int, pptxPath string) (err error) {
 	sql := `UPDATE ppt_english SET pptx_url=?,modify_time=NOW(),publish_time=NOW() WHERE ppt_id=? `
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql, pptxPath, pptId).Exec()
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Exec(sql, pptxPath, pptId).Error
 	return
 }
 
@@ -243,8 +252,12 @@ type PptEnglishPublishRecord struct {
 
 // AddPptEnglishPublishRecord 添加发布记录,主要是记录每次发布的时候,当前的ppt
 func AddPptEnglishPublishRecord(item *PptEnglishPublishRecord) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.Id)
 	return
 }
 
@@ -267,8 +280,12 @@ type PptEnglishSaveLog struct {
 
 // AddPptEnglishSaveLog 新增PPT日志
 func AddPptEnglishSaveLog(item *PptEnglishSaveLog) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.Id)
 	return
 }
 
@@ -285,16 +302,16 @@ type PPT2ReportReq struct {
 
 // AddPptEnglishMulti 批量新增ppt
 func AddPptEnglishMulti(list []*PptEnglish) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(1, list)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(list, utils.MultiAddNum).Error
 	return
 }
 
 // GetAllPptTitle 获取当前目录的所有名称
 func GetAllPptTitle() (names []string, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select title from ppt_english"
-	_, err = o.Raw(sql).QueryRows(&names)
+	err = o.Raw(sql).Scan(&names).Error
 	return
 }
 
@@ -306,46 +323,46 @@ type PPT2ReportResp struct {
 
 // GetPptEnglishByReportId 通过关联的报告ID获取PPT
 func GetPptEnglishByReportId(reportId int) (item *PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 AND report_id=? LIMIT 1`
-	err = o.Raw(sql, reportId).QueryRow(&item)
+	err = o.Raw(sql, reportId).First(&item).Error
 	return
 }
 
 // GetSharePptEnglish 获取公开分享的ppt
 func GetSharePptEnglish() (items []*PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 AND is_share = 1 ORDER BY create_time DESC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 // GetAllPptEnglishList 根据条件获取所有的Ppt
 func GetAllPptEnglishList(condition string, pars []interface{}) (items []*PptEnglishItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	//
 	sql += `ORDER BY modify_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetSyncReportPptList 获取所有已经同步了报告的ppt
 func GetSyncReportPptList() (list []*PptEnglish, err error) {
 	sql := `SELECT * FROM ppt_english WHERE report_id>0 `
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql).QueryRows(&list)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
 // GetPPTTitleList 获取PPT标题列表
 func GetPPTTitleList() (list []string, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT title FROM ppt_english`
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
@@ -359,9 +376,9 @@ type EnglishPPT2ReportReq struct {
 }
 
 func GetPptEnglishByTitleAndId(title string, adminId int) (item *PptEnglish, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english WHERE 1=1 AND title=? AND admin_id=? `
-	err = o.Raw(sql, title, adminId).QueryRow(&item)
+	err = o.Raw(sql, title, adminId).First(&item).Error
 	return
 }
 

+ 16 - 19
models/ppt_english/ppt_english_grant.go

@@ -1,9 +1,9 @@
 package ppt_english
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 // PptEnglishGrant Ppt授权表
@@ -17,9 +17,9 @@ type PptEnglishGrant struct {
 
 // GetPPtGrantInfo 获取已经有权限的ppt列表
 func GetPPtGrantInfo(pptId int) (list []*PptEnglishGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM ppt_english_grant WHERE ppt_id=? `
-	_, err = o.Raw(sql, pptId).QueryRows(&list)
+	err = o.Raw(sql, pptId).Find(&list).Error
 	return
 }
 
@@ -39,11 +39,8 @@ type GrantPptReq struct {
 
 // MultiAddPptEnglishGrant 批量添加授权记录
 func MultiAddPptEnglishGrant(pptId int, list []*PptEnglishGrant) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -53,14 +50,14 @@ func MultiAddPptEnglishGrant(pptId int, list []*PptEnglishGrant) (err error) {
 	}()
 
 	sql := "DELETE from ppt_english_grant where ppt_id=?"
-	_, err = to.Raw(sql, pptId).Exec()
+	err = to.Exec(sql, pptId).Error
 	if err != nil {
 		return
 	}
 
 	// 新增授权记录
 	if len(list) > 0 {
-		_, tmpErr := to.InsertMulti(len(list), list)
+		tmpErr := to.CreateInBatches(list, utils.MultiAddNum).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
@@ -72,9 +69,9 @@ func MultiAddPptEnglishGrant(pptId int, list []*PptEnglishGrant) (err error) {
 
 // DeletePptEnglishGrant 移除授权记录
 func DeletePptEnglishGrant(pptId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "DELETE from ppt_english_grant where ppt_id=?"
-	_, err = o.Raw(sql, pptId).Exec()
+	err = o.Exec(sql, pptId).Error
 
 	return
 }
@@ -109,31 +106,31 @@ type PptEnglishInfoGrantItem struct {
 
 // GetAllGrantList 获取已经有权限的ppt列表
 func GetAllGrantList(sysUserId int) (list []*PptEnglishInfoGrantItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
  WHERE a.admin_id=? OR b.department_id=1 OR b.grant_admin_id=? GROUP BY a.ppt_id`
-	_, err = o.Raw(sql, sysUserId, sysUserId).QueryRows(&list)
+	err = o.Raw(sql, sysUserId, sysUserId).Find(&list).Error
 	return
 }
 
 // GetGrantList 获取我共享出去/别人共享给我的的ppt列表
 func GetGrantList(condition string, pars []interface{}) (list []*PptEnglishInfoGrantItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
  WHERE 1=1 `
 	sql += condition
 
 	sql += ` GROUP BY a.ppt_id ORDER BY a.modify_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&list)
+	err = o.Raw(sql, pars...).Find(&list).Error
 
 	return
 }
 
 // GetPPtGrantConf 根据ppt_id和操作人获取ppt权限配置
 func GetPPtGrantConf(pptId, sysUserId int) (item *PptEnglishInfoGrantItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
  WHERE a.ppt_id=?  AND (b.department_id=1 OR b.grant_admin_id=?) GROUP BY a.ppt_id`
-	err = o.Raw(sql, pptId, sysUserId).QueryRow(&item)
+	err = o.Raw(sql, pptId, sysUserId).First(&item).Error
 	return
 }

+ 39 - 41
models/ppt_english/ppt_english_group.go

@@ -1,9 +1,9 @@
 package ppt_english
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 type PptEnglishGroup struct {
@@ -20,133 +20,131 @@ type PptEnglishGroup struct {
 
 // GetPrivatePptGroups 获取私有目录
 func GetPrivatePptGroups(adminId int) (list []*PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where admin_id=? order by group_sort asc, group_id asc"
-	_, err = o.Raw(sql, adminId).QueryRows(&list)
+	err = o.Raw(sql, adminId).Find(&list).Error
 	return
 }
 
 // GetPrivatePptGroupsByAdminId 获取用户自己的私有目录
 func GetPrivatePptGroupsByAdminId(adminId int) (list []*PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where admin_id=? AND is_share_add=0 order by group_sort asc, group_id asc"
-	_, err = o.Raw(sql, adminId).QueryRows(&list)
+	err = o.Raw(sql, adminId).Find(&list).Error
 	return
 }
 
 // GetPublicPptGroups 获取ppt公共目录
 func GetPublicPptGroups() (list []*PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where is_share=1 order by share_time asc, group_id asc"
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
 // GetPptGroupByName 根据目录名称查询
 func GetPptGroupByName(groupName string, adminId int) (item *PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where admin_id=? and group_name=?"
-	err = o.Raw(sql, adminId, groupName).QueryRow(&item)
+	err = o.Raw(sql, adminId, groupName).First(&item).Error
 	return
 }
 
 // GetPptGroupById 根据目录Id查询
 func GetPptGroupByGroupIdAdminId(groupId int64, adminId int) (item *PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where admin_id=? and group_id=?"
-	err = o.Raw(sql, adminId, groupId).QueryRow(&item)
+	err = o.Raw(sql, adminId, groupId).First(&item).Error
 	return
 }
 
 // GetPptGroupByGroupId 根据目录Id查询
 func GetPptGroupByGroupId(groupId int64) (item *PptEnglishGroup, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select * from ppt_english_group where group_id=?"
-	err = o.Raw(sql, groupId).QueryRow(&item)
+	err = o.Raw(sql, groupId).First(&item).Error
 	return
 }
 
 // AddPptGroup 新增目录
 func AddPptGroup(item *PptEnglishGroup) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = item.GroupId
 	return
 }
 
 // DeletePptGroup 删除单个ppt目录
 func DeletePptGroup(groupId int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM ppt_english_group WHERE group_id=? `
-	_, err = o.Raw(sql, groupId).Exec()
+	err = o.Exec(sql, groupId).Error
 	return
 }
 
 // DeletePptGroupByGroupIds 删除单个ppt目录
 func DeletePptGroupByGroupIds(groupIds string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM ppt_english_group WHERE group_id in  ` + groupIds
-	_, err = o.Raw(sql).Exec()
+	err = o.Exec(sql).Error
 	return
 }
 
 // Update 更新ppt目录基础信息
 func (item *PptEnglishGroup) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 // MoveUpGroupBySort 往上移动目录
 func MoveUpGroupBySort(nextSort, currentSort int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `update ppt_english_group set group_sort = group_sort + 1 where group_sort >= ? and group_sort< ?`
-	_, err = o.Raw(sql, nextSort, currentSort).Exec()
+	err = o.Exec(sql, nextSort, currentSort).Error
 	return
 }
 
 // MoveDownGroupBySort 往下移动目录
 func MoveDownGroupBySort(prevSort, currentSort int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `update ppt_english_group set group_sort = group_sort - 1 where group_sort <= ? and group_sort> ? `
-	_, err = o.Raw(sql, prevSort, currentSort).Exec()
+	err = o.Exec(sql, prevSort, currentSort).Error
 	return
 }
 
 // GetPptGroupNamesByAdminId 获取当前目录的所有名称
 func GetPptGroupNamesByAdminId(adminId int) (names []string, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select group_name from ppt_english_group  where admin_id = ?"
-	_, err = o.Raw(sql, adminId).QueryRows(&names)
+	err = o.Raw(sql, adminId).Scan(&names).Error
 	return
 }
 
 // GetPptGroupIdAndGroupNameByAdminId 查找分组名称和标识
 func GetPptGroupIdAndGroupNameByAdminId(adminId int) (list []*RespPptGroupName, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := "select group_id, group_name from ppt_english_group where admin_id = ? and is_share_add != 1 order by group_sort asc, group_id asc"
-	_, err = o.Raw(sql, adminId).QueryRows(&list)
+	err = o.Raw(sql, adminId).Find(&list).Error
 	return
 }
 
 // AddPptGroupMappingMulti 批量新增ppt和目录的映射关系
 func AddPptGroupMulti(list []*PptEnglishGroup) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(1, list)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(list, utils.MultiAddNum).Error
 	return
 }
 
 // UpdatePptGroupSortMulti 批量更新初始排序标识
 func UpdatePptGroupSortMulti(groupIds []int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	p, err := o.Raw("UPDATE ppt_english_group SET group_sort = group_id WHERE group_id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
+	o := global.DbMap[utils.DbNameReport]
+	sql := "UPDATE ppt_english_group SET group_sort = group_id WHERE group_id = ?"
 	for _, v := range groupIds {
-		_, err = p.Exec(v)
+		err = o.Exec(sql, v).Error
 		if err != nil {
 			return
 		}

+ 47 - 58
models/ppt_english/ppt_english_group_mapping.go

@@ -1,9 +1,9 @@
 package ppt_english
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 // ppt目录和ppt 映射表
@@ -22,96 +22,95 @@ type PptEnglishGroupMapping struct {
 
 // AddPptGroupMapping 新增目录和ppt的映射关系
 func AddPptGroupMapping(item *PptEnglishGroupMapping) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = item.GroupPptId
 	return
 }
 
 // GetPptMappingCountByGroupId 查询目录下,ppt的个数
 func GetPptMappingCountByGroupId(groupId int64) (total int64, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select count(*) from ppt_english_group_mapping where group_id=?`
-	err = o.Raw(sql, groupId).QueryRow(&total)
+	err = o.Raw(sql, groupId).Scan(&total).Error
 	return
 }
 
 // GetPptMappingListByGroupId 查询目录下,ppt列表
 func GetPptMappingListByGroupId(groupId int64) (list []*PptEnglishGroupMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select group_ppt_id, group_id, ppt_id, ppt_sort, admin_id, admin_real_name, create_time from ppt_english_group_mapping where group_id=? order by ppt_sort asc, group_ppt_id asc `
-	_, err = o.Raw(sql, groupId).QueryRows(&list)
+	err = o.Raw(sql, groupId).Find(&list).Error
 	return
 }
 
 // GetPptMappingListByGroupIds 根据分组ID查找
 func GetPptMappingListByGroupIds(groupIds []int64) (list []*PptEnglishGroupMapping, err error) {
-	_, err = orm.NewOrmUsingDB("rddp").
-		QueryTable("ppt_english_group_mapping").
-		Filter("group_id__in", groupIds).
-		OrderBy("-ppt_sort", "group_ppt_id").
-		All(&list)
-
+	o := global.DbMap[utils.DbNameReport] /*.
+	QueryTable("ppt_english_group_mapping").
+	Filter("group_id__in", groupIds).
+	OrderBy("-ppt_sort", "group_ppt_id").
+	All(&list)*/
+	sql := `select * from ppt_english_group_mapping where group_id in ` + utils.GetOrmInReplace(len(groupIds)) + ` order by ppt_sort desc, group_ppt_id asc`
+	err = o.Raw(sql, groupIds).Find(&list).Error
 	return
 }
 
 // GetPptMappingByPptId 查询目录下, pptId对应的目录映射关系
 func GetPptMappingByPptId(pptId int64) (item *PptEnglishGroupMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := ` select * from ppt_english_group_mapping where ppt_id=? `
-	err = o.Raw(sql, pptId).QueryRow(&item)
+	err = o.Raw(sql, pptId).First(&item).Error
 	return
 }
 
 // GetPptMappingListByGroupId 查询目录下,ppt列表, 降序排列
 func GetPptMappingListByGroupIdDesc(groupId int64) (list []*PptEnglishGroupMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select group_ppt_id, group_id, ppt_id, ppt_sort, admin_id, admin_real_name, create_time from ppt_english_group_mapping where group_id=? order by ppt_sort desc, group_ppt_id desc `
-	_, err = o.Raw(sql, groupId).QueryRows(&list)
+	err = o.Raw(sql, groupId).Find(&list).Error
 	return
 }
 
 // GetPptMappingByGroupPptId 查询根据映射ID,查询单个映射关系
 func GetPptMappingByGroupPptId(groupPptId int64, adminId int) (item *PptEnglishGroupMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select * from ppt_english_group_mapping where group_ppt_id=? and admin_id=?`
-	err = o.Raw(sql, groupPptId, adminId).QueryRow(&item)
+	err = o.Raw(sql, groupPptId, adminId).First(&item).Error
 	return
 }
 
 // GetPptMappingByGroupPptId 查询根据映射ID,查询单个映射关系数量
 func GetPptMappingCountByGroupPptId(groupPptId int64, adminId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select COUNT(*) AS count from ppt_english_group_mapping where group_ppt_id=? and admin_id=?`
-	err = o.Raw(sql, groupPptId, adminId).QueryRow(&count)
+	err = o.Raw(sql, groupPptId, adminId).Scan(&count).Error
 	return
 }
 
 // Update 更新ppt目录映射的基本信息
 func (item *PptEnglishGroupMapping) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 // AddPptGroupMappingMulti 批量新增ppt和目录的映射关系
 func AddPptGroupMappingMulti(list []*PptEnglishGroupMapping) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(1, list)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(list, utils.MultiAddNum).Error
 	return
 }
 
 // UpdatePptGroupMappingSortMulti 批量更新初始排序标识
 func UpdatePptGroupMappingSortMulti(groupPptIds []int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	p, err := o.Raw("UPDATE ppt_english_group_mapping SET ppt_sort = group_ppt_id WHERE group_ppt_id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
+	o := global.DbMap[utils.DbNameReport]
+	sql := "UPDATE ppt_english_group_mapping SET ppt_sort = group_ppt_id WHERE group_ppt_id = ?"
 	for _, v := range groupPptIds {
-		_, err = p.Exec(v)
+		err = o.Exec(sql, v).Error
 		if err != nil {
 			return
 		}
@@ -121,59 +120,49 @@ func UpdatePptGroupMappingSortMulti(groupPptIds []int64) (err error) {
 
 // DeletePptGroupMapping 删除ppt目录
 func DeletePptGroupMapping(groupId int64, adminId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM ppt_english_group_mapping WHERE group_ppt_id=? and admin_id=? `
-	_, err = o.Raw(sql, groupId, adminId).Exec()
+	err = o.Exec(sql, groupId, adminId).Error
 	return
 }
 
 // DeletePptGroupMappingByPptId 删除ppt目录
 func DeletePptGroupMappingByPptId(pptId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `DELETE FROM ppt_english_group_mapping WHERE ppt_id=?`
-	_, err = o.Raw(sql, pptId).Exec()
+	err = o.Exec(sql, pptId).Error
 	return
 }
 
 // MoveUpGroupPptBySort 往上移动ppt
 func MoveUpGroupPptBySort(groupId, nextSort, currentSort int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `update ppt_english_group_mapping set ppt_sort = ppt_sort + 1 where group_id=? and ppt_sort >= ? and ppt_sort< ?`
-	_, err = o.Raw(sql, groupId, nextSort, currentSort).Exec()
+	err = o.Exec(sql, groupId, nextSort, currentSort).Error
 	return
 }
 
 // MoveDownGroupPptBySort 往下移动ppt
 func MoveDownGroupPptBySort(groupId, prevSort, currentSort int64) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `update ppt_english_group_mapping set ppt_sort = ppt_sort - 1 where group_id=? and ppt_sort <= ? and ppt_sort> ? `
-	_, err = o.Raw(sql, groupId, prevSort, currentSort).Exec()
+	err = o.Exec(sql, groupId, prevSort, currentSort).Error
 	return
 }
 
 // GetGroupPptByPptId 根据pptID 查找各个目录下的ppt
 func GetGroupPptByPptId(pptId int) (list []*PptEnglishGroupMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `select * from ppt_english_group_mapping where ppt_id=?`
-	_, err = o.Raw(sql, pptId).QueryRows(&list)
+	err = o.Raw(sql, pptId).Find(&list).Error
 	return
 }
 
 // GetPublicGroupPptByPptIds 根据pptid查询公共目录下的ppt
 func GetPublicGroupPptByPptIds(pptIds []string) (list []*PptEnglishGroupMapping, err error) {
-	qb, _ := orm.NewQueryBuilder("mysql")
-	// 构建查询对象
-	qb.Select("p.*").
-		From("ppt_english_group as g").
-		InnerJoin("ppt_english_group_mapping as p").On("g.group_id = p.group_id").
-		Where("g.is_share = 1 and p.ppt_id").In(pptIds...).
-		OrderBy("g.share_time asc, p.ppt_sort asc")
-
-	// 导出 SQL 语句
-	sql := qb.String()
-
+	sql := `select p.* from ppt_english_group as g inner join ppt_english_group_mapping as p on g.group_id = p.group_id where g.is_share = 1 and p.ppt_id in ` + utils.GetOrmInReplace(len(pptIds)) + ` order by g.share_time asc, p.ppt_sort asc`
 	// 执行 SQL 语句
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Raw(sql).QueryRows(&list)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Raw(sql).Find(&list).Error
 	return
 }

+ 6 - 8
models/ppt_english/report_ppt_english_img.go

@@ -1,7 +1,8 @@
 package ppt_english
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -20,12 +21,9 @@ func AddAndEditMultiReportPptEnglishImg(pptId int, reportPptEnglishImgList []*Re
 	if len(reportPptEnglishImgList) < 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -34,10 +32,10 @@ func AddAndEditMultiReportPptEnglishImg(pptId int, reportPptEnglishImgList []*Re
 		}
 	}()
 	sql := ` DELETE FROM report_ppt_english_img WHERE ppt_id = ?`
-	_, err = to.Raw(sql, pptId).Exec()
+	err = to.Exec(sql, pptId).Error
 	if err != nil {
 		return
 	}
-	_, err = to.InsertMulti(len(reportPptEnglishImgList), reportPptEnglishImgList)
+	err = to.CreateInBatches(reportPptEnglishImgList, utils.MultiAddNum).Error
 	return
 }

+ 11 - 14
models/report/report_chapter_grant.go

@@ -1,8 +1,8 @@
 package report
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -24,11 +24,8 @@ type ReportChapterGrant struct {
 // @param list []*ReportChapterGrant
 // @return err error
 func (m ReportChapterGrant) MultiAddReportChapterGrantGrant(reportChapterId int, list []*ReportChapterGrant) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -38,14 +35,14 @@ func (m ReportChapterGrant) MultiAddReportChapterGrantGrant(reportChapterId int,
 	}()
 
 	sql := "DELETE from report_chapter_grant where report_chapter_id=?"
-	_, err = to.Raw(sql, reportChapterId).Exec()
+	err = to.Exec(sql, reportChapterId).Error
 	if err != nil {
 		return
 	}
 
 	// 新增授权记录
 	if len(list) > 0 {
-		_, tmpErr := to.InsertMulti(500, list)
+		tmpErr := to.CreateInBatches(list, utils.MultiAddNum).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
@@ -64,9 +61,9 @@ func (m ReportChapterGrant) MultiAddReportChapterGrantGrant(reportChapterId int,
 // @return list []*ReportChapterGrant
 // @return err error
 func (m ReportChapterGrant) GetGrantListById(reportChapterId int) (list []*ReportChapterGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_chapter_grant WHERE report_chapter_id=? `
-	_, err = o.Raw(sql, reportChapterId).QueryRows(&list)
+	err = o.Raw(sql, reportChapterId).Find(&list).Error
 
 	return
 }
@@ -85,9 +82,9 @@ func (m ReportChapterGrant) GetGrantListByIdList(reportChapterIdList []int) (lis
 		return
 	}
 
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_chapter_grant WHERE report_chapter_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, reportChapterIdList).QueryRows(&list)
+	err = o.Raw(sql, reportChapterIdList).Find(&list).Error
 
 	return
 }
@@ -102,9 +99,9 @@ func (m ReportChapterGrant) GetGrantListByIdList(reportChapterIdList []int) (lis
 // @return item *ReportGrant
 // @return err error
 func (m ReportChapterGrant) GetGrantByIdAndAdmin(reportChapterId, sysUserId int) (item *ReportGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_chapter_grant WHERE report_chapter_id = ? AND admin_id = ? `
-	err = o.Raw(sql, reportChapterId, sysUserId).QueryRow(&item)
+	err = o.Raw(sql, reportChapterId, sysUserId).First(&item).Error
 
 	return
 }

+ 14 - 20
models/report/report_chapter_permission_mapping.go

@@ -1,8 +1,8 @@
 package report
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -24,11 +24,8 @@ 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 := global.DbMap[utils.DbNameReport]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -38,14 +35,14 @@ func (m ReportChapterPermissionMapping) MultiAddReportChapterPermissionMappingPe
 	}()
 
 	sql := "DELETE from report_chapter_permission_mapping where report_chapter_id=?"
-	_, err = to.Raw(sql, reportChapterId).Exec()
+	err = to.Exec(sql, reportChapterId).Error
 	if err != nil {
 		return
 	}
 
 	// 新增品种权限记录
 	if len(list) > 0 {
-		_, tmpErr := to.InsertMulti(500, list)
+		tmpErr := to.CreateInBatches(list, utils.MultiAddNum).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
@@ -64,9 +61,9 @@ func (m ReportChapterPermissionMapping) MultiAddReportChapterPermissionMappingPe
 // @return list []*ReportChapterPermissionMapping
 // @return err error
 func (m ReportChapterPermissionMapping) GetPermissionListById(reportChapterId int) (list []*ReportChapterPermissionMapping, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_chapter_permission_mapping WHERE report_chapter_id=? `
-	_, err = o.Raw(sql, reportChapterId).QueryRows(&list)
+	err = o.Raw(sql, reportChapterId).Find(&list).Error
 
 	return
 }
@@ -90,10 +87,10 @@ type ReportChapterPermissionItem struct {
 // @return list []*ReportChapterPermissionMapping
 // @return err error
 func (m ReportChapterPermissionMapping) GetPermissionItemListById(reportChapterId int) (list []*ReportChapterPermissionItem, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT a.*,b.chart_permission_name FROM report_chapter_permission_mapping AS a 
          JOIN chart_permission AS b on a.chart_permission_id=b.chart_permission_id WHERE report_chapter_id=? `
-	_, err = o.Raw(sql, reportChapterId).QueryRows(&list)
+	err = o.Raw(sql, reportChapterId).Find(&list).Error
 
 	return
 }
@@ -112,9 +109,9 @@ func (m ReportChapterPermissionMapping) GetPermissionListByIdList(reportChapterI
 		return
 	}
 
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_chapter_permission_mapping WHERE report_chapter_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, reportChapterIdList).QueryRows(&list)
+	err = o.Raw(sql, reportChapterIdList).Find(&list).Error
 
 	return
 }
@@ -127,11 +124,8 @@ func (m ReportChapterPermissionMapping) GetPermissionListByIdList(reportChapterI
 // @param list []*ReportChapterPermissionMapping
 // @return err error
 func (m ReportChapterPermissionMapping) MultiAdd(list []*ReportChapterPermissionMapping) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -142,7 +136,7 @@ func (m ReportChapterPermissionMapping) MultiAdd(list []*ReportChapterPermission
 
 	// 新增品种权限记录
 	if len(list) > 0 {
-		_, err = to.InsertMulti(500, list)
+		err = to.CreateInBatches(list, utils.MultiAddNum).Error
 		if err != nil {
 			return
 		}

+ 13 - 16
models/report/report_grant.go

@@ -1,8 +1,8 @@
 package report
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -24,11 +24,8 @@ type ReportGrant struct {
 // @param list []*ReportGrant
 // @return err error
 func (m ReportGrant) MultiAddReportGrantGrant(reportId int, list []*ReportGrant) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -38,14 +35,14 @@ func (m ReportGrant) MultiAddReportGrantGrant(reportId int, list []*ReportGrant)
 	}()
 
 	sql := "DELETE from report_grant where report_id=?"
-	_, err = to.Raw(sql, reportId).Exec()
+	err = to.Exec(sql, reportId).Error
 	if err != nil {
 		return
 	}
 
 	// 新增授权记录
 	if len(list) > 0 {
-		_, tmpErr := to.InsertMulti(500, list)
+		tmpErr := to.CreateInBatches(list, utils.MultiAddNum).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
@@ -64,9 +61,9 @@ func (m ReportGrant) MultiAddReportGrantGrant(reportId int, list []*ReportGrant)
 // @return list []*ReportGrant
 // @return err error
 func (m ReportGrant) GetGrantListById(reportId int) (list []*ReportGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_grant WHERE report_id=? `
-	_, err = o.Raw(sql, reportId).QueryRows(&list)
+	err = o.Raw(sql, reportId).Find(&list).Error
 
 	return
 }
@@ -85,9 +82,9 @@ func (m ReportGrant) GetGrantListByIdList(reportIdList []int) (list []*ReportGra
 		return
 	}
 
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_grant WHERE report_id in (` + utils.GetOrmInReplace(num) + `) `
-	_, err = o.Raw(sql, reportIdList).QueryRows(&list)
+	err = o.Raw(sql, reportIdList).Find(&list).Error
 
 	return
 }
@@ -102,9 +99,9 @@ func (m ReportGrant) GetGrantListByIdList(reportIdList []int) (list []*ReportGra
 // @return item *ReportGrant
 // @return err error
 func (m ReportGrant) GetGrantByIdAndAdmin(reportId, sysUserId int) (item *ReportGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_grant WHERE report_id = ? AND admin_id = ? `
-	err = o.Raw(sql, reportId, sysUserId).QueryRow(&item)
+	err = o.Raw(sql, reportId, sysUserId).First(&item).Error
 
 	return
 }
@@ -118,9 +115,9 @@ func (m ReportGrant) GetGrantByIdAndAdmin(reportId, sysUserId int) (item *Report
 // @return list []*ReportGrant
 // @return err error
 func (m ReportGrant) GetGrantListByAdminId(adminId int) (list []*ReportGrant, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `SELECT * FROM report_grant WHERE admin_id=? `
-	_, err = o.Raw(sql, adminId).QueryRows(&list)
+	err = o.Raw(sql, adminId).Find(&list).Error
 
 	return
 }

+ 41 - 46
models/report_approve/report_approve.go

@@ -1,12 +1,12 @@
 package report_approve
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
 	"strings"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -81,12 +81,8 @@ func (m *ReportApprove) PrimaryId() string {
 }
 
 func (m *ReportApprove) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.ReportApproveId = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -94,21 +90,21 @@ func (m *ReportApprove) CreateMulti(items []*ReportApprove) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *ReportApprove) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *ReportApprove) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.ReportApproveId).Exec()
+	err = o.Exec(sql, m.ReportApproveId).Error
 	return
 }
 
@@ -116,39 +112,39 @@ func (m *ReportApprove) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *ReportApprove) GetItemById(id int) (item *ReportApprove, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *ReportApprove) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApprove, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *ReportApprove) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *ReportApprove) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApprove, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -158,12 +154,12 @@ func (m *ReportApprove) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *ReportApprove) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApprove, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -173,7 +169,8 @@ func (m *ReportApprove) GetPageItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -287,19 +284,19 @@ type ReportApproveItemOrm struct {
 
 // GetApprovingReportApproveCount 获取待处理的审批分页列表总数
 func GetApprovingReportApproveCount(cond string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	base := fmt.Sprintf(`SELECT a.report_approve_record_id
 		FROM report_approve_record AS a
 		JOIN report_approve AS b ON a.report_approve_id = b.report_approve_id AND a.node_id = b.curr_node_id
 		WHERE 1 = 1 %s`, cond)
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM (%s) t`, base)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 // GetApprovingReportApprovePageList 获取待处理的审批列表-分页
 func GetApprovingReportApprovePageList(cond string, pars []interface{}, orderRule string, startSize, pageSize int) (items []*ReportApproveItemOrm, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := `ORDER BY a.create_time DESC`
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
@@ -309,25 +306,26 @@ func GetApprovingReportApprovePageList(cond string, pars []interface{}, orderRul
 		JOIN report_approve AS b ON a.report_approve_id = b.report_approve_id AND a.node_id = b.curr_node_id
 		WHERE 1 = 1 %s %s
 		LIMIT ?,?`, cond, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetApprovedReportApproveCount 获取已处理的审批分页列表总数
 func GetApprovedReportApproveCount(cond string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	base := fmt.Sprintf(`SELECT a.report_approve_record_id
 		FROM report_approve_record AS a
 		JOIN report_approve AS b ON a.report_approve_id = b.report_approve_id
 		WHERE 1 = 1 %s`, cond)
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM (%s) t`, base)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 // GetApprovedReportApprovePageList 获取已处理的审批列表-分页
 func GetApprovedReportApprovePageList(cond string, pars []interface{}, orderRule string, startSize, pageSize int) (items []*ReportApproveItemOrm, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := `ORDER BY a.create_time DESC`
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
@@ -337,28 +335,30 @@ func GetApprovedReportApprovePageList(cond string, pars []interface{}, orderRule
 		JOIN report_approve AS b ON a.report_approve_id = b.report_approve_id
 		WHERE 1 = 1 %s %s
 		LIMIT ?,?`, cond, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetApplyReportApproveCount 获取我发起的审批分页列表总数
 func GetApplyReportApproveCount(cond string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	base := fmt.Sprintf(`SELECT a.* FROM report_approve AS a WHERE 1 = 1 %s`, cond)
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM (%s) t`, base)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 // GetApplyReportApprovePageList 获取我发起的审批列表-分页
 func GetApplyReportApprovePageList(cond string, pars []interface{}, orderRule string, startSize, pageSize int) (items []*ReportApproveItemOrm, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := `ORDER BY a.create_time DESC`
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT a.* FROM report_approve AS a WHERE 1 = 1 %s %s LIMIT ?,?`, cond, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -404,12 +404,8 @@ func (m *ReportApprove) CreateApproveAndRecord(approveItem *ReportApprove, recor
 		err = fmt.Errorf("approve is nil")
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	tx, e := o.Begin()
-	if e != nil {
-		err = fmt.Errorf("orm begin err: %s", e.Error())
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -418,18 +414,17 @@ func (m *ReportApprove) CreateApproveAndRecord(approveItem *ReportApprove, recor
 		_ = tx.Commit()
 	}()
 
-	lastId, e := tx.Insert(approveItem)
+	e := tx.Create(approveItem).Error
 	if e != nil {
 		err = fmt.Errorf("insert approve err: %s", e.Error())
 		return
 	}
-	approveItem.ReportApproveId = int(lastId)
 
 	if len(recordItems) > 0 {
 		for _, v := range recordItems {
 			v.ReportApproveId = approveItem.ReportApproveId
 		}
-		_, e = tx.InsertMulti(len(recordItems), recordItems)
+		e = tx.CreateInBatches(recordItems, utils.MultiAddNum).Error
 		if e != nil {
 			err = fmt.Errorf("insert records err: %s", e.Error())
 			return

+ 38 - 50
models/report_approve/report_approve_flow.go

@@ -1,9 +1,9 @@
 package report_approve
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -56,12 +56,8 @@ func (m *ReportApproveFlow) PrimaryId() string {
 }
 
 func (m *ReportApproveFlow) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.ReportApproveFlowId = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -69,21 +65,21 @@ func (m *ReportApproveFlow) CreateMulti(items []*ReportApproveFlow) (err error)
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *ReportApproveFlow) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *ReportApproveFlow) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.ReportApproveFlowId).Exec()
+	err = o.Exec(sql, m.ReportApproveFlowId).Error
 	return
 }
 
@@ -91,39 +87,39 @@ func (m *ReportApproveFlow) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *ReportApproveFlow) GetItemById(id int) (item *ReportApproveFlow, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *ReportApproveFlow) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApproveFlow, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *ReportApproveFlow) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *ReportApproveFlow) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApproveFlow, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -133,12 +129,12 @@ func (m *ReportApproveFlow) GetItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *ReportApproveFlow) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApproveFlow, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -148,7 +144,8 @@ func (m *ReportApproveFlow) GetPageItemsByCondition(condition string, pars []int
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -208,7 +205,7 @@ type ReportClassifyTreeItem struct {
 	ClassifyName string                    `description:"分类名称"`
 	ParentId     int                       `description:"父级ID"`
 	HasFlow      bool                      `description:"是否已配置审批流"`
-	Children     []*ReportClassifyTreeItem `description:"子分类"`
+	Children     []*ReportClassifyTreeItem `description:"子分类" gorm:"-"`
 }
 
 // CreateFlowAndNodes 新增审批流和节点
@@ -217,12 +214,8 @@ func (m *ReportApproveFlow) CreateFlowAndNodes(flowItem *ReportApproveFlow, node
 		err = fmt.Errorf("flow is nil")
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	tx, e := o.Begin()
-	if e != nil {
-		err = fmt.Errorf("orm begin err: %s", e.Error())
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	tx := o.Begin()
 	prevNodes := make([]*ReportApproveNode, 0)
 	defer func() {
 		if err != nil {
@@ -231,18 +224,16 @@ func (m *ReportApproveFlow) CreateFlowAndNodes(flowItem *ReportApproveFlow, node
 		}
 		_ = tx.Commit()
 		// 更新每个节点的下一个节点信息, 放在事务中会更新失败
-		if e = m.UpdateNextNodes(prevNodes); e != nil {
+		if e := m.UpdateNextNodes(prevNodes); e != nil {
 			err = fmt.Errorf("UpdatePrevNodes err: %s", e.Error())
 			return
 		}
 	}()
-
-	lastId, e := tx.Insert(flowItem)
+	e := tx.Create(flowItem).Error
 	if e != nil {
 		err = fmt.Errorf("insert flow err: %s", e.Error())
 		return
 	}
-	flowItem.ReportApproveFlowId = int(lastId)
 
 	nodesLen := len(nodeItems)
 	if nodesLen == 0 {
@@ -253,17 +244,17 @@ func (m *ReportApproveFlow) CreateFlowAndNodes(flowItem *ReportApproveFlow, node
 	for k, v := range nodeItems {
 		v.ReportApproveFlowId = flowItem.ReportApproveFlowId
 		v.PrevNodeId = prevId
-		id, e := tx.Insert(v)
+		e = tx.Create(v).Error
 		if e != nil {
 			err = fmt.Errorf("insert node err: %s", e.Error())
 			return
 		}
-		v.ReportApproveNodeId = int(id)
+		id := v.ReportApproveNodeId
 		prevId = v.ReportApproveNodeId
 
 		// 下一个节点
 		if prevNode != nil && k > 0 && k < nodesLen {
-			prevNode.NextNodeId = int(id)
+			prevNode.NextNodeId = id
 			prevNodes = append(prevNodes, prevNode)
 		}
 		prevNode = v
@@ -292,12 +283,9 @@ func (m *ReportApproveFlow) UpdateFlowAndNodes(flowItem *ReportApproveFlow, node
 		err = fmt.Errorf("flow is nil")
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	tx, e := o.Begin()
-	if e != nil {
-		err = fmt.Errorf("orm begin err: %s", e.Error())
-		return
-	}
+	o := global.DbMap[utils.DbNameReport]
+	tx := o.Begin()
+
 	prevNodes := make([]*ReportApproveNode, 0)
 	defer func() {
 		if err != nil {
@@ -306,7 +294,7 @@ func (m *ReportApproveFlow) UpdateFlowAndNodes(flowItem *ReportApproveFlow, node
 		}
 		_ = tx.Commit()
 		// 更新每个节点的下一个节点信息, 放在事务中会更新失败
-		if e = m.UpdateNextNodes(prevNodes); e != nil {
+		if e := m.UpdateNextNodes(prevNodes); e != nil {
 			err = fmt.Errorf("UpdatePrevNodes err: %s", e.Error())
 			return
 		}
@@ -314,7 +302,7 @@ func (m *ReportApproveFlow) UpdateFlowAndNodes(flowItem *ReportApproveFlow, node
 
 	// 更新审批流
 	updateCols := []string{"FlowName", "ReportType", "ClassifyFirstId", "ClassifySecondId", "ClassifyThirdId", "CurrVersion", "ModifyTime"}
-	if e = flowItem.Update(updateCols); e != nil {
+	if e := flowItem.Update(updateCols); e != nil {
 		err = fmt.Errorf("update flow err: %s", e.Error())
 		return
 	}
@@ -329,17 +317,17 @@ func (m *ReportApproveFlow) UpdateFlowAndNodes(flowItem *ReportApproveFlow, node
 	for k, v := range nodeItems {
 		v.ReportApproveFlowId = flowItem.ReportApproveFlowId
 		v.PrevNodeId = prevId
-		id, e := tx.Insert(v)
+		e := tx.Create(v).Error
 		if e != nil {
 			err = fmt.Errorf("insert node err: %s", e.Error())
 			return
 		}
-		v.ReportApproveNodeId = int(id)
+		id := v.ReportApproveNodeId
 		prevId = v.ReportApproveNodeId
 
 		// 下一个节点
 		if prevNode != nil && k > 0 && k < nodesLen {
-			prevNode.NextNodeId = int(id)
+			prevNode.NextNodeId = id
 			prevNodes = append(prevNodes, prevNode)
 		}
 		prevNode = v

+ 22 - 25
models/report_approve/report_approve_message.go

@@ -1,9 +1,9 @@
 package report_approve
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -56,12 +56,8 @@ func (m *ReportApproveMessage) PrimaryId() string {
 }
 
 func (m *ReportApproveMessage) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -69,21 +65,21 @@ func (m *ReportApproveMessage) CreateMulti(items []*ReportApproveMessage) (err e
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *ReportApproveMessage) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *ReportApproveMessage) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.Id).Exec()
+	err = o.Exec(sql, m.Id).Error
 	return
 }
 
@@ -91,39 +87,39 @@ func (m *ReportApproveMessage) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *ReportApproveMessage) GetItemById(id int) (item *ReportApproveMessage, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *ReportApproveMessage) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApproveMessage, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *ReportApproveMessage) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *ReportApproveMessage) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApproveMessage, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -133,12 +129,12 @@ func (m *ReportApproveMessage) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *ReportApproveMessage) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApproveMessage, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -148,7 +144,8 @@ func (m *ReportApproveMessage) GetPageItemsByCondition(condition string, pars []
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 

+ 22 - 25
models/report_approve/report_approve_node.go

@@ -2,9 +2,9 @@ package report_approve
 
 import (
 	"encoding/json"
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -53,12 +53,8 @@ func (m *ReportApproveNode) PrimaryId() string {
 }
 
 func (m *ReportApproveNode) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.ReportApproveNodeId = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -66,21 +62,21 @@ func (m *ReportApproveNode) CreateMulti(items []*ReportApproveNode) (err error)
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *ReportApproveNode) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *ReportApproveNode) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.ReportApproveNodeId).Exec()
+	err = o.Exec(sql, m.ReportApproveNodeId).Error
 	return
 }
 
@@ -88,39 +84,39 @@ func (m *ReportApproveNode) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *ReportApproveNode) GetItemById(id int) (item *ReportApproveNode, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *ReportApproveNode) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApproveNode, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *ReportApproveNode) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *ReportApproveNode) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApproveNode, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -130,12 +126,12 @@ func (m *ReportApproveNode) GetItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *ReportApproveNode) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApproveNode, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -145,7 +141,8 @@ func (m *ReportApproveNode) GetPageItemsByCondition(condition string, pars []int
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 

+ 24 - 27
models/report_approve/report_approve_record.go

@@ -1,9 +1,9 @@
 package report_approve
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -82,12 +82,8 @@ func (m *ReportApproveRecord) PrimaryId() string {
 }
 
 func (m *ReportApproveRecord) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.ReportApproveRecordId = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -95,21 +91,21 @@ func (m *ReportApproveRecord) CreateMulti(items []*ReportApproveRecord) (err err
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *ReportApproveRecord) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *ReportApproveRecord) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.ReportApproveRecordId).Exec()
+	err = o.Exec(sql, m.ReportApproveRecordId).Error
 	return
 }
 
@@ -117,39 +113,39 @@ func (m *ReportApproveRecord) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *ReportApproveRecord) GetItemById(id int) (item *ReportApproveRecord, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *ReportApproveRecord) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *ReportApproveRecord, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *ReportApproveRecord) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *ReportApproveRecord) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*ReportApproveRecord, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -159,12 +155,12 @@ func (m *ReportApproveRecord) GetItemsByCondition(condition string, pars []inter
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *ReportApproveRecord) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*ReportApproveRecord, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -174,7 +170,8 @@ func (m *ReportApproveRecord) GetPageItemsByCondition(condition string, pars []i
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -241,9 +238,9 @@ func (m *ReportApproveRecord) UpdateNodeState(reportApproveId, nodeId, nodeState
 	whereParas := []interface{}{reportApproveId, nodeId}
 	pars = append(pars, whereParas)
 
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`UPDATE %s SET node_state=?,node_approve_user_id=?,node_approve_user_name=?,node_approve_time=? WHERE report_approve_id = ? AND node_id = ?`, m.TableName())
-	_, err = o.Raw(sql, pars).Exec()
+	err = o.Exec(sql, pars...).Error
 
 	return
 }

+ 10 - 10
models/residual_analysis_model/calculate_residual_analysis_config.go

@@ -1,6 +1,8 @@
 package residual_analysis_model
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
@@ -188,28 +190,26 @@ type ResidualAnalysisDetailResp struct {
 
 // GetResidualAnalysisConfigById 根据配置id查询配置信息
 func GetResidualAnalysisConfigById(configId int) (residualAnalysisConfig CalculateResidualAnalysisConfig, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "SELECT * FROM calculate_residual_analysis_config WHERE calculate_residual_analysis_config_id=?"
-	err = o.Raw(sql, configId).QueryRow(&residualAnalysisConfig)
+	err = o.Raw(sql, configId).First(&residualAnalysisConfig).Error
 	return residualAnalysisConfig, nil
 }
 
 // UpdateResidualAnalysisConfig 更新配置信息
 func UpdateResidualAnalysisConfig(config CalculateResidualAnalysisConfig) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(&config)
-	if err != nil {
-		return err
-	}
-	return nil
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Updates(&config).Error
+	return
 }
 
 // SaveResidualAnalysisConfig 保存配置信息
 func SaveResidualAnalysisConfig(config CalculateResidualAnalysisConfig) (id int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	id, err = o.Insert(&config)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(&config).Error
 	if err != nil {
 		return 0, err
 	}
+	id = int64(config.CalculateResidualAnalysisConfigId)
 	return id, nil
 }

+ 9 - 6
models/residual_analysis_model/calculate_residual_analysis_config_mapping.go

@@ -1,6 +1,8 @@
 package residual_analysis_model
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
@@ -21,30 +23,31 @@ func init() {
 
 // GetConfigMappingListByConfigId 根据配置配置id查询配置信息
 func GetConfigMappingListByConfigId(configId int) (items []CalculateResidualAnalysisConfigMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from calculate_residual_analysis_config_mapping where calculate_residual_analysis_config_id = ?`
 
-	_, err = o.Raw(sql, configId).QueryRows(&items)
+	err = o.Raw(sql, configId).Find(&items).Error
 	return items, nil
 }
 
 // GetConfigMappingListByCondition 通过条件查询指标配置映射
 func GetConfigMappingListByCondition(condition string, pars []interface{}) (items []CalculateResidualAnalysisConfigMapping, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from calculate_residual_analysis_config_mapping where 1=1 `
 
 	sql += condition
 
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return items, nil
 }
 
 // SaveConfigMapping 保存指标和配置的映射关系
 func SaveConfigMapping(mapping CalculateResidualAnalysisConfigMapping) (id int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	id, err = o.Insert(&mapping)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(&mapping).Error
 	if err != nil {
 		return 0, err
 	}
+	id = int64(mapping.CalculateResidualAnalysisConfigMappingId)
 	return id, nil
 }

+ 12 - 9
models/residual_analysis_model/edb_data_residual_analysis.go

@@ -1,6 +1,8 @@
 package residual_analysis_model
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
@@ -22,16 +24,16 @@ func init() {
 
 // DeleteResidualAnalysisDataByEdbCode 根据指标编码删除数据
 func DeleteResidualAnalysisDataByEdbCode(edbCode string) error {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `delete from edb_data_residual_analysis where edb_code = ?`
-	_, err := o.Raw(sql, edbCode).Exec()
+	err := o.Exec(sql, edbCode).Error
 	return err
 }
 
 // AddResidualAnalysisData 新增指标数据
 func AddResidualAnalysisData(dataList []edbDataResidualAnalysis) (num int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	num, err = o.InsertMulti(len(dataList), dataList)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.CreateInBatches(dataList, utils.MultiAddNum).Error
 	if err != nil {
 		return 0, err
 	}
@@ -41,17 +43,18 @@ func AddResidualAnalysisData(dataList []edbDataResidualAnalysis) (num int64, err
 
 // GetDataListByCondition 根据条件查询所有数据
 func GetDataListByCondition(condition string, pars []interface{}) (items []edbDataResidualAnalysis, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from edb_data_residual_analysis where 1=1` + condition
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return items, err
 }
 
 // RefreshDataTimestamp 刷新残差指标时间戳
-func (m *edbDataResidualAnalysis) RefreshDataTimestamp(cols []string) {
-	o := orm.NewOrmUsingDB("data")
-	_, err := o.Update(m, cols...)
+func (m *edbDataResidualAnalysis) RefreshDataTimestamp(cols []string) (err error) {
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(m).Error
 	if err != nil {
 		return
 	}
+	return
 }

+ 9 - 8
models/roadshow/calendar.go

@@ -1,7 +1,8 @@
 package roadshow
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 )
 
 type Researcher struct {
@@ -19,24 +20,24 @@ type ResearcherGroup struct {
 }
 
 func GetResearcherGroup() (list []*ResearcherGroup, err error) {
-	o := orm.NewOrm()
-	sql := ` SELECT group_id,group_name FROM admin AS a
+	o := global.DbMap[utils.DbNameMaster]
+	sql := ` SELECT group_id,group_name FROM "admin" AS a
 			WHERE a.role_type_code IN('researcher','ficc_researcher','ficc_admin')
 			AND a.enabled=1
 			AND a.group_id>0
 			AND a.group_name<>'无'
 			GROUP BY a.group_id 
             ORDER BY a.group_id ASC `
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
 func GetResearcher() (list []*Researcher, err error) {
-	o := orm.NewOrm()
-	//sql := ` SELECT * FROM admin AS a
+	o := global.DbMap[utils.DbNameMaster]
+	//sql := ` SELECT * FROM "admin" AS a
 	//		WHERE a.role_type_code IN('researcher','rai_researcher','ficc_researcher','ficc_admin')
 	//		AND a.enabled=1 AND a.real_name<>'于菲' `
-	sql := ` SELECT * FROM admin AS a WHERE a.enabled=1 `
-	_, err = o.Raw(sql).QueryRows(&list)
+	sql := ` SELECT * FROM "admin" AS a WHERE a.enabled=1 `
+	err = o.Raw(sql).Find(&list).Error
 	return
 }

+ 61 - 72
models/sandbox/sandbox.go

@@ -1,10 +1,10 @@
 package sandbox
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/models/system"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"time"
 )
@@ -47,26 +47,23 @@ type Sandbox struct {
 
 // Update 沙盘字段变更
 func (sandbox *Sandbox) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(sandbox, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(sandbox).Error
 	return
 }
 
 // GetSandboxById 根据沙盘id获取沙盘详情
 func GetSandboxById(sandboxId int) (sandboxInfo *Sandbox, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from sandbox where sandbox_id = ? and is_delete = 0`
-	err = o.Raw(sql, sandboxId).QueryRow(&sandboxInfo)
+	err = o.Raw(sql, sandboxId).First(&sandboxInfo).Error
 	return
 }
 
 // AddNewSandbox 添加一个新的沙盘
 func AddNewSandbox(sandboxInfo *Sandbox, sandboxVersion *SandboxVersion, sandboxDraft *SandboxDraft) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameIndex]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -75,37 +72,31 @@ func AddNewSandbox(sandboxInfo *Sandbox, sandboxVersion *SandboxVersion, sandbox
 		}
 	}()
 
-	id, err := to.Insert(sandboxInfo)
+	err = to.Create(sandboxInfo).Error
 	if err != nil {
 		return
 	}
-	sandboxInfo.SandboxId = int(id)
 
 	// 新增版本
 	sandboxVersion.SandboxId = sandboxInfo.SandboxId
-	id, err = to.Insert(sandboxVersion)
+	err = to.Create(sandboxVersion).Error
 	if err != nil {
 		return
 	}
-	sandboxVersion.SandboxVersionId = int(id)
 
 	// 新增草稿
 	sandboxDraft.SandboxId = sandboxInfo.SandboxId
-	id, err = to.Insert(sandboxDraft)
+	err = to.Create(sandboxDraft).Error
 	if err != nil {
 		return
 	}
-	sandboxDraft.SandboxDraftId = int(id)
 	return
 }
 
 // UpdateSandbox 更新沙盘
 func UpdateSandbox(sandboxInfo *Sandbox, updateSandboxColumn []string, sandboxVersion *SandboxVersion, sandboxDraft *SandboxDraft) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameIndex]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -114,36 +105,32 @@ func UpdateSandbox(sandboxInfo *Sandbox, updateSandboxColumn []string, sandboxVe
 		}
 	}()
 
-	_, err = to.Update(sandboxInfo, updateSandboxColumn...)
+	err = to.Select(updateSandboxColumn).Updates(sandboxInfo).Error
 	if err != nil {
 		return
 	}
 
 	// 新增版本
 	sandboxVersion.SandboxId = sandboxInfo.SandboxId
-	id, err := to.Insert(sandboxVersion)
+	err = to.Create(sandboxVersion).Error
 	if err != nil {
 		return
 	}
-	sandboxVersion.SandboxVersionId = int(id)
 
 	// 新增草稿
 	sandboxDraft.SandboxId = sandboxInfo.SandboxId
-	id, err = to.Insert(sandboxDraft)
+	err = to.Create(sandboxDraft).Error
 	if err != nil {
 		return
 	}
-	sandboxDraft.SandboxDraftId = int(id)
+
 	return
 }
 
 // UpdateSandboxName 更新沙盘(仅仅更新名称)
 func UpdateSandboxName(sandboxInfo *Sandbox, sandboxVersion *SandboxVersion, sandboxDraft *SandboxDraft, updateSandboxColumn, updateSandboxVersionColumn []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameIndex]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -152,24 +139,23 @@ func UpdateSandboxName(sandboxInfo *Sandbox, sandboxVersion *SandboxVersion, san
 		}
 	}()
 
-	_, err = to.Update(sandboxInfo, updateSandboxColumn...)
+	err = to.Select(updateSandboxColumn).Updates(sandboxInfo).Error
 	if err != nil {
 		return
 	}
 
 	// 更新版本
-	_, err = to.Update(sandboxVersion, updateSandboxVersionColumn...)
+	err = to.Select(updateSandboxVersionColumn).Updates(sandboxVersion).Error
 	if err != nil {
 		return
 	}
 
 	// 新增草稿
 	sandboxDraft.SandboxId = sandboxInfo.SandboxId
-	id, err := to.Insert(sandboxDraft)
+	err = to.Create(sandboxDraft).Error
 	if err != nil {
 		return
 	}
-	sandboxDraft.SandboxDraftId = int(id)
 	return
 }
 
@@ -196,18 +182,19 @@ type SandboxListItem struct {
 
 // GetList 获取沙盘列表页
 func GetList(condition string, pars []interface{}, startSize, pageSize int) (total int, list []*Sandbox, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "select a.sandbox_id,a.name,a.code,a.pic_url,a.sys_user_id,a.sys_user_name,a.modify_time,a.create_time from sandbox as a where 1=1 AND a.is_delete = 0 "
 	sql += condition
 	sql += ` order by a.modify_time desc,a.sandbox_id desc`
 
 	totalSql := `select count(1) total from (` + sql + `) z `
-	err = o.Raw(totalSql, pars).QueryRow(&total)
+	err = o.Raw(totalSql, pars...).Scan(&total).Error
 	if err != nil {
 		return
 	}
 	sql += ` LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&list).Error
 	return
 }
 
@@ -218,10 +205,10 @@ type SandboxSaveResp struct {
 }
 
 func GetSandboxAll() (list []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT sandbox_id,sandbox_classify_id,name AS sandbox_classify_name, sort
 		FROM sandbox `
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
@@ -243,16 +230,16 @@ func CheckOpSandboxPermission(sysUser *system.Admin, createUserId int) (ok bool)
 
 // GetSandboxInfoByAdminId 获取所有我创建的沙盘,用于分类展示
 func GetSandboxInfoByAdminId(adminId int) (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT sandbox_id,sandbox_classify_id,name AS sandbox_classify_name,code,
              sys_user_id,sys_user_name
             FROM sandbox where sys_user_id = ? ORDER BY sort asc,create_time ASC `
-	_, err = o.Raw(sql, adminId).QueryRows(&items)
+	err = o.Raw(sql, adminId).Find(&items).Error
 	return
 }
 
 func GetSandboxClassify(sandboxClassifyId int) (sandbox_classify_id string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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=?
@@ -266,7 +253,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 = o.Raw(sql, sandboxClassifyId, sandboxClassifyId, sandboxClassifyId).Scan(&sandbox_classify_id).Error
 	return
 }
 
@@ -276,23 +263,24 @@ type SandboxListItems struct {
 }
 
 func GetSandboxListByCondition(condition string, pars []interface{}, startSize, pageSize int) (item []*SandboxListItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&item).Error
 	return
 }
 
 func GetSandboxListCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM sandbox WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -302,21 +290,25 @@ type SandboxListResp struct {
 }
 
 func AddSandbox(item *Sandbox) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.SandboxId)
 	return
 }
 
 func GetSandboxItemsByClassifyId(sandboxClassifyId int) (list []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT sandbox_id,sandbox_classify_id,name AS sandbox_classify_name, sort
 		FROM sandbox  WHERE sandbox_classify_id = ? AND is_delete = 0  ORDER BY sort `
-	_, err = o.Raw(sql, sandboxClassifyId).QueryRows(&list)
+	err = o.Raw(sql, sandboxClassifyId).Find(&list).Error
 	return
 }
 
 func GetSandboxAllParentByClassifyId(sandboxClassifyId int) (ids string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT
 	GROUP_CONCAT(DISTINCT m.sandbox_classify_id  ORDER BY m.level) AS ids 
 FROM
@@ -348,7 +340,7 @@ FROM
 	INNER JOIN sandbox_classify m 
 WHERE
 	sandbox_classify_id = vm._id `
-	err = o.Raw(sql, sandboxClassifyId).QueryRow(&ids)
+	err = o.Raw(sql, sandboxClassifyId).Scan(&ids).Error
 	return
 }
 
@@ -360,54 +352,54 @@ type MoveSandboxReq struct {
 }
 
 func GetSandboxClassifyCountById(classifyId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT count(1) AS count FROM sandbox_classify WHERE sandbox_classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&count)
+	err = o.Raw(sql, classifyId).Scan(&count).Error
 	return
 }
 
 // GetSandboxByClassifyIdAndName 根据分类id和沙盘名获取图表信息
 func GetSandboxByClassifyIdAndName(classifyId int, name string) (item *Sandbox, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM sandbox WHERE sandbox_classify_id = ? and name=? `
-	err = o.Raw(sql, classifyId, name).QueryRow(&item)
+	err = o.Raw(sql, classifyId, name).First(&item).Error
 	return
 }
 
 // GetSandboxNameByIds 根据沙盘名称
 func GetSandboxNameByIds(ids []int) (items []*Sandbox, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT sandbox_id, name FROM sandbox WHERE sandbox_id in (` + utils.GetOrmInReplace(len(ids)) + `) `
-	_, err = o.Raw(sql, ids).QueryRows(&items)
+	err = o.Raw(sql, ids).Find(&items).Error
 	return
 }
 
 func MoveSandbox(sandboxId, classifyId int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` UPDATE  sandbox
 			SET
 			  sandbox_classify_id = ?
 			WHERE sandbox_id = ?`
-	_, err = o.Raw(sql, classifyId, sandboxId).Exec()
+	err = o.Exec(sql, classifyId, sandboxId).Error
 	return
 }
 
 // UpdateSandboxSortByClassifyId 根据沙盘id更新排序
 func UpdateSandboxSortByClassifyId(classifyId, nowSort, prevSandboxId int, updateSort string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` update sandbox set sort = ` + updateSort + ` WHERE sandbox_classify_id=?  AND `
 	if prevSandboxId > 0 {
 		sql += ` (sort > ? or (sandbox_id > ` + fmt.Sprint(prevSandboxId) + ` and sort = ` + fmt.Sprint(nowSort) + `))`
 	}
-	_, err = o.Raw(sql, classifyId, nowSort).Exec()
+	err = o.Exec(sql, classifyId, nowSort).Error
 	return
 }
 
 // GetFirstSandboxByClassifyId 获取当前分类下,且排序数相同 的排序第一条的数据
 func GetFirstSandboxByClassifyId(classifyId int) (item *Sandbox, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM sandbox WHERE sandbox_classify_id=? order by sort asc,sandbox_id asc limit 1`
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = o.Raw(sql, classifyId).First(&item).Error
 	return
 }
 
@@ -441,11 +433,8 @@ type DetailParams struct {
 
 // UpdateSandboxContent 更新沙盘内容
 func UpdateSandboxContent(list []Sandbox) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameIndex]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -456,7 +445,7 @@ func UpdateSandboxContent(list []Sandbox) (err error) {
 
 	//循环更新沙盘内容
 	for _, sandbox := range list {
-		_, err = to.Update(&sandbox, "Content", "ModifyTime")
+		err = to.Select([]string{"Content", "ModifyTime"}).Updates(&sandbox).Error
 		if err != nil {
 			return
 		}

+ 52 - 48
models/sandbox/sandbox_classify.go

@@ -1,10 +1,10 @@
 package sandbox
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
 	"time"
-
-	"github.com/beego/beego/v2/client/orm"
 )
 
 type SandboxClassify struct {
@@ -23,49 +23,53 @@ type SandboxClassify struct {
 }
 
 func AddSandboxClassify(item *SandboxClassify) (lastId int64, err error) {
-	o := orm.NewOrmUsingDB("data")
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.SandboxClassifyId)
 	return
 }
 
 // GetSandboxClassifyByParentId
 func GetSandboxClassifyByParentId(parentId int) (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM sandbox_classify WHERE parent_id=? order by sort asc,sandbox_classify_id asc`
-	_, err = o.Raw(sql, parentId).QueryRows(&items)
+	err = o.Raw(sql, parentId).Find(&items).Error
 	return
 }
 
 // GetSandboxClassifyAll
 func GetSandboxClassifyAll() (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM sandbox_classify WHERE parent_id<>0 order by sort asc,sandbox_classify_id asc`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 func GetSandboxClassifyAllIncludeParent() (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT * FROM sandbox_classify order by sort asc,sandbox_classify_id asc`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 type SandboxClassifyItems struct {
-	SandboxClassifyId   int       `orm:"column(sandbox_classify_id);pk" gorm:"primaryKey"`
-	SandboxClassifyName string    `description:"分类名称"`
-	ParentId            int       `description:"父级id"`
-	HasData             int       `description:"是否含有指标数据"`
-	CreateTime          time.Time `description:"创建时间"`
-	ModifyTime          time.Time `description:"修改时间"`
-	SysUserId           int       `description:"创建人id"`
-	SysUserName         string    `description:"创建人姓名"`
-	Level               int       `description:"层级"`
-	Sort                int       `description:"排序字段,越小越靠前,默认值:10"`
-	SandboxId           int       `description:"沙盘id"`
-	ChartPermissionId   int       `description:"品种id"`
-	ChartPermissionName string    `description:"品种名称"`
-	Children            []*SandboxClassifyItems
+	SandboxClassifyId   int                     `orm:"column(sandbox_classify_id);pk" gorm:"primaryKey"`
+	SandboxClassifyName string                  `description:"分类名称"`
+	ParentId            int                     `description:"父级id"`
+	HasData             int                     `description:"是否含有指标数据"`
+	CreateTime          time.Time               `description:"创建时间"`
+	ModifyTime          time.Time               `description:"修改时间"`
+	SysUserId           int                     `description:"创建人id"`
+	SysUserName         string                  `description:"创建人姓名"`
+	Level               int                     `description:"层级"`
+	Sort                int                     `description:"排序字段,越小越靠前,默认值:10"`
+	SandboxId           int                     `description:"沙盘id"`
+	ChartPermissionId   int                     `description:"品种id"`
+	ChartPermissionName string                  `description:"品种名称"`
+	Children            []*SandboxClassifyItems `gorm:"-"`
 }
 
 type SandboxClassifyListResp struct {
@@ -81,17 +85,17 @@ type AddSandboxClassifyReq struct {
 }
 
 func GetSandboxClassifyCount(sandboxClassifyName string, parentId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Raw(sql, parentId, sandboxClassifyName).Scan(&count).Error
 	return
 }
 
 // GetSandboxClassifyMaxSort 获取沙盘分类下最大的排序数
 func GetSandboxClassifyMaxSort(parentId int) (sort int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT Max(sort) AS sort FROM sandbox_classify WHERE parent_id=? `
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = o.Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
@@ -103,16 +107,16 @@ type EditSandboxClassifyReq struct {
 }
 
 func GetSandboxClassifyById(classifyId int) (item *SandboxClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT * FROM sandbox_classify WHERE sandbox_classify_id=? `
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = o.Raw(sql, classifyId).First(&item).Error
 	return
 }
 
 func EditSandboxClassify(classifyId, ChartPermissionId int, sandboxClassifyName, ChartPermissionName string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Exec(sql, sandboxClassifyName, ChartPermissionId, ChartPermissionName, classifyId).Error
 	return
 }
 
@@ -121,7 +125,7 @@ type SandboxClassifyDeleteCheckReq struct {
 }
 
 func GetSandboxInfoCountByClassifyId(classifyId int) (count int, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT COUNT(1) AS count FROM sandbox AS a
 				WHERE a.sandbox_classify_id IN(
 				SELECT t.sandbox_classify_id FROM 
@@ -134,7 +138,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 = o.Raw(sql, classifyId).Scan(&count).Error
 	return
 }
 
@@ -149,7 +153,7 @@ type DeleteSandboxClassifyReq struct {
 }
 
 func DeleteSandboxClassify(classifyId int) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` DELETE FROM sandbox_classify
 				WHERE sandbox_classify_id IN(
 				SELECT t.sandbox_classify_id FROM
@@ -162,7 +166,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 = o.Exec(sql, classifyId).Error
 	return
 }
 
@@ -179,33 +183,33 @@ type MoveSandboxClassifyReq struct {
 
 // UpdateSandboxClassifySortByParentId 根据沙盘父类id更新排序
 func UpdateSandboxClassifySortByParentId(parentId, classifyId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Exec(sql, parentId, nowSort).Error
 	return
 }
 
 // GetFirstSandboxClassifyByParentId 获取当前父级沙盘分类下的排序第一条的数据
 func GetFirstSandboxClassifyByParentId(parentId int) (item *SandboxClassify, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Raw(sql, parentId).First(&item).Error
 	return
 }
 
 // Update 更新沙盘分类基础信息
 func (sandboxClassify *SandboxClassify) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(sandboxClassify, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(sandboxClassify).Error
 	return
 }
 
 // GetSandboxClassifyAndInfoByParentId
 func GetSandboxClassifyAndInfoByParentId(parentId int) (items []*SandboxClassifyItems, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := ` SELECT
 	0 AS sandbox_id,
 	sandbox_classify_id,
@@ -245,7 +249,7 @@ WHERE
 ORDER BY
 	sort ASC,
 	sandbox_classify_id ASC`
-	_, err = o.Raw(sql, parentId, parentId).QueryRows(&items)
+	err = o.Raw(sql, parentId, parentId).Find(&items).Error
 	return
 }
 
@@ -270,7 +274,7 @@ type SandboxLinkCheckResp struct {
 
 // 获取所有子级分类id
 func GetSandboxClassifySubcategories(classifyId int) (Ids string, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `SELECT GROUP_CONCAT(sandbox_classify_id) AS ids
 FROM (
 SELECT @pv := ? AS sandbox_classify_id
@@ -280,14 +284,14 @@ FROM sandbox_classify sc
 JOIN (SELECT @pv := ?) initial
 WHERE sc.parent_id = @pv
 ) subcategories; `
-	err = o.Raw(sql, classifyId, classifyId).QueryRow(&Ids)
+	err = o.Raw(sql, classifyId, classifyId).Scan(&Ids).Error
 	return
 }
 
 // UpdateSandboxClassifyChartPermissionById 根据沙盘id更新品种
 func UpdateSandboxClassifyChartPermissionById(ChartPermissionId int, ChartPermissionName, Ids string) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	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 = o.Exec(sql, ChartPermissionId, ChartPermissionName).Error
 	return
 }

+ 7 - 9
models/sandbox/sandbox_draft.go

@@ -1,7 +1,8 @@
 package sandbox
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -21,20 +22,17 @@ type SandboxDraft struct {
 
 // AddSandboxDraft 添加一个新的沙盘草稿
 func AddSandboxDraft(sandboxDraft *SandboxDraft) (err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	// 新增草稿
-	id, err := o.Insert(sandboxDraft)
-	if err != nil {
-		return
-	}
-	sandboxDraft.SandboxDraftId = int(id)
+	err = o.Create(sandboxDraft).Error
+
 	return
 }
 
 // GetLastSandboxDraftById 根据沙盘id获取最后一条沙盘草稿详情
 func GetLastSandboxDraftById(sandboxId int) (sandboxDraft *SandboxDraft, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select * from sandbox_draft where sandbox_id = ? order by sandbox_draft_id desc `
-	err = o.Raw(sql, sandboxId).QueryRow(&sandboxDraft)
+	err = o.Raw(sql, sandboxId).First(&sandboxDraft).Error
 	return
 }

+ 17 - 16
models/sandbox/sandbox_version.go

@@ -1,8 +1,8 @@
 package sandbox
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -26,32 +26,32 @@ type SandboxVersion struct {
 
 // Update 沙盘版本字段变更
 func (item *SandboxVersion) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameIndex]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 // GetSandboxVersionBySandbox2VersionId 根据沙盘id和版本id获取沙盘版本详情
 func GetSandboxVersionBySandbox2VersionId(sandboxId, sandboxVersion int) (sandboxVersionInfo *SandboxVersion, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select b.* from sandbox a join sandbox_version b on a.sandbox_id=b.sandbox_id where a.sandbox_id = ? and a.is_delete = 0 and b.is_delete = 0 and b.curr_version = ?`
-	err = o.Raw(sql, sandboxId, sandboxVersion).QueryRow(&sandboxVersionInfo)
+	err = o.Raw(sql, sandboxId, sandboxVersion).First(&sandboxVersionInfo).Error
 	return
 }
 
 // GetSandboxVersionBySandboxVersionCode 根据沙盘版本code获取沙盘版本详情
 func GetSandboxVersionBySandboxVersionCode(sandboxVersionCode string) (sandboxVersionInfo *SandboxVersion, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select b.* from sandbox a join sandbox_version b on a.sandbox_id=b.sandbox_id where a.is_delete = 0 and b.is_delete = 0  and b.version_code = ?`
-	err = o.Raw(sql, sandboxVersionCode).QueryRow(&sandboxVersionInfo)
+	err = o.Raw(sql, sandboxVersionCode).First(&sandboxVersionInfo).Error
 	return
 }
 
 // GetLastSandboxVersionBySandbox2VersionId 根据沙盘id和版本id获取距离最新的沙盘版本详情
 func GetLastSandboxVersionBySandbox2VersionId(sandboxId, sandboxVersion int) (sandboxVersionInfo *SandboxVersion, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select b.* from sandbox a join sandbox_version b on a.sandbox_id=b.sandbox_id where a.sandbox_id = ? and a.is_delete = 0 and b.is_delete = 0  and b.curr_version < ? order by b.curr_version desc`
-	err = o.Raw(sql, sandboxId, sandboxVersion).QueryRow(&sandboxVersionInfo)
+	err = o.Raw(sql, sandboxId, sandboxVersion).First(&sandboxVersionInfo).Error
 	return
 }
 
@@ -76,26 +76,27 @@ type SandboxVersionListItem struct {
 
 // GetVersionList 获取沙盘版本列表页
 func GetVersionList(condition string, pars []interface{}, startSize, pageSize int) (total int, list []*SandboxVersionListItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := "select b.sandbox_version_id,b.sandbox_id,b.name,b.chart_permission_id,b.chart_permission_name,b.curr_version,b.version_code,b.pic_url,b.op_user_id,b.op_user_name,b.create_time from sandbox as a join sandbox_version b on a.sandbox_id=b.sandbox_id where 1=1 AND a.is_delete = 0  AND b.is_delete = 0 "
 	sql += condition
 	sql += ` order by b.sandbox_version_id desc`
 
 	totalSql := `select count(1) total from (` + sql + `) z `
-	err = o.Raw(totalSql, pars).QueryRow(&total)
+	err = o.Raw(totalSql, pars...).Scan(&total).Error
 	if err != nil {
 		return
 	}
 	sql += ` LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&list).Error
 	return
 }
 
 // GetTotalSandboxVersionBySandboxId 根据沙盘id获取沙盘版本数量
 func GetTotalSandboxVersionBySandboxId(sandboxId int) (sandboxVersionInfo *SandboxVersion, err error) {
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select count(1) total from sandbox_version b where b.sandbox_id = ? and b.is_delete = 0 `
-	err = o.Raw(sql, sandboxId).QueryRow(&sandboxVersionInfo)
+	err = o.Raw(sql, sandboxId).First(&sandboxVersionInfo).Error
 	return
 }
 
@@ -110,8 +111,8 @@ func GetTotalSandboxVersionBySandboxIdList(sandboxIdList []int) (items []*TotalS
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
+	o := global.DbMap[utils.DbNameIndex]
 	sql := `select sandbox_id,count(1) AS total from sandbox_version b where b.sandbox_id in (` + utils.GetOrmInReplace(num) + `) and b.is_delete = 0 GROUP BY sandbox_id`
-	_, err = o.Raw(sql, sandboxIdList).QueryRows(&items)
+	err = o.Raw(sql, sandboxIdList).Find(&items).Error
 	return
 }

+ 44 - 56
models/semantic_analysis/sa_compare.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -50,53 +51,49 @@ func (m *SaCompare) TableName() string {
 }
 
 func (m *SaCompare) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaCompareId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaCompare) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaCompare) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_compare WHERE sa_compare_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaCompareId).Exec()
+	err = o.Exec(sql, m.SaCompareId).Error
 	return
 }
 
 func (m *SaCompare) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare WHERE sa_compare_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaCompare) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaCompare) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaCompare) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompare, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -106,12 +103,12 @@ func (m *SaCompare) GetItemsByCondition(condition string, pars []interface{}, fi
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompare) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompare, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -122,11 +119,12 @@ func (m *SaCompare) GetPageItemsByCondition(startSize, pageSize int, condition s
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -213,19 +211,16 @@ type SaCompareUpdateResultImgReq struct {
 
 // UpdateSaCompareClassifyByClassifyId 更新比对分类信息
 func UpdateSaCompareClassifyByClassifyId(classifyId int, classifyName string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `UPDATE sa_compare SET classify_name = ? WHERE classify_id = ?`
-	_, err = o.Raw(sql, classifyName, classifyId).Exec()
+	err = o.Exec(sql, classifyName, classifyId).Error
 	return
 }
 
 // CreateSaCompare 新增比对、比对段落和比对标签
 func CreateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compareLabels []*SaCompareLabel) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -235,19 +230,18 @@ func CreateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 	}()
 
 	// 新增比对
-	lastId, err := tx.Insert(compareItem)
+	err = tx.Create(compareItem).Error
 	if err != nil {
 		return
 	}
-	compareId := int(lastId)
-	compareItem.SaCompareId = compareId
+	compareId := compareItem.SaCompareId
 
 	// 新增比对段落
 	if len(compareDocs) > 0 {
 		for i := range compareDocs {
 			compareDocs[i].CompareId = compareId
 		}
-		if _, e := tx.InsertMulti(len(compareDocs), compareDocs); e != nil {
+		if e := tx.CreateInBatches(compareDocs, utils.MultiAddNum).Error; e != nil {
 			err = e
 			return
 		}
@@ -258,7 +252,7 @@ func CreateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 		for i := range compareLabels {
 			compareLabels[i].CompareId = compareId
 		}
-		if _, e := tx.InsertMulti(len(compareLabels), compareLabels); e != nil {
+		if e := tx.CreateInBatches(compareLabels, utils.MultiAddNum).Error; e != nil {
 			err = e
 			return
 		}
@@ -268,11 +262,8 @@ func CreateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 
 // UpdateSaCompare 保存比对、比对段落和比对标签
 func UpdateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compareLabels []*SaCompareLabel, compareUpCols []string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -283,18 +274,18 @@ func UpdateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 
 	// 删除比对段落和标签
 	sql := `DELETE FROM sa_compare_doc WHERE compare_id = ?`
-	_, err = tx.Raw(sql, compareItem.SaCompareId).Exec()
+	err = tx.Exec(sql, compareItem.SaCompareId).Error
 	if err != nil {
 		return
 	}
 	sql = `DELETE FROM sa_compare_label WHERE compare_id = ?`
-	_, err = tx.Raw(sql, compareItem.SaCompareId).Exec()
+	err = tx.Exec(sql, compareItem.SaCompareId).Error
 	if err != nil {
 		return
 	}
 
 	// 更新比对
-	_, err = tx.Update(compareItem, compareUpCols...)
+	err = tx.Select(compareUpCols).Updates(compareItem).Error
 	if err != nil {
 		return
 	}
@@ -304,7 +295,7 @@ func UpdateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 		for i := range compareDocs {
 			compareDocs[i].CompareId = compareItem.SaCompareId
 		}
-		if _, e := tx.InsertMulti(len(compareDocs), compareDocs); e != nil {
+		if e := tx.CreateInBatches(compareDocs, utils.MultiAddNum).Error; e != nil {
 			err = e
 			return
 		}
@@ -315,7 +306,7 @@ func UpdateSaCompare(compareItem *SaCompare, compareDocs []*SaCompareDoc, compar
 		for i := range compareLabels {
 			compareLabels[i].CompareId = compareItem.SaCompareId
 		}
-		if _, e := tx.InsertMulti(len(compareLabels), compareLabels); e != nil {
+		if e := tx.CreateInBatches(compareLabels, utils.MultiAddNum).Error; e != nil {
 			err = e
 			return
 		}
@@ -368,11 +359,8 @@ type SaCompareDelReq struct {
 
 // DelSaCompare 删除文档和段落
 func DelSaCompare(compareId int) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -382,17 +370,17 @@ func DelSaCompare(compareId int) (err error) {
 	}()
 
 	sql := `DELETE FROM sa_compare WHERE sa_compare_id = ? LIMIT 1`
-	_, err = tx.Raw(sql, compareId).Exec()
+	err = tx.Exec(sql, compareId).Error
 	if err != nil {
 		return
 	}
 	sql = `DELETE FROM sa_compare_doc WHERE compare_id = ?`
-	_, err = tx.Raw(sql, compareId).Exec()
+	err = tx.Exec(sql, compareId).Error
 	if err != nil {
 		return
 	}
 	sql = `DELETE FROM sa_compare_label WHERE compare_id = ?`
-	_, err = tx.Raw(sql, compareId).Exec()
+	err = tx.Exec(sql, compareId).Error
 	return
 }
 
@@ -406,20 +394,20 @@ type SaCompareMoveReq struct {
 
 // UpdateSaCompareSort 根据分类ID更新排序
 func UpdateSaCompareSort(classifyId, nowSort int, prevId int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` UPDATE sa_compare SET sort = ` + updateSort + ` WHERE classify_id = ? AND `
 	if prevId > 0 {
 		sql += ` ( sort > ? or ( sa_compare_id > ` + fmt.Sprint(prevId) + ` and sort = ` + fmt.Sprint(nowSort) + ` )) `
 	}
-	_, err = o.Raw(sql, classifyId, nowSort).Exec()
+	err = o.Exec(sql, classifyId, nowSort).Error
 	return
 }
 
 // GetFirstSortSaCompare 获取排序最前的比对
 func GetFirstSortSaCompare(classifyId int) (item *SaCompare, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` SELECT * FROM sa_compare WHERE classify_id = ? ORDER BY sort ASC,sa_compare_id ASC LIMIT 1`
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = o.Raw(sql, classifyId).First(&item).Error
 	return
 }
 

+ 21 - 23
models/semantic_analysis/sa_compare_classify.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -38,53 +39,49 @@ func (m *SaCompareClassify) TableName() string {
 }
 
 func (m *SaCompareClassify) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaCompareClassifyId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaCompareClassify) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaCompareClassify) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_compare_classify WHERE sa_compare_classify_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaCompareClassifyId).Exec()
+	err = o.Exec(sql, m.SaCompareClassifyId).Error
 	return
 }
 
 func (m *SaCompareClassify) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_classify WHERE sa_compare_classify_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaCompareClassify) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_classify WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaCompareClassify) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaCompareClassify) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompareClassify, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -94,12 +91,12 @@ func (m *SaCompareClassify) GetItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompareClassify) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompareClassify, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -110,11 +107,12 @@ func (m *SaCompareClassify) GetPageItemsByCondition(startSize, pageSize int, con
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -142,5 +140,5 @@ type SaCompareClassifyItem struct {
 	SysAdminId          int              `description:"创建人ID"`
 	SysAdminName        string           `description:"创建人姓名"`
 	CreateTime          string           `description:"创建时间"`
-	Children            []*SaCompareItem `description:"分类下的比对"`
+	Children            []*SaCompareItem `description:"分类下的比对" gorm:"-"`
 }

+ 22 - 24
models/semantic_analysis/sa_compare_doc.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
@@ -27,53 +28,49 @@ func (m *SaCompareDoc) TableName() string {
 }
 
 func (m *SaCompareDoc) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaCompareDocId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaCompareDoc) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaCompareDoc) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_compare_doc WHERE sa_compare_doc_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaCompareDocId).Exec()
+	err = o.Exec(sql, m.SaCompareDocId).Error
 	return
 }
 
 func (m *SaCompareDoc) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_doc WHERE sa_compare_doc_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaCompareDoc) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_doc WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaCompareDoc) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaCompareDoc) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompareDoc, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -83,12 +80,12 @@ func (m *SaCompareDoc) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompareDoc) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompareDoc, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -99,11 +96,12 @@ func (m *SaCompareDoc) GetPageItemsByCondition(startSize, pageSize int, conditio
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -120,7 +118,7 @@ type SaCompareDocSection struct {
 
 // GetSaCompareDocAndSections 获取比对关联的文档段落
 func GetSaCompareDocAndSections(compareId int) (items []*SaCompareDocSection, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.doc_id,
 				b.title,
@@ -138,6 +136,6 @@ func GetSaCompareDocAndSections(compareId int) (items []*SaCompareDocSection, er
 			ORDER BY
 				a.doc_id,
 				c.sort ASC`
-	_, err = o.Raw(sql, compareId).QueryRows(&items)
+	err = o.Raw(sql, compareId).Find(&items).Error
 	return
 }

+ 26 - 28
models/semantic_analysis/sa_compare_label.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -57,48 +58,44 @@ func (m *SaCompareLabel) TableName() string {
 }
 
 func (m *SaCompareLabel) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaCompareLabelId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaCompareLabel) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaCompareLabel) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_compare_label WHERE sa_compare_label_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaCompareLabelId).Exec()
+	err = o.Exec(sql, m.SaCompareLabelId).Error
 	return
 }
 
 func (m *SaCompareLabel) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_label WHERE sa_compare_label_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaCompareLabel) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_label WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaCompareLabel) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -110,14 +107,14 @@ type SaCompareLabelGroupCount struct {
 }
 
 func (m *SaCompareLabel) GetGroupCountByCondition(condition string, pars []interface{}, groupRule string) (items []*SaCompareLabelGroupCount, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) AS use_num, %s FROM %s WHERE 1=1 %s GROUP BY %s`, groupRule, m.TableName(), condition, groupRule)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompareLabel) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompareLabel, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -127,12 +124,12 @@ func (m *SaCompareLabel) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompareLabel) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompareLabel, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -143,19 +140,20 @@ func (m *SaCompareLabel) GetPageItemsByCondition(startSize, pageSize int, condit
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // UpdateSaCompareLabelByLabelId 更新比对标签信息
 func UpdateSaCompareLabelByLabelId(labelId int, labelName string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `UPDATE sa_compare_label SET label_name = ? WHERE label_id = ?`
-	_, err = o.Raw(sql, labelName, labelId).Exec()
+	err = o.Exec(sql, labelName, labelId).Error
 	return
 }
 
@@ -175,7 +173,7 @@ type SaCompareLabelItem struct {
 
 // GetSaCompareLabelByCond 获取比对标签
 func GetSaCompareLabelByCond(condition string, pars []interface{}) (items []*SaCompareLabelItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.sa_compare_label_id,
 				a.label_id,
@@ -197,6 +195,6 @@ func GetSaCompareLabelByCond(condition string, pars []interface{}) (items []*SaC
 				a.doc_id,
 				c.sort ASC`
 	sql = fmt.Sprintf(sql, condition)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 24 - 29
models/semantic_analysis/sa_compare_search_keyword.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -32,53 +33,49 @@ func (m *SaCompareSearchKeyword) TableName() string {
 }
 
 func (m *SaCompareSearchKeyword) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaCompareSearchKeywordId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_compare_search_keyword WHERE sa_compare_search_keyword_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaCompareSearchKeywordId).Exec()
+	err = o.Exec(sql, m.SaCompareSearchKeywordId).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_search_keyword WHERE sa_compare_search_keyword_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_compare_search_keyword WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompareSearchKeyword, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -88,12 +85,12 @@ func (m *SaCompareSearchKeyword) GetItemsByCondition(condition string, pars []in
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaCompareSearchKeyword) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompareSearchKeyword, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -104,11 +101,12 @@ func (m *SaCompareSearchKeyword) 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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -118,11 +116,8 @@ type SaCompareSearchKeywordSaveReq struct {
 }
 
 func (m *SaCompareSearchKeyword) DelAndCreateSearchKeywords(compareId int, keywords []string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -132,7 +127,7 @@ func (m *SaCompareSearchKeyword) DelAndCreateSearchKeywords(compareId int, keywo
 	}()
 
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ?`, m.TableName(), SaCompareSearchKeywordColumns.CompareId)
-	if _, e := o.Raw(sql, compareId).Exec(); e != nil {
+	if e := o.Exec(sql, compareId).Error; e != nil {
 		return e
 	}
 	if len(keywords) > 0 {
@@ -144,7 +139,7 @@ func (m *SaCompareSearchKeyword) DelAndCreateSearchKeywords(compareId int, keywo
 				CreateTime: time.Now().Local(),
 			})
 		}
-		if _, e := o.InsertMulti(len(items), items); e != nil {
+		if e := o.CreateInBatches(items, utils.MultiAddNum).Error; e != nil {
 			return e
 		}
 	}

+ 42 - 52
models/semantic_analysis/sa_doc.go

@@ -1,9 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -57,53 +57,49 @@ func (m *SaDoc) TableName() string {
 }
 
 func (m *SaDoc) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaDocId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaDoc) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaDoc) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_doc WHERE sa_doc_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaDocId).Exec()
+	err = o.Exec(sql, m.SaDocId).Error
 	return
 }
 
 func (m *SaDoc) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc WHERE sa_doc_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaDoc) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaDoc) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaDoc) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaDoc, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -113,12 +109,12 @@ func (m *SaDoc) GetItemsByCondition(condition string, pars []interface{}, fieldA
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaDoc) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaDoc, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -129,21 +125,19 @@ func (m *SaDoc) GetPageItemsByCondition(startSize, pageSize int, condition strin
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // InsertSaDocAndSections 新增文档及段落
 func InsertSaDocAndSections(doc *SaDoc, sections []*SaDocSection) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -152,21 +146,20 @@ func InsertSaDocAndSections(doc *SaDoc, sections []*SaDocSection) (err error) {
 		}
 	}()
 
-	lastId, err := tx.Insert(doc)
+	err = tx.Create(doc).Error
 	if err != nil {
 		return
 	}
-	doc.SaDocId = int(lastId)
+	lastId := doc.SaDocId
 
 	if len(sections) > 0 {
 		for i := range sections {
 			sections[i].DocId = int(lastId)
-			secId, e := tx.Insert(sections[i])
+			e := tx.Create(sections[i]).Error
 			if e != nil {
 				err = e
 				return
 			}
-			sections[i].SaDocSectionId = int(secId)
 		}
 	}
 	return
@@ -174,8 +167,8 @@ func InsertSaDocAndSections(doc *SaDoc, sections []*SaDocSection) (err error) {
 
 // DelSaDocAndSections 删除文档和段落
 func DelSaDocAndSections(docId int) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	if err != nil {
 		return
 	}
@@ -188,12 +181,12 @@ func DelSaDocAndSections(docId int) (err error) {
 	}()
 
 	sql := `DELETE FROM sa_doc WHERE sa_doc_id = ? LIMIT 1`
-	_, err = tx.Raw(sql, docId).Exec()
+	err = tx.Exec(sql, docId).Error
 	if err != nil {
 		return
 	}
 	sql = `DELETE FROM sa_doc_section WHERE doc_id = ?`
-	_, err = tx.Raw(sql, docId).Exec()
+	err = tx.Exec(sql, docId).Error
 	return
 }
 
@@ -249,19 +242,16 @@ type SaDocDetail struct {
 
 // UpdateSaDocClassifyByClassifyId 更新文档分类信息
 func UpdateSaDocClassifyByClassifyId(classifyId int, classifyName string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `UPDATE sa_doc SET classify_name = ? WHERE classify_id = ?`
-	_, err = o.Raw(sql, classifyName, classifyId).Exec()
+	err = o.Exec(sql, classifyName, classifyId).Error
 	return
 }
 
 // UpdateSaDocAndSections 更新文档和段落
 func UpdateSaDocAndSections(docItem *SaDoc, insertSecs, updateSecs []*SaDocSection, delSecIds []int, updateCols, updateSecCols []string) (err error) {
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -271,24 +261,24 @@ func UpdateSaDocAndSections(docItem *SaDoc, insertSecs, updateSecs []*SaDocSecti
 	}()
 
 	// 更新文档
-	if _, err = tx.Update(docItem, updateCols...); err != nil {
+	if err = tx.Select(updateCols).Updates(docItem).Error; err != nil {
 		return
 	}
 	// 段落-新增/更新/删除
 	if len(insertSecs) > 0 {
-		if _, err = tx.InsertMulti(len(insertSecs), insertSecs); err != nil {
+		if err = tx.CreateInBatches(insertSecs, utils.MultiAddNum).Error; err != nil {
 			return
 		}
 	}
 	for _, s := range updateSecs {
-		if _, err = tx.Update(s, updateSecCols...); err != nil {
+		if err = tx.Select(updateSecCols).Updates(s).Error; err != nil {
 			return
 		}
 	}
 	if len(delSecIds) > 0 {
 		sql := `DELETE FROM sa_doc_section WHERE doc_id = ? AND sa_doc_section_id IN (%s)`
 		sql = fmt.Sprintf(sql, utils.GetOrmInReplace(len(delSecIds)))
-		_, err = tx.Raw(sql, docItem.SaDocId, delSecIds).Exec()
+		err = tx.Exec(sql, docItem.SaDocId, delSecIds).Error
 	}
 	return
 }
@@ -309,7 +299,7 @@ type ElasticSaDoc struct {
 
 // GetSaDocsWithUseNumByCondition 获取文档及引用数
 func GetSaDocsWithUseNumByCondition(condition string, pars []interface{}) (items []*SaDocItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.*, COUNT(b.sa_compare_label_id) AS use_num
 			FROM
@@ -322,25 +312,25 @@ func GetSaDocsWithUseNumByCondition(condition string, pars []interface{}) (items
 			ORDER BY
 			    a.sort ASC, a.create_time DESC, a.sa_doc_id ASC`
 	sql = fmt.Sprintf(sql, condition)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // UpdateSaDocSort 根据分类ID更新排序
 func UpdateSaDocSort(classifyId, nowSort int, prevId int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` UPDATE sa_doc SET sort = ` + updateSort + ` WHERE classify_id = ? AND `
 	if prevId > 0 {
 		sql += ` ( sort > ? or ( sa_doc_id > ` + fmt.Sprint(prevId) + ` and sort = ` + fmt.Sprint(nowSort) + ` )) `
 	}
-	_, err = o.Raw(sql, classifyId, nowSort).Exec()
+	err = o.Exec(sql, classifyId, nowSort).Error
 	return
 }
 
 // GetFirstSortSaDoc 获取排序最前的文档
 func GetFirstSortSaDoc(classifyId int) (item *SaDoc, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` SELECT * FROM sa_doc WHERE classify_id = ? ORDER BY sort ASC,sa_doc_id ASC LIMIT 1`
-	err = o.Raw(sql, classifyId).QueryRow(&item)
+	err = o.Raw(sql, classifyId).First(&item).Error
 	return
 }

+ 21 - 23
models/semantic_analysis/sa_doc_classify.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -41,53 +42,49 @@ func (m *SaDocClassify) TableName() string {
 }
 
 func (m *SaDocClassify) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaDocClassifyId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaDocClassify) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaDocClassify) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_doc_classify WHERE sa_doc_classify_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaDocClassifyId).Exec()
+	err = o.Exec(sql, m.SaDocClassifyId).Error
 	return
 }
 
 func (m *SaDocClassify) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc_classify WHERE sa_doc_classify_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaDocClassify) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc_classify WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaDocClassify) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaDocClassify) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaDocClassify, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -97,12 +94,12 @@ func (m *SaDocClassify) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaDocClassify) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaDocClassify, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -113,11 +110,12 @@ func (m *SaDocClassify) GetPageItemsByCondition(startSize, pageSize int, conditi
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -147,7 +145,7 @@ type SaDocClassifyItem struct {
 	SysAdminId      int                          `description:"创建人ID"`
 	SysAdminName    string                       `description:"创建人名称"`
 	CreateTime      string                       `description:"创建时间"`
-	Children        []*SaDocClassifyChildrenItem `description:"分类下的文档"`
+	Children        []*SaDocClassifyChildrenItem `description:"分类下的文档" gorm:"-"`
 }
 
 type SaDocClassifyChildrenItem struct {

+ 20 - 22
models/semantic_analysis/sa_doc_section.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
@@ -30,53 +31,49 @@ func (m *SaDocSection) TableName() string {
 }
 
 func (m *SaDocSection) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaDocSectionId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaDocSection) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaDocSection) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_doc_section WHERE sa_doc_section_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaDocSectionId).Exec()
+	err = o.Exec(sql, m.SaDocSectionId).Error
 	return
 }
 
 func (m *SaDocSection) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc_section WHERE sa_doc_section_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaDocSection) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_doc_section WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaDocSection) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaDocSection) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaDocSection, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -86,12 +83,12 @@ func (m *SaDocSection) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaDocSection) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaDocSection, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -102,11 +99,12 @@ func (m *SaDocSection) GetPageItemsByCondition(startSize, pageSize int, conditio
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 

+ 20 - 22
models/semantic_analysis/sa_label.go

@@ -1,8 +1,9 @@
 package semantic_analysis
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -38,53 +39,49 @@ func (m *SaLabel) TableName() string {
 }
 
 func (m *SaLabel) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SaLabelId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
 func (m *SaLabel) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SaLabel) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sa_label WHERE sa_label_id = ? LIMIT 1`
-	_, err = o.Raw(sql, m.SaLabelId).Exec()
+	err = o.Exec(sql, m.SaLabelId).Error
 	return
 }
 
 func (m *SaLabel) GetItemById(id int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_label WHERE sa_label_id = ? LIMIT 1`
-	err = o.Raw(sql, id).QueryRow(&m)
+	err = o.Raw(sql, id).First(&m).Error
 	return
 }
 
 func (m *SaLabel) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sa_label WHERE 1=1 `
 	sql += condition
 	sql += ` LIMIT 1`
-	err = o.Raw(sql, pars).QueryRow(&m)
+	err = o.Raw(sql, pars...).First(&m).Error
 	return
 }
 
 func (m *SaLabel) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SaLabel) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaLabel, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -94,12 +91,12 @@ func (m *SaLabel) GetItemsByCondition(condition string, pars []interface{}, fiel
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SaLabel) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaLabel, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -110,11 +107,12 @@ func (m *SaLabel) GetPageItemsByCondition(startSize, pageSize int, condition str
 	}
 	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 = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 	sql += ` LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 

+ 31 - 34
models/smart_report/smart_report.go

@@ -1,9 +1,9 @@
 package smart_report
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"html"
 	"strings"
@@ -72,12 +72,8 @@ func (m *SmartReport) PrimaryId() string {
 }
 
 func (m *SmartReport) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SmartReportId = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -85,21 +81,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 := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SmartReport) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SmartReport) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SmartReportId).Exec()
+	err = o.Exec(sql, m.SmartReportId).Error
 	return
 }
 
@@ -107,39 +103,39 @@ func (m *SmartReport) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SmartReport) GetItemById(id int) (item *SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SmartReport) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SmartReport) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SmartReport) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SmartReport, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -149,12 +145,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 = o.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 := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -165,14 +161,15 @@ 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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SmartReport) GetMaxStageByClassifyId(classifyId int) (stage int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Raw(sql, classifyId).Scan(&stage).Error
 	return
 }
 
@@ -388,7 +385,7 @@ type Report2ImgQueueReq struct {
 
 // UpdateSmartReportsStateByCond 批量更新报告状态
 func UpdateSmartReportsStateByCond(classifyFirstId, classifySecondId, oldState, newState int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	cond := ``
 	if classifyFirstId > 0 {
 		cond += fmt.Sprintf(` AND classify_id_first = %d`, classifyFirstId)
@@ -397,7 +394,7 @@ func UpdateSmartReportsStateByCond(classifyFirstId, classifySecondId, oldState,
 		cond += fmt.Sprintf(` AND classify_id_second = %d`, classifySecondId)
 	}
 	sql := fmt.Sprintf(`UPDATE smart_report SET state = ?, pre_publish_time = NULL WHERE state = ? %s`, cond)
-	_, err = o.Raw(sql, newState, oldState).Exec()
+	err = o.Exec(sql, newState, oldState).Error
 	return
 }
 
@@ -406,23 +403,23 @@ func UpdateSmartReportsStateBySecondIds(oldState, newState int, secondIds []int)
 	if len(secondIds) <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	// (有审批流的)未发布->待提交
 	sql := fmt.Sprintf(`UPDATE smart_report SET state = ?, pre_publish_time = NULL WHERE state = ? AND classify_id_second IN (%s)`, utils.GetOrmInReplace(len(secondIds)))
-	_, err = o.Raw(sql, newState, oldState, secondIds).Exec()
+	err = o.Exec(sql, newState, oldState, secondIds).Error
 	if err != nil {
 		return
 	}
 	// (无审批流的)待提交->未发布
 	sql = fmt.Sprintf(`UPDATE smart_report SET state = ?, pre_publish_time = NULL WHERE state = ? AND classify_id_second NOT IN (%s)`, utils.GetOrmInReplace(len(secondIds)))
-	_, err = o.Raw(sql, oldState, newState, secondIds).Exec()
+	err = o.Exec(sql, oldState, newState, secondIds).Error
 	return
 }
 
 // UpdatePdfUrlSmartReportById 清空pdf相关字段
 func UpdatePdfUrlSmartReportById(reportId int) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := `UPDATE smart_report SET detail_img_url = '',detail_pdf_url='',modify_time=NOW() WHERE smart_report_id = ? `
-	_, err = o.Raw(sql, reportId).Exec()
+	err = o.Exec(sql, reportId).Error
 	return
 }

+ 22 - 25
models/smart_report/smart_report_save_log.go

@@ -1,9 +1,9 @@
 package smart_report
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -29,12 +29,8 @@ func (m *SmartReportSaveLog) PrimaryId() string {
 }
 
 func (m *SmartReportSaveLog) Create() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(id)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Create(m).Error
 	return
 }
 
@@ -42,21 +38,21 @@ func (m *SmartReportSaveLog) CreateMulti(items []*SmartReportSaveLog) (err error
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SmartReportSaveLog) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("rddp")
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameReport]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SmartReportSaveLog) Del() (err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.Id).Exec()
+	err = o.Exec(sql, m.Id).Error
 	return
 }
 
@@ -64,35 +60,35 @@ func (m *SmartReportSaveLog) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SmartReportSaveLog) GetItemById(id int) (item *SmartReportSaveLog, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SmartReportSaveLog) GetItemByCondition(condition string, pars []interface{}) (item *SmartReportSaveLog, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s LIMIT 1`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SmartReportSaveLog) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SmartReportSaveLog) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SmartReportSaveLog, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -102,12 +98,12 @@ func (m *SmartReportSaveLog) GetItemsByCondition(condition string, pars []interf
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SmartReportSaveLog) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SmartReportSaveLog, err error) {
-	o := orm.NewOrmUsingDB("rddp")
+	o := global.DbMap[utils.DbNameReport]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -117,6 +113,7 @@ func (m *SmartReportSaveLog) GetPageItemsByCondition(condition string, pars []in
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 19 - 21
models/smart_report/smart_resource.go

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

+ 47 - 68
models/speech_recognition/speech_recognition.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"strings"
 	"time"
@@ -84,12 +84,8 @@ func (m *SpeechRecognition) PrimaryId() string {
 }
 
 func (m *SpeechRecognition) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SpeechRecognitionId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -97,21 +93,21 @@ func (m *SpeechRecognition) CreateMulti(items []*SpeechRecognition) (err error)
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognition) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognition) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SpeechRecognitionId).Exec()
+	err = o.Exec(sql, m.SpeechRecognitionId).Error
 	return
 }
 
@@ -119,39 +115,39 @@ func (m *SpeechRecognition) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognition) GetItemById(id int) (item *SpeechRecognition, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognition) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognition, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognition) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognition) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognition, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -161,12 +157,12 @@ func (m *SpeechRecognition) GetItemsByCondition(condition string, pars []interfa
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognition) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognition, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -176,7 +172,8 @@ func (m *SpeechRecognition) GetPageItemsByCondition(condition string, pars []int
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -277,11 +274,8 @@ func UpdateSpeechAndApiLog(speechItem *SpeechRecognition, speechCols []string, a
 		err = fmt.Errorf("speechItem nil or apiLogItem nil")
 		return
 	}
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -290,12 +284,12 @@ func UpdateSpeechAndApiLog(speechItem *SpeechRecognition, speechCols []string, a
 		}
 	}()
 
-	_, e := tx.Update(speechItem, speechCols...)
+	e := tx.Select(speechCols).Updates(speechItem).Error
 	if e != nil {
 		err = fmt.Errorf("update speech err: %s", e.Error())
 		return
 	}
-	_, e = tx.Update(apiLogItem, logCols...)
+	e = tx.Select(logCols).Updates(apiLogItem).Error
 	if e != nil {
 		err = fmt.Errorf("update api log err: %s", e.Error())
 		return
@@ -309,11 +303,8 @@ func CreateContentAndUpdateSpeechAndApiLog(contents []*SpeechRecognitionContent,
 		err = fmt.Errorf("speechItem nil or apiLogItem nil")
 		return
 	}
-	o := orm.NewOrm()
-	tx, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -322,18 +313,18 @@ func CreateContentAndUpdateSpeechAndApiLog(contents []*SpeechRecognitionContent,
 		}
 	}()
 
-	_, e := tx.Update(speechItem, speechCols...)
+	e := tx.Select(speechCols).Updates(speechItem).Error
 	if e != nil {
 		err = fmt.Errorf("update speech err: %s", e.Error())
 		return
 	}
-	_, e = tx.Update(apiLogItem, logCols...)
+	e = tx.Select(logCols).Updates(apiLogItem).Error
 	if e != nil {
 		err = fmt.Errorf("update api log err: %s", e.Error())
 		return
 	}
 	if len(contents) > 0 {
-		_, e = tx.InsertMulti(len(contents), contents)
+		e = tx.CreateInBatches(contents, utils.MultiAddNum).Error
 		if e != nil {
 			err = fmt.Errorf("insert multi contents err: %s", e.Error())
 			return
@@ -405,11 +396,11 @@ type SpeechRecognitionDetailTag struct {
 
 // GetSpeechRecognitionTagBySpeechId 获取语音识别标签
 func GetSpeechRecognitionTagBySpeechId(speechId int) (items []*SpeechRecognitionDetailTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT a.speech_recognition_tag_id AS tag_id, a.tag_name FROM speech_recognition_tag AS a
 		JOIN speech_recognition_tag_mapping AS b ON a.speech_recognition_tag_id = b.tag_id
 		WHERE b.speech_recognition_id = ?`
-	_, err = o.Raw(sql, speechId).QueryRows(&items)
+	err = o.Raw(sql, speechId).Find(&items).Error
 	return
 }
 
@@ -425,11 +416,11 @@ func GetSpeechRecognitionTagsBySpeechIds(speechIds []int) (items []*SpeechRecogn
 	if len(speechIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT a.speech_recognition_id, a.tag_id, b.tag_name FROM speech_recognition_tag_mapping AS a
 		JOIN speech_recognition_tag AS b ON a.tag_id = b.speech_recognition_tag_id
 		WHERE a.speech_recognition_id IN (%s)`, utils.GetOrmInReplace(len(speechIds)))
-	_, err = o.Raw(sql, speechIds).QueryRows(&items)
+	err = o.Raw(sql, speechIds).Find(&items).Error
 	return
 }
 
@@ -462,30 +453,30 @@ type SpeechRecognitionContentExportReq struct {
 
 // UpdateSortByMenuId 根据分类ID更新排序
 func (m *SpeechRecognition) UpdateSortByMenuId(menuId, nowSort int, prevSpeechId int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`UPDATE %s SET %s = %s WHERE %s = ? `, m.TableName(), SpeechRecognitionCols.Sort, updateSort, SpeechRecognitionCols.MenuId)
 	if prevSpeechId > 0 {
 		sql += fmt.Sprintf(` AND (%s > ? OR (%s > %d AND %s = %d))`, SpeechRecognitionCols.Sort, SpeechRecognitionCols.SpeechRecognitionId, prevSpeechId, SpeechRecognitionCols.Sort, nowSort)
 	} else {
 		sql += fmt.Sprintf(` AND %s > ?`, SpeechRecognitionCols.Sort)
 	}
-	_, err = o.Raw(sql, menuId, nowSort).Exec()
+	err = o.Exec(sql, menuId, nowSort).Error
 	return
 }
 
 // GetMaxSortByMenuId 获取分类下最大Sort
 func (m *SpeechRecognition) GetMaxSortByMenuId(menuId int) (sort int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT MAX(sort) AS sort FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionCols.MenuId)
-	err = o.Raw(sql, menuId).QueryRow(&sort)
+	err = o.Raw(sql, menuId).Scan(&sort).Error
 	return
 }
 
 // GetFirstByMenuId 获取目录下排序第一的数据
 func (m *SpeechRecognition) GetFirstByMenuId(menuId int) (item *SpeechRecognition, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? ORDER BY %s ASC, %s ASC LIMIT 1`, m.TableName(), SpeechRecognitionCols.MenuId, SpeechRecognitionCols.Sort, SpeechRecognitionCols.SpeechRecognitionId)
-	err = o.Raw(sql, menuId).QueryRow(&item)
+	err = o.Raw(sql, menuId).First(&item).Error
 	return
 }
 
@@ -500,12 +491,8 @@ func (m *SpeechRecognition) SpeechSave(speechItem *SpeechRecognition, speechCols
 		err = fmt.Errorf("speech nil")
 		return
 	}
-	o := orm.NewOrm()
-	tx, e := o.Begin()
-	if e != nil {
-		err = fmt.Errorf("transaction begin err: %s", e.Error())
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -516,7 +503,7 @@ func (m *SpeechRecognition) SpeechSave(speechItem *SpeechRecognition, speechCols
 
 	// 转写文件
 	if len(speechCols) > 0 {
-		_, e = tx.Update(speechItem, speechCols...)
+		e := tx.Select(speechCols).Updates(speechItem).Error
 		if e != nil {
 			err = fmt.Errorf("update speech err: %s", e.Error())
 			return
@@ -526,16 +513,8 @@ func (m *SpeechRecognition) SpeechSave(speechItem *SpeechRecognition, speechCols
 	// 转写内容
 	if len(contents) > 0 {
 		sql := fmt.Sprintf(`UPDATE %s SET %s = ?, %s = 1, %s = NOW() WHERE %s = ?`, "speech_recognition_content", SpeechRecognitionContentCols.Content, SpeechRecognitionContentCols.IsUpdate, SpeechRecognitionContentCols.ModifyTime, SpeechRecognitionContentCols.SpeechRecognitionContentId)
-		p, e := tx.Raw(sql).Prepare()
-		if e != nil {
-			err = fmt.Errorf("update prepare err: %s", e.Error())
-			return
-		}
-		defer func() {
-			_ = p.Close()
-		}()
 		for _, v := range contents {
-			_, e = p.Exec(v.Content, v.SpeechRecognitionContentId)
+			e := tx.Exec(sql, v.Content, v.SpeechRecognitionContentId).Error
 			if e != nil {
 				err = fmt.Errorf("update exec err: %s", e.Error())
 				return
@@ -545,13 +524,13 @@ func (m *SpeechRecognition) SpeechSave(speechItem *SpeechRecognition, speechCols
 
 	// 标签
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ?`, "speech_recognition_tag_mapping", SpeechRecognitionTagMappingCols.SpeechRecognitionId)
-	_, e = tx.Raw(sql, speechItem.SpeechRecognitionId).Exec()
+	e := tx.Exec(sql, speechItem.SpeechRecognitionId).Error
 	if e != nil {
 		err = fmt.Errorf("remove tag mappings err: %s", e.Error())
 		return
 	}
 	if len(tagMappings) > 0 {
-		_, e = tx.InsertMulti(len(tagMappings), tagMappings)
+		e = tx.CreateInBatches(tagMappings, utils.MultiAddNum).Error
 		if e != nil {
 			err = fmt.Errorf("insert tag mappings err: %s", e.Error())
 			return

+ 22 - 25
models/speech_recognition/speech_recognition_api_log.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -62,12 +62,8 @@ func (m *SpeechRecognitionApiLog) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionApiLog) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -75,21 +71,21 @@ func (m *SpeechRecognitionApiLog) CreateMulti(items []*SpeechRecognitionApiLog)
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.Id).Exec()
+	err = o.Exec(sql, m.Id).Error
 	return
 }
 
@@ -97,39 +93,39 @@ func (m *SpeechRecognitionApiLog) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) GetItemById(id int) (item *SpeechRecognitionApiLog, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionApiLog, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionApiLog, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -139,12 +135,12 @@ func (m *SpeechRecognitionApiLog) GetItemsByCondition(condition string, pars []i
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionApiLog) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionApiLog, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -154,6 +150,7 @@ func (m *SpeechRecognitionApiLog) GetPageItemsByCondition(condition string, pars
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 26 - 36
models/speech_recognition/speech_recognition_content.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -52,12 +52,8 @@ func (m *SpeechRecognitionContent) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionContent) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SpeechRecognitionContentId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -65,21 +61,21 @@ func (m *SpeechRecognitionContent) CreateMulti(items []*SpeechRecognitionContent
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SpeechRecognitionContentId).Exec()
+	err = o.Exec(sql, m.SpeechRecognitionContentId).Error
 	return
 }
 
@@ -87,39 +83,39 @@ func (m *SpeechRecognitionContent) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) GetItemById(id int) (item *SpeechRecognitionContent, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionContent, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionContent, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -129,12 +125,12 @@ func (m *SpeechRecognitionContent) GetItemsByCondition(condition string, pars []
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionContent) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionContent, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -144,7 +140,8 @@ func (m *SpeechRecognitionContent) GetPageItemsByCondition(condition string, par
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -184,17 +181,10 @@ func (m *SpeechRecognitionContent) BatchUpdateContents(contents []SpeechRecognit
 	if len(contents) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`UPDATE %s SET %s = ?, %s = 1, %s = NOW() WHERE %s = ?`, m.TableName(), SpeechRecognitionContentCols.Content, SpeechRecognitionContentCols.IsUpdate, SpeechRecognitionContentCols.ModifyTime, SpeechRecognitionContentCols.SpeechRecognitionContentId)
-	p, err := o.Raw(sql).Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close()
-	}()
 	for _, v := range contents {
-		_, err = p.Exec(v.Content, v.SpeechRecognitionContentId)
+		err = o.Exec(sql, v.Content, v.SpeechRecognitionContentId).Error
 		if err != nil {
 			return
 		}
@@ -204,8 +194,8 @@ func (m *SpeechRecognitionContent) BatchUpdateContents(contents []SpeechRecognit
 
 // ClearContentBySpeechId 清除转写文件内容
 func (m *SpeechRecognitionContent) ClearContentBySpeechId(speechId int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionContentCols.SpeechRecognitionId)
-	_, err = o.Raw(sql, speechId).Exec()
+	err = o.Raw(sql, speechId).Error
 	return
 }

+ 30 - 33
models/speech_recognition/speech_recognition_menu.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -57,12 +57,8 @@ func (m *SpeechRecognitionMenu) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionMenu) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SpeechRecognitionMenuId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -70,21 +66,21 @@ func (m *SpeechRecognitionMenu) CreateMulti(items []*SpeechRecognitionMenu) (err
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SpeechRecognitionMenuId).Exec()
+	err = o.Raw(sql, m.SpeechRecognitionMenuId).Error
 	return
 }
 
@@ -92,39 +88,39 @@ func (m *SpeechRecognitionMenu) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Raw(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) GetItemById(id int) (item *SpeechRecognitionMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -134,12 +130,12 @@ func (m *SpeechRecognitionMenu) GetItemsByCondition(condition string, pars []int
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionMenu) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -149,7 +145,8 @@ func (m *SpeechRecognitionMenu) GetPageItemsByCondition(condition string, pars [
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -216,28 +213,28 @@ type SpeechRecognitionMenuMoveReq struct {
 
 // UpdateSortByParentId 根据父级ID更新排序
 func (m *SpeechRecognitionMenu) UpdateSortByParentId(parentId, menuId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`UPDATE %s SET %s = %s WHERE %s = ? AND %s > ?`, m.TableName(), SpeechRecognitionMenuCols.Sort, updateSort, SpeechRecognitionMenuCols.ParentId, SpeechRecognitionMenuCols.Sort)
 	if menuId > 0 {
 		sql += fmt.Sprintf(` OR (%s > %d AND %s = %d)`, SpeechRecognitionMenuCols.SpeechRecognitionMenuId, menuId, SpeechRecognitionMenuCols.Sort, nowSort)
 	}
-	_, err = o.Raw(sql, parentId, nowSort).Exec()
+	err = o.Raw(sql, parentId, nowSort).Error
 	return
 }
 
 // GetMaxSortByParentId 获取父级分类下最大Sort
 func (m *SpeechRecognitionMenu) GetMaxSortByParentId(parentId int) (sort int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT MAX(sort) AS sort FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionMenuCols.ParentId)
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = o.Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
 // GetFirstByParentId 获取父级目录下排序第一的目录
 func (m *SpeechRecognitionMenu) GetFirstByParentId(parentId int) (item *SpeechRecognitionMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? ORDER BY %s ASC, %s ASC LIMIT 1`, m.TableName(), SpeechRecognitionMenuCols.ParentId, SpeechRecognitionMenuCols.Sort, SpeechRecognitionMenuCols.SpeechRecognitionMenuId)
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	err = o.Raw(sql, parentId).First(&item).Error
 	return
 }
 
@@ -246,11 +243,11 @@ func (m *SpeechRecognitionMenu) UpdateChildByParentMenuId(menuIds []int, rootId
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	var pars []interface{}
 	pars = append(pars, rootId, levelStep)
 	pars = append(pars, menuIds)
 	sql := fmt.Sprintf(`UPDATE %s SET %s = ?, %s = %s + ? WHERE %s IN (%s)`, m.TableName(), SpeechRecognitionMenuCols.RootId, SpeechRecognitionMenuCols.Level, SpeechRecognitionMenuCols.Level, SpeechRecognitionMenuCols.SpeechRecognitionMenuId, utils.GetOrmInReplace(len(menuIds)))
-	_, err = o.Raw(sql, pars).Exec()
+	err = o.Raw(sql, pars...).Error
 	return
 }

+ 30 - 33
models/speech_recognition/speech_recognition_tag.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -48,12 +48,8 @@ func (m *SpeechRecognitionTag) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionTag) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SpeechRecognitionTagId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -61,21 +57,21 @@ func (m *SpeechRecognitionTag) CreateMulti(items []*SpeechRecognitionTag) (err e
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SpeechRecognitionTagId).Exec()
+	err = o.Raw(sql, m.SpeechRecognitionTagId).Error
 	return
 }
 
@@ -83,39 +79,39 @@ func (m *SpeechRecognitionTag) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Raw(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) GetItemById(id int) (item *SpeechRecognitionTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -125,12 +121,12 @@ func (m *SpeechRecognitionTag) 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 = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionTag) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -140,7 +136,8 @@ func (m *SpeechRecognitionTag) GetPageItemsByCondition(condition string, pars []
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -187,30 +184,30 @@ type SpeechRecognitionTagRemoveReq struct {
 
 // UpdateSortByMenuId 根据分类ID更新排序
 func (m *SpeechRecognitionTag) UpdateSortByMenuId(menuId, nowSort int, prevTagId int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`UPDATE %s SET %s = %s WHERE %s = ? `, m.TableName(), SpeechRecognitionTagCols.Sort, updateSort, SpeechRecognitionTagCols.MenuId)
 	if prevTagId > 0 {
 		sql += fmt.Sprintf(` AND (%s > ? OR (%s > %d AND %s = %d))`, SpeechRecognitionTagCols.Sort, SpeechRecognitionTagCols.SpeechRecognitionTagId, prevTagId, SpeechRecognitionTagCols.Sort, nowSort)
 	} else {
 		sql += fmt.Sprintf(` AND %s > ?`, SpeechRecognitionTagCols.Sort)
 	}
-	_, err = o.Raw(sql, menuId, nowSort).Exec()
+	err = o.Raw(sql, menuId, nowSort).Error
 	return
 }
 
 // GetMaxSortByMenuId 获取分类下最大Sort
 func (m *SpeechRecognitionTag) GetMaxSortByMenuId(menuId int) (sort int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT MAX(sort) AS sort FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionTagCols.MenuId)
-	err = o.Raw(sql, menuId).QueryRow(&sort)
+	err = o.Raw(sql, menuId).Scan(&sort).Error
 	return
 }
 
 // GetFirstByMenuId 获取目录下排序第一的数据
 func (m *SpeechRecognitionTag) GetFirstByMenuId(menuId int) (item *SpeechRecognitionTag, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? ORDER BY %s ASC, %s ASC LIMIT 1`, m.TableName(), SpeechRecognitionTagCols.MenuId, SpeechRecognitionTagCols.Sort, SpeechRecognitionTagCols.SpeechRecognitionTagId)
-	err = o.Raw(sql, menuId).QueryRow(&item)
+	err = o.Raw(sql, menuId).First(&item).Error
 	return
 }
 
@@ -218,8 +215,8 @@ func (m *SpeechRecognitionTag) GetTagIdsByMenuIds(menuIds []int) (tagIds []int,
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE %s IN (%s) GROUP BY %s`, SpeechRecognitionTagCols.SpeechRecognitionTagId, m.TableName(), SpeechRecognitionTagCols.MenuId, utils.GetOrmInReplace(len(menuIds)), SpeechRecognitionTagCols.SpeechRecognitionTagId)
-	_, err = o.Raw(sql, menuIds).QueryRows(&tagIds)
+	err = o.Raw(sql, menuIds).Scan(&tagIds).Error
 	return
 }

+ 26 - 29
models/speech_recognition/speech_recognition_tag_mapping.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 )
 
@@ -33,12 +33,8 @@ func (m *SpeechRecognitionTagMapping) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionTagMapping) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -46,21 +42,21 @@ func (m *SpeechRecognitionTagMapping) CreateMulti(items []*SpeechRecognitionTagM
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.Id).Exec()
+	err = o.Raw(sql, m.Id).Error
 	return
 }
 
@@ -68,39 +64,39 @@ func (m *SpeechRecognitionTagMapping) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Raw(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) GetItemById(id int) (item *SpeechRecognitionTagMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionTagMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionTagMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -110,12 +106,12 @@ func (m *SpeechRecognitionTagMapping) GetItemsByCondition(condition string, pars
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMapping) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionTagMapping, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -125,15 +121,16 @@ func (m *SpeechRecognitionTagMapping) GetPageItemsByCondition(condition string,
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // ClearMappingBySpeechId 清除转写文件标签关联
 func (m *SpeechRecognitionTagMapping) ClearMappingBySpeechId(speechId int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionTagMappingCols.SpeechRecognitionId)
-	_, err = o.Raw(sql, speechId).Exec()
+	err = o.Raw(sql, speechId).Error
 	return
 }
 
@@ -141,8 +138,8 @@ func (m *SpeechRecognitionTagMapping) GetSpeechIdsByTagIds(tagIds []int) (speech
 	if len(tagIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE %s IN (%s) GROUP BY %s`, SpeechRecognitionTagMappingCols.SpeechRecognitionId, m.TableName(), SpeechRecognitionTagMappingCols.TagId, utils.GetOrmInReplace(len(tagIds)), SpeechRecognitionTagMappingCols.SpeechRecognitionId)
-	_, err = o.Raw(sql, tagIds).QueryRows(&speechIds)
+	err = o.Raw(sql, tagIds).Scan(&speechIds).Error
 	return
 }

+ 30 - 33
models/speech_recognition/speech_recognition_tag_menu.go

@@ -1,9 +1,9 @@
 package speech_recognition
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -57,12 +57,8 @@ func (m *SpeechRecognitionTagMenu) PrimaryId() string {
 }
 
 func (m *SpeechRecognitionTagMenu) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.SpeechRecognitionTagMenuId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -70,21 +66,21 @@ func (m *SpeechRecognitionTagMenu) CreateMulti(items []*SpeechRecognitionTagMenu
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.SpeechRecognitionTagMenuId).Exec()
+	err = o.Exec(sql, m.SpeechRecognitionTagMenuId).Error
 	return
 }
 
@@ -92,39 +88,39 @@ func (m *SpeechRecognitionTagMenu) MultiDel(menuIds []int) (err error) {
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	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 = o.Exec(sql, menuIds).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) GetItemById(id int) (item *SpeechRecognitionTagMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) GetItemByCondition(condition string, pars []interface{}, orderRule string) (item *SpeechRecognitionTagMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	order := ``
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s %s LIMIT 1`, m.TableName(), condition, order)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SpeechRecognitionTagMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -134,12 +130,12 @@ func (m *SpeechRecognitionTagMenu) GetItemsByCondition(condition string, pars []
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *SpeechRecognitionTagMenu) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*SpeechRecognitionTagMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -149,7 +145,8 @@ func (m *SpeechRecognitionTagMenu) GetPageItemsByCondition(condition string, par
 		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)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -210,28 +207,28 @@ type SpeechRecognitionTagMenuMoveReq struct {
 
 // UpdateSortByParentId 根据父级ID更新排序
 func (m *SpeechRecognitionTagMenu) UpdateSortByParentId(parentId, menuId, nowSort int, updateSort string) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`UPDATE %s SET %s = %s WHERE %s = ? AND %s > ?`, m.TableName(), SpeechRecognitionTagMenuCols.Sort, updateSort, SpeechRecognitionTagMenuCols.ParentId, SpeechRecognitionTagMenuCols.Sort)
 	if menuId > 0 {
 		sql += fmt.Sprintf(` OR (%s > %d AND %s = %d)`, SpeechRecognitionTagMenuCols.SpeechRecognitionTagMenuId, menuId, SpeechRecognitionTagMenuCols.Sort, nowSort)
 	}
-	_, err = o.Raw(sql, parentId, nowSort).Exec()
+	err = o.Exec(sql, parentId, nowSort).Error
 	return
 }
 
 // GetMaxSortByParentId 获取父级分类下最大Sort
 func (m *SpeechRecognitionTagMenu) GetMaxSortByParentId(parentId int) (sort int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT MAX(sort) AS sort FROM %s WHERE %s = ?`, m.TableName(), SpeechRecognitionTagMenuCols.ParentId)
-	err = o.Raw(sql, parentId).QueryRow(&sort)
+	err = o.Raw(sql, parentId).Scan(&sort).Error
 	return
 }
 
 // GetFirstByParentId 获取父级目录下排序第一的目录
 func (m *SpeechRecognitionTagMenu) GetFirstByParentId(parentId int) (item *SpeechRecognitionTagMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? ORDER BY %s ASC, %s ASC LIMIT 1`, m.TableName(), SpeechRecognitionTagMenuCols.ParentId, SpeechRecognitionTagMenuCols.Sort, SpeechRecognitionTagMenuCols.SpeechRecognitionTagMenuId)
-	err = o.Raw(sql, parentId).QueryRow(&item)
+	err = o.Raw(sql, parentId).First(&item).Error
 	return
 }
 
@@ -240,11 +237,11 @@ func (m *SpeechRecognitionTagMenu) UpdateChildByParentMenuId(menuIds []int, root
 	if len(menuIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	var pars []interface{}
 	pars = append(pars, rootId, levelStep)
 	pars = append(pars, menuIds)
 	sql := fmt.Sprintf(`UPDATE %s SET %s = ?, %s = %s + ? WHERE %s IN (%s)`, m.TableName(), SpeechRecognitionTagMenuCols.RootId, SpeechRecognitionTagMenuCols.Level, SpeechRecognitionTagMenuCols.Level, SpeechRecognitionTagMenuCols.SpeechRecognitionTagMenuId, utils.GetOrmInReplace(len(menuIds)))
-	_, err = o.Raw(sql, pars).Exec()
+	err = o.Exec(sql, pars...).Error
 	return
 }

+ 10 - 13
models/system/admin_config.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -16,18 +17,14 @@ type AdminConfig struct {
 
 // Update 更新基础信息
 func (item *AdminConfig) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 func (item *AdminConfig) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(item)
-	if err != nil {
-		return
-	}
-	item.ConfigId = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }
 
@@ -37,17 +34,17 @@ var ChartLanguageVar = `chart_language`
 
 // GetConfigDetailByCode 获取详情
 func GetConfigDetailByCode(adminId int, configCode string) (item *AdminConfig, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` SELECT * FROM admin_config WHERE admin_id = ? AND  config_code=? `
-	err = o.Raw(sql, adminId, configCode).QueryRow(&item)
+	err = o.Raw(sql, adminId, configCode).First(&item).Error
 	return
 }
 
 // GetDefaultConfigDetailByCode 获取默认配置详情
 func GetDefaultConfigDetailByCode(configCode string) (item *AdminConfig, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := ` SELECT * FROM admin_config WHERE admin_id = ? AND  config_code=? `
-	err = o.Raw(sql, 0, configCode).QueryRow(&item)
+	err = o.Raw(sql, 0, configCode).First(&item).Error
 	return
 }
 

+ 4 - 3
models/system/admin_operate_record.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -19,7 +20,7 @@ type AdminOperateRecord struct {
 }
 
 func (item *AdminOperateRecord) Insert() (err error) {
-	o := orm.NewOrm()
-	_, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }

+ 21 - 23
models/system/admin_verify_code_record.go

@@ -1,8 +1,9 @@
 package system
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -44,12 +45,8 @@ func (m *AdminVerifyCodeRecord) PrimaryId() string {
 }
 
 func (m *AdminVerifyCodeRecord) Create() (err error) {
-	o := orm.NewOrm()
-	id, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(id)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(m).Error
 	return
 }
 
@@ -57,47 +54,47 @@ func (m *AdminVerifyCodeRecord) CreateMulti(items []*AdminVerifyCodeRecord) (err
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(items), items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(m, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(m).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) Del() (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`DELETE FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	_, err = o.Raw(sql, m.Id).Exec()
+	err = o.Exec(sql, m.Id).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) GetItemById(id int) (item *AdminVerifyCodeRecord, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE %s = ? LIMIT 1`, m.TableName(), m.PrimaryId())
-	err = o.Raw(sql, id).QueryRow(&item)
+	err = o.Raw(sql, id).First(&item).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) GetItemByCondition(condition string, pars []interface{}) (item *AdminVerifyCodeRecord, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s LIMIT 1`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&item)
+	err = o.Raw(sql, pars...).First(&item).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*AdminVerifyCodeRecord, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -107,12 +104,12 @@ func (m *AdminVerifyCodeRecord) GetItemsByCondition(condition string, pars []int
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func (m *AdminVerifyCodeRecord) GetPageItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string, startSize, pageSize int) (items []*AdminVerifyCodeRecord, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -122,6 +119,7 @@ func (m *AdminVerifyCodeRecord) GetPageItemsByCondition(condition string, pars [
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s LIMIT ?,?`, fields, m.TableName(), condition, order)
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }

+ 16 - 19
models/system/research_group.go

@@ -1,8 +1,8 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -20,17 +20,17 @@ type ResearchGroup struct {
 
 // GetResearchGroupList 获取研究方向分组列表
 func GetResearchGroupList() (list []*ResearchGroup, err error) {
-	o := orm.NewOrmUsingDB("weekly")
+	o := global.DbMap[utils.DbNameWeekly]
 	sql := `SELECT * FROM research_group WHERE state = 1 ORDER BY sort`
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
 // GetResearchGroupById 主键获取分组
 func GetResearchGroupById(groupId int) (item *ResearchGroup, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM research_group WHERE research_group_id = ? LIMIT 1`
-	err = o.Raw(sql, groupId).QueryRow(&item)
+	err = o.Raw(sql, groupId).First(&item).Error
 	return
 }
 
@@ -43,9 +43,9 @@ type ResearchGroupRelation struct {
 
 // ResearchGroupRelationListByAdminId 根据研究员ID获取研究方向分组关系列表
 func ResearchGroupRelationListByAdminId(adminId int) (list []*ResearchGroupRelation, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM research_group_relation WHERE admin_id = ?`
-	_, err = o.Raw(sql, adminId).QueryRows(&list)
+	err = o.Raw(sql, adminId).Find(&list).Error
 	return
 }
 
@@ -63,29 +63,26 @@ func GetResearchGroupRelationList(include int) (list []*ResearchGroupRelationIte
 	if include == 1 {
 		condition = ` WHERE 1=1 `
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.research_group_id,
 				a.admin_id,
 				b.real_name AS admin_name
 			FROM
 				research_group_relation AS a
-			INNER JOIN admin AS b ON a.admin_id = b.admin_id `
+			INNER JOIN "admin" AS b ON a.admin_id = b.admin_id `
 	sql += condition
 	sql += ` ORDER BY
 				a.research_group_id ASC,
 				a.admin_id ASC`
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
 // UpdateAdminResearchGroup 更新研究员研究方向分组
 func UpdateAdminResearchGroup(adminId int, items []*ResearchGroupRelation) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -94,12 +91,12 @@ func UpdateAdminResearchGroup(adminId int, items []*ResearchGroupRelation) (err
 		}
 	}()
 	sql := `DELETE FROM research_group_relation WHERE admin_id = ?`
-	if _, err = o.Raw(sql, adminId).Exec(); err != nil {
+	if err = o.Exec(sql, adminId).Error; err != nil {
 		return
 	}
 	itemsLen := len(items)
 	if itemsLen > 0 {
-		_, err = o.InsertMulti(itemsLen, items)
+		err = o.CreateInBatches(items, utils.MultiAddNum).Error
 	}
 	return
 }
@@ -115,7 +112,7 @@ func GetAdminResearchGroupListByAdminId(adminIds []int) (list []*AdminResearchGr
 	if len(adminIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.admin_id,
 				GROUP_CONCAT(b.research_group_name) AS group_name_str
@@ -126,6 +123,6 @@ func GetAdminResearchGroupListByAdminId(adminIds []int) (list []*AdminResearchGr
 				a.admin_id IN (` + utils.GetOrmInReplace(len(adminIds)) + `)
 			GROUP BY
 				a.admin_id`
-	_, err = o.Raw(sql, adminIds).QueryRows(&list)
+	err = o.Raw(sql, adminIds).Find(&list).Error
 	return
 }

+ 63 - 63
models/system/sys_admin.go

@@ -1,12 +1,12 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
 	"strings"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -50,30 +50,31 @@ func GetAdminItemByIdList(adminId []int) (items []*AdminItem, err error) {
 	if len(adminId) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE admin_id IN (` + utils.GetOrmInReplace(len(adminId)) + `) ORDER BY created_time DESC`
-	_, err = o.Raw(sql, adminId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE admin_id IN (` + utils.GetOrmInReplace(len(adminId)) + `) ORDER BY created_time DESC`
+	err = o.Raw(sql, adminId).Find(&items).Error
 	return
 }
 
 func GetSysuserList(condition string, pars []interface{}, startSize, pageSize int) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE 1=1 `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY enabled DESC, last_updated_time DESC, created_time DESC LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 func GetSysuserListCount(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT COUNT(1) AS count FROM admin WHERE 1=1 `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT COUNT(1) AS count FROM "admin" WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
@@ -134,30 +135,29 @@ type SysuserAddReq struct {
 }
 
 func GetSysAdminCount(adminName string) (count int, err error) {
-	sql := `SELECT COUNT(1) AS count FROM admin WHERE admin_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, adminName).QueryRow(&count)
+	sql := `SELECT COUNT(1) AS count FROM "admin" WHERE admin_name=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, adminName).Scan(&count).Error
 	return
 }
 
 func GetSysAdminByName(adminName string) (item *Admin, err error) {
-	sql := `SELECT * FROM admin WHERE admin_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, adminName).QueryRow(&item)
+	sql := `SELECT * FROM "admin" WHERE admin_name=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, adminName).First(&item).Error
 	return
 }
 
 func GetSysAdminById(adminId int) (item *Admin, err error) {
-	sql := `SELECT * FROM admin WHERE admin_id=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, adminId).QueryRow(&item)
+	sql := `SELECT * FROM "admin" WHERE admin_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, adminId).First(&item).Error
 	return
 }
 
 func AddAdmin(item *Admin) (err error) {
-	o := orm.NewOrm()
-	adminId, err := o.Insert(item)
-	item.AdminId = int(adminId)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }
 
@@ -201,21 +201,21 @@ type SysuserEditEnabledReq struct {
 
 // 变更状态
 func EditAdminEnabled(item *Admin) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `UPDATE admin
 			SET
 			  last_updated_time = NOW(),enabled=? WHERE admin_id = ? `
-	_, err = o.Raw(sql, item.Enabled, item.AdminId).Exec()
+	err = o.Exec(sql, item.Enabled, item.AdminId).Error
 	return
 }
 
 // DisableAdmin 禁用用户
 func DisableAdmin(adminId int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `UPDATE admin
 			SET
 			  last_updated_time = NOW(),disable_time=now(),enabled=0 WHERE admin_id = ? `
-	_, err = o.Raw(sql, adminId).Exec()
+	err = o.Exec(sql, adminId).Error
 	return
 }
 
@@ -224,58 +224,58 @@ type SysuserDeleteReq struct {
 }
 
 func DeleteSysuser(adminId int) (err error) {
-	sql := `DELETE FROM admin WHERE admin_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, adminId).Exec()
+	sql := `DELETE FROM "admin" WHERE admin_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, adminId).Error
 	return
 }
 
 // GetSysAdminCountByMobile 查询系统中是否存在该手机号(如果有传入用户id,那么排除该用户)
 func GetSysAdminCountByMobile(mobile string, adminId int) (count int, err error) {
-	sql := `SELECT COUNT(1) AS count FROM admin WHERE mobile=? `
+	sql := `SELECT COUNT(1) AS count FROM "admin" WHERE mobile=? `
 	if adminId > 0 {
 		sql += ` AND admin_id != ` + fmt.Sprint(adminId)
 	}
-	o := orm.NewOrm()
-	err = o.Raw(sql, mobile).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, mobile).Scan(&count).Error
 	return
 }
 
 func GetSysUserItems(condition string, pars []interface{}) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE 1=1 `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY last_updated_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetGroupSysUserList 根据分组id获取系统用户列表
 func GetGroupSysUserList(groupId int) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE group_id=? ORDER BY created_time DESC `
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE group_id=? ORDER BY created_time DESC `
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
 // GetDepartmentGroupSysUserList 根据部门id和分组id获取系统用户列表
 func GetDepartmentGroupSysUserList(departmentId, groupId int, roleTypeCodes string) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE department_id = ? and group_id=? and enabled=1 `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE department_id = ? and group_id=? and enabled=1 `
 	if roleTypeCodes != "" {
 		sql += ` and role_type_code in (` + roleTypeCodes + `) `
 	}
 	sql += ` ORDER BY created_time asc `
-	_, err = o.Raw(sql, departmentId, groupId).QueryRows(&items)
+	err = o.Raw(sql, departmentId, groupId).Find(&items).Error
 	return
 }
 
 // GetGrooupsysUserList 根据大组id和小组id获取系统用户列表
 func GetGrooupsysUserList(groupId int, roleTypeCodes string, enabled int) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE group_id = ? `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE group_id = ? `
 	if roleTypeCodes != "" {
 		sql += ` and role_type_code in (` + roleTypeCodes + `) `
 	}
@@ -283,7 +283,7 @@ func GetGrooupsysUserList(groupId int, roleTypeCodes string, enabled int) (items
 		sql += fmt.Sprint(` AND enabled=`, enabled, ` `)
 	}
 	sql += ` ORDER BY created_time asc `
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
@@ -292,35 +292,35 @@ func GetSysAdminByIdSlice(adminIdList []string) (items []*Admin, err error) {
 	if len(adminIdList) <= 0 {
 		return
 	}
-	sql := `SELECT * FROM admin WHERE admin_id in (` + strings.Join(adminIdList, ",") + `) `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&items)
+	sql := `SELECT * FROM "admin" WHERE admin_id in (` + strings.Join(adminIdList, ",") + `) `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 // GetTeamSysUserList 根据小组id获取系统用户列表
 func GetTeamSysUserList(teamId, enabled int) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE group_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE group_id=? `
 	if enabled >= 0 {
 		sql += fmt.Sprint(` AND enabled=`, enabled, ` `)
 	}
 	sql += ` ORDER BY created_time DESC `
-	_, err = o.Raw(sql, teamId).QueryRows(&items)
+	err = o.Raw(sql, teamId).Find(&items).Error
 	return
 }
 
 func GetGroupIdByParentId(groupId int) (items []*string, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT group_id FROM sys_group WHERE parent_id=? ORDER BY create_time DESC `
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
 func GetAdminByGroupId(groupId int) (items []*AdminItem, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM admin WHERE group_id=? ORDER BY created_time DESC`
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	sql := `SELECT * FROM "admin" WHERE group_id=? ORDER BY created_time DESC`
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
@@ -331,7 +331,7 @@ type OpenIdList struct {
 
 // GetRaiAdmin 获取权益内部人员(技术组+私募组)
 func GetRaiAdmin() (items []*AdminItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				admin_id,
 				real_name,
@@ -346,7 +346,7 @@ func GetRaiAdmin() (items []*AdminItem, err error) {
 				department_name = '产品技术部'
 				AND enabled = 1
 			)`
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
@@ -384,9 +384,9 @@ func GetSysAdminList(condition string, pars []interface{}, fieldArr []string, or
 	if orderRule != "" {
 		order = orderRule
 	}
-	sql := fmt.Sprintf(`SELECT %s FROM admin WHERE 1=1 %s ORDER BY %s`, fields, condition, order)
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	sql := fmt.Sprintf(`SELECT %s FROM "admin" WHERE 1=1 %s ORDER BY %s`, fields, condition, order)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -402,8 +402,8 @@ func GetSysAdminByIdList(adminIdList []int) (items []*Admin, err error) {
 	if num <= 0 {
 		return
 	}
-	sql := `SELECT * FROM admin WHERE admin_id in (` + utils.GetOrmInReplace(num) + `) `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, adminIdList).QueryRows(&items)
+	sql := `SELECT * FROM "admin" WHERE admin_id in (` + utils.GetOrmInReplace(num) + `) `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, adminIdList).Find(&items).Error
 	return
 }

+ 32 - 36
models/system/sys_department.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -18,14 +19,18 @@ type SysDepartment struct {
 
 func GetSysDepartmentCount(departmentName string) (count int, err error) {
 	sql := `SELECT COUNT(1) AS count FROM sys_department WHERE department_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, departmentName).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentName).Scan(&count).Error
 	return
 }
 
 func AddSysDepartment(item *SysDepartment) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.DepartmentId)
 	return
 }
 
@@ -36,24 +41,21 @@ type SysDepartmentEditReq struct {
 
 func GetSysDepartmentById(departmentId int) (item *SysDepartment, err error) {
 	sql := `SELECT * FROM sys_department WHERE department_id=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, departmentId).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentId).First(&item).Error
 	return
 }
 
 func GetSysDepartmentByName(departmentName string) (item *SysDepartment, err error) {
 	sql := `SELECT * FROM sys_department WHERE department_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, departmentName).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentName).First(&item).Error
 	return
 }
 
 func ModifySysDepartment(departmentName string, departmentId int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -62,12 +64,12 @@ func ModifySysDepartment(departmentName string, departmentId int) (err error) {
 		}
 	}()
 	sql := `UPDATE sys_department SET department_name=? WHERE department_id=? `
-	_, err = to.Raw(sql, departmentName, departmentId).Exec()
+	err = to.Exec(sql, departmentName, departmentId).Error
 	if err != nil {
 		return
 	}
-	sql = `UPDATE admin SET department_name=? WHERE department_id=? `
-	_, err = to.Raw(sql, departmentName, departmentId).Exec()
+	sql = `UPDATE "admin" SET department_name=? WHERE department_id=? `
+	err = to.Exec(sql, departmentName, departmentId).Error
 	return
 }
 
@@ -77,8 +79,8 @@ type SysDepartmentDeleteReq struct {
 
 func DeleteSysDepartment(departmentId int) (err error) {
 	sql := `DELETE FROM sys_department WHERE department_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, departmentId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, departmentId).Error
 	return
 }
 
@@ -86,26 +88,26 @@ type SysDepartmentList struct {
 	DepartmentId   int             `orm:"column(department_id);pk" gorm:"primaryKey" description:"部门Id"`
 	DepartmentName string          `description:"部门名称"`
 	CreateTime     time.Time       `description:"创建时间"`
-	Child          []*SysGroupList `description:"分组"`
+	Child          []*SysGroupList `description:"分组" gorm:"-"`
 	IsDepartment   bool            `description:"true:部门,false:分组"`
 }
 
 func GetDepartmentList() (items []*SysDepartmentList, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_department ORDER BY sort ASC, create_time ASC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 // GetDepartmentListByIds 根据部门id集合获取部门列表信息
 func GetDepartmentListByIds(departmentIds string) (items []*SysDepartmentList, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_department where 1 = 1 `
 	if departmentIds != "" {
 		sql += `and department_id in(` + departmentIds + `) `
 	}
 	sql += ` ORDER BY sort ASC, create_time ASC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
@@ -115,8 +117,8 @@ type SysDepartmentListResp struct {
 
 func GetSysDepartmentAll() (item []*SysDepartment, err error) {
 	sql := `SELECT * FROM sys_department ORDER BY sort ASC, department_id ASC `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql).Find(&item).Error
 	return
 }
 
@@ -129,16 +131,10 @@ func MultiUpdateDepartmentSort(items []*DepartmentSort) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	p, err := o.Raw("UPDATE sys_department SET sort = ? WHERE department_id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close()
-	}()
+	o := global.DbMap[utils.DbNameMaster]
+	sql := "UPDATE sys_department SET sort = ? WHERE department_id = ?"
 	for _, v := range items {
-		_, err = p.Exec(v.Sort, v.DepartmentId)
+		err = o.Exec(sql, v.Sort, v.DepartmentId).Error
 		if err != nil {
 			return
 		}
@@ -151,5 +147,5 @@ type DepartmentUserTree struct {
 	NodeId   int                   `description:"节点ID"`
 	NodeType int                   `description:"节点类型:1-部门;2-分组;3-用户"`
 	NodeName string                `description:"节点名称"`
-	Children []*DepartmentUserTree `description:"子节点"`
+	Children []*DepartmentUserTree `description:"子节点" gorm:"-"`
 }

+ 44 - 49
models/system/sys_group.go

@@ -1,8 +1,8 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -22,14 +22,18 @@ type SysGroup struct {
 
 func GetSysGroupCount(departmentId int, groupName string) (count int, err error) {
 	sql := `SELECT COUNT(1) AS count FROM sys_group WHERE department_id=? AND group_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, departmentId, groupName).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentId, groupName).Scan(&count).Error
 	return
 }
 
 func AddSysGroup(item *SysGroup) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.GroupId)
 	return
 }
 
@@ -40,24 +44,21 @@ type SysGroupEditReq struct {
 
 func GetSysGroupById(groupId int) (item *SysGroup, err error) {
 	sql := `SELECT * FROM sys_group WHERE group_id=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, groupId).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupId).First(&item).Error
 	return
 }
 
 func GetSysGroupByName(groupName string) (item *SysGroup, err error) {
 	sql := `SELECT * FROM sys_group WHERE group_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, groupName).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupName).First(&item).Error
 	return
 }
 
 func ModifySysGroup(groupName string, groupId int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -66,9 +67,9 @@ func ModifySysGroup(groupName string, groupId int) (err error) {
 		}
 	}()
 	sql := `UPDATE sys_group SET group_name=? WHERE group_id=? `
-	_, err = to.Raw(sql, groupName, groupId).Exec()
-	sql = `UPDATE admin SET group_name=? WHERE group_id=? `
-	_, err = to.Raw(sql, groupName, groupId).Exec()
+	err = to.Exec(sql, groupName, groupId).Error
+	sql = `UPDATE "admin" SET group_name=? WHERE group_id=? `
+	err = to.Exec(sql, groupName, groupId).Error
 	return
 }
 
@@ -78,8 +79,8 @@ type SysGroupDeleteReq struct {
 
 func DeleteSysGroup(groupId int) (err error) {
 	sql := `DELETE FROM sys_group WHERE group_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, groupId).Error
 	return
 }
 
@@ -89,61 +90,61 @@ type SysGroupList struct {
 	ParentId     int            `json:"ParentId" description:"父级ID"`
 	DepartmentId int            `json:"TopId" description:"部门Id"`
 	GroupName    string         `json:"DepartmentName" description:"分组名称"`
-	Child        []*SysTeamList `description:"小组"`
+	Child        []*SysTeamList `description:"小组" gorm:"-"`
 	CreateTime   time.Time      `description:"创建时间"`
 	IsGroup      bool           `description:"是否为二级部门"`
 }
 
 func GetSysGroupByDepartmentId(departmentId int) (items []*SysGroupList, err error) {
 	sql := `SELECT * FROM sys_group WHERE department_id=? AND parent_id=0 ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, departmentId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentId).Find(&items).Error
 	return
 }
 
 // GetSysGroupListByDepartmentId 获取该部门下的所有分组(包含大小分组,不包含 “无” 这个分组)
 func GetSysGroupListByDepartmentId(departmentId int) (items []*SysGroupList, err error) {
 	sql := `SELECT * FROM sys_group WHERE department_id=? AND group_name<>'无' ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, departmentId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentId).Find(&items).Error
 	return
 }
 
 func ClearSysUserGroup(groupId int) (err error) {
-	sql := `UPDATE admin SET group_id=0,group_name='' WHERE group_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).Exec()
+	sql := `UPDATE "admin" SET group_id=0,group_name='' WHERE group_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, groupId).Error
 	return
 }
 
 func GetSysGroupByDirectorId(directorId int) (items []*SysGroupList, err error) {
 	sql := `SELECT * FROM sys_group WHERE group_id=? ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, directorId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, directorId).Find(&items).Error
 	return
 }
 
 // GetSysGroupByGroupId 销售主管用,查找销售主管所在大组的名称
 func GetSysGroupByGroupId(groupId int) (items []*SysGroupList, err error) {
 	sql := `SELECT * FROM sys_group WHERE department_id=2 AND parent_id=0 AND group_id=? ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
 // GetSysGroupByGroupIds 销售主管用,查找销售主管所在大组的名称
 func GetSysGroupByGroupIds(groupIds []int) (items []*SysGroup, err error) {
 	sql := `SELECT * FROM sys_group WHERE group_id in (` + utils.GetOrmInReplace(len(groupIds)) + `) ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupIds).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupIds).Find(&items).Error
 	return
 }
 
 // GetChildSysGroupByGroupId 通过上级分组id获取下级的分组id
 func GetChildSysGroupByGroupId(groupId int) (items []*SysGroup, err error) {
 	sql := `SELECT * FROM sys_group WHERE parent_id=? ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
@@ -163,8 +164,8 @@ func GetFullGroup() (list []*SysFullGroup, err error) {
 from sys_group s 
 LEFT JOIN sys_group g on s.parent_id=g.group_id
 LEFT JOIN sys_department d on s.department_id=d.department_id ORDER BY s.sort ASC, s.create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&list)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql).Find(&list).Error
 	return
 }
 
@@ -184,16 +185,10 @@ func MultiUpdateGroupSort(items []*GroupSort) (err error) {
 	if len(items) == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	p, err := o.Raw("UPDATE sys_group SET sort = ? WHERE group_id = ?").Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close()
-	}()
+	o := global.DbMap[utils.DbNameMaster]
+	sql := "UPDATE sys_group SET sort = ? WHERE group_id = ?"
 	for _, v := range items {
-		_, err = p.Exec(v.Sort, v.GroupId)
+		err = o.Exec(sql, v.Sort, v.GroupId).Error
 		if err != nil {
 			return
 		}
@@ -214,8 +209,8 @@ func GetGroupByDepartmentId(departmentId int) (list []*SysFullGroup, err error)
 			ORDER BY
 				s.sort ASC,
 				s.create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, departmentId).QueryRows(&list)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, departmentId).Find(&list).Error
 	return
 }
 
@@ -226,7 +221,7 @@ type RoadshowGroupResp struct {
 type RoadshowGroups struct {
 	GroupId   int                    `description:"分组ID"`
 	GroupName string                 `description:"分组名称"`
-	Child     []RoadshowGroupSellers `description:"销售"`
+	Child     []RoadshowGroupSellers `description:"销售" gorm:"-"`
 }
 
 type RoadshowGroupSellers struct {

+ 13 - 12
models/system/sys_menu.go

@@ -1,8 +1,9 @@
 package system
 
 import (
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -22,7 +23,7 @@ type SysMenu struct {
 	Sort       string    `description:"排序"`
 	Path       string    `description:"路由地址"`
 	IconPath   string    `description:"菜单图标地址"`
-	Component  int       `description:"组件路径"`
+	Component  string    `description:"组件路径"`
 	Hidden     int       `description:"是否隐藏:1-隐藏 0-显示"`
 	IsLevel    int       `description:"是否为多级菜单:1,只有一级;2,有多级"`
 	LevelPath  string    `description:"兼容以前menu表的字段"`
@@ -36,7 +37,7 @@ type SysMenu struct {
 
 // GetSysMenuItemsByCondition 获取菜单列表
 func GetSysMenuItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SysMenu, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -46,7 +47,7 @@ func GetSysMenuItemsByCondition(condition string, pars []interface{}, fieldArr [
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM sys_menu WHERE 1=1 %s %s`, fields, condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -84,7 +85,7 @@ func GetMenuList(roleId int) (items []*MenuList, err error) {
 			WHERE c.role_id=?
 			AND a.parent_id=0 
             ORDER BY sort ASC `
-	_, err = orm.NewOrm().Raw(sql, roleId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId).Find(&items).Error
 	return
 }
 
@@ -95,7 +96,7 @@ func GetMenuByParentId(roleId, parentId int) (items []*ChildMenu, err error) {
 			WHERE c.role_id=?
 			AND a.parent_id=? 
             ORDER BY sort ASC `
-	_, err = orm.NewOrm().Raw(sql, roleId, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId, parentId).Find(&items).Error
 	return
 }
 
@@ -107,7 +108,7 @@ func GetMenuListByRoleIds(roleIds string) (items []*MenuList, err error) {
 			WHERE c.role_id in (` + roleIds + `)
 			AND a.parent_id=0 
             ORDER BY sort ASC `
-	_, err = orm.NewOrm().Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql).Find(&items).Error
 	return
 }
 
@@ -119,7 +120,7 @@ func GetMenuByParentIdRoleIds(roleIds string, parentId int) (items []*ChildMenu,
 			WHERE c.role_id in (` + roleIds + `)
 			AND a.parent_id=? 
             ORDER BY a.sort ASC, create_time DESC, menu_id DESC`
-	_, err = orm.NewOrm().Raw(sql, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, parentId).Find(&items).Error
 	return
 }
 
@@ -135,7 +136,7 @@ func GetMenuButtonsByRoleId(roleId int) (items []*SysMenu, err error) {
 			ORDER BY
 				r.sort ASC,
 				r.create_time DESC`
-	_, err = orm.NewOrm().Raw(sql, roleId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId).Find(&items).Error
 	return
 }
 
@@ -163,7 +164,7 @@ type SysMenuItem struct {
 	Sort       string         `description:"排序"`
 	Path       string         `description:"路由地址"`
 	IconPath   string         `description:"菜单图标地址"`
-	Component  int            `description:"组件路径"`
+	Component  string         `description:"组件路径"`
 	Hidden     int            `description:"是否隐藏:1-隐藏 0-显示"`
 	MenuType   int            `description:"菜单类型: 0-菜单; 1-按钮; 2-字段(需要特殊处理)"`
 	ButtonCode string         `description:"按钮/菜单唯一标识"`
@@ -188,7 +189,7 @@ func GetMenuButtonApisByRoleId(roleId int) (items []*SysMenu, err error) {
 			ORDER BY
 				r.sort ASC,
 				r.create_time DESC`
-	_, err = orm.NewOrm().Raw(sql, roleId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId).Find(&items).Error
 	return
 }
 
@@ -209,6 +210,6 @@ func GetMenuByRoleIds(roleIds string) (items []*SysMenu, err error) {
 			INNER JOIN sys_role AS c ON b.role_id=c.role_id
 			WHERE c.role_id in (` + roleIds + `)
             ORDER BY a.sort ASC, create_time DESC, menu_id DESC`
-	_, err = orm.NewOrm().Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql).Find(&items).Error
 	return
 }

+ 23 - 14
models/system/sys_menu_button.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -20,7 +21,7 @@ type SysMenuButtonItem struct {
 
 func GetSysMenuButtonItems(menuId int) (items []*SysMenuButtonItem, err error) {
 	sql := ` SELECT * FROM sys_menu_button  WHERE menu_id=? `
-	_, err = orm.NewOrm().Raw(sql, menuId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, menuId).Find(&items).Error
 	return
 }
 
@@ -30,8 +31,12 @@ type MenuButtonsResp struct {
 }
 
 func AddSysMenuButton(item *SysMenuButton) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.MenuButtonId)
 	return
 }
 
@@ -43,8 +48,12 @@ type SysRoleButton struct {
 }
 
 func AddSysRoleButton(item *SysRoleButton) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.Id)
 	return
 }
 
@@ -52,8 +61,8 @@ func GetRoleButtonCheck(roleId int) (items []*SysRoleButton, err error) {
 	sql := `SELECT b.* FROM  sys_menu_button AS a
 			INNER JOIN sys_role_button AS b ON a.menu_button_id=b.menu_button_id
 			WHERE b.role_id=?`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, roleId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleId).Find(&items).Error
 	return
 }
 
@@ -67,21 +76,21 @@ func GetButtonMenu() (items []*ButtonMenu, err error) {
 	sql := `SELECT b.menu_id,b.name FROM sys_menu_button AS a
 			INNER JOIN sys_menu AS b ON a.menu_id=b.menu_id
 			GROUP BY  b.menu_id `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
 func DeleteSysRoleButton(roleId int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sys_role_button WHERE role_id=? `
-	_, err = o.Raw(sql, roleId).Exec()
+	err = o.Exec(sql, roleId).Error
 	return
 }
 
 func GetSysRoleButtonCount(roleId, buttonId int) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT COUNT(1) AS count FROM sys_role_button WHERE role_id=? AND menu_button_id=? `
-	_, err = o.Raw(sql, roleId, buttonId).Exec()
+	err = o.Raw(sql, roleId, buttonId).Error
 	return
 }

+ 49 - 40
models/system/sys_role.go

@@ -1,10 +1,10 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"time"
 
-	"github.com/beego/beego/v2/client/orm"
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -34,14 +34,18 @@ type SysRoleItem struct {
 
 func GetSysRoleCount(roleName string) (count int, err error) {
 	sql := `SELECT COUNT(1) AS count FROM sys_role WHERE role_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, roleName).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleName).Scan(&count).Error
 	return
 }
 
 func AddSysRole(item *SysRole) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.RoleId)
 	return
 }
 
@@ -53,36 +57,36 @@ type SysRoleEditReq struct {
 
 func GetSysRoleById(roleId int) (item *SysRoleItem, err error) {
 	sql := `SELECT * FROM sys_role WHERE role_id=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, roleId).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleId).First(&item).Error
 	return
 }
 
 func GetRoleInfoById(roleId int) (item *SysRole, err error) {
 	sql := `SELECT * FROM sys_role WHERE role_id=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, roleId).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleId).First(&item).Error
 	return
 }
 
 func GetSysRoleByName(roleName string) (item *SysRoleItem, err error) {
 	sql := `SELECT * FROM sys_role WHERE role_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, roleName).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleName).First(&item).Error
 	return
 }
 
 // GetSysRoleByRoleTypeCode role_type_code
 func GetSysRoleByRoleTypeCode(roleTypeCode string) (item *SysRoleItem, err error) {
 	sql := `SELECT * FROM sys_role WHERE role_type_code=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, roleTypeCode).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, roleTypeCode).First(&item).Error
 	return
 }
 func ModifySysRole(roleName, roleType, roleTypeCode string, groupId int) (err error) {
 	sql := `UPDATE sys_role SET role_name=?,role_type=?,role_type_code=?,modify_time=NOW() WHERE role_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, roleName, roleType, roleTypeCode, groupId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, roleName, roleType, roleTypeCode, groupId).Error
 	return
 }
 
@@ -92,29 +96,30 @@ type SysRoleDeleteReq struct {
 
 func DeleteSysRole(roleId int) (err error) {
 	sql := `DELETE FROM sys_role WHERE role_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, roleId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, roleId).Error
 	return
 }
 
 func GetSysRoleListCount(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT COUNT(1) AS count FROM sys_role WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	err = o.Raw(sql, pars).QueryRow(&count)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func GetSysRoleList(condition string, pars []interface{}, startSize, pageSize int) (items []*SysRoleItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_role WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
 	sql += `ORDER BY modify_time DESC LIMIT ?,?`
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -143,13 +148,13 @@ type RoleMenuListResp struct {
 
 func GetRoleMenuList() (items []*RoleMenuList, err error) {
 	sql := `SELECT * FROM sys_menu WHERE parent_id=0 ORDER BY sort ASC `
-	_, err = orm.NewOrm().Raw(sql).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql).Find(&items).Error
 	return
 }
 
 func GetRoleMenuByParentId(parentId int) (items []*RoleMenu, err error) {
 	sql := `SELECT * FROM sys_menu WHERE parent_id=? ORDER BY sort ASC `
-	_, err = orm.NewOrm().Raw(sql, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, parentId).Find(&items).Error
 	return
 }
 
@@ -158,7 +163,7 @@ func GetCheckListRoleMenu(roleId, parentId int) (items []*RoleMenuList, err erro
 				INNER JOIN sys_menu AS b ON a.menu_id=b.menu_id
 				WHERE a.role_id=? AND a.type = 0
 				AND b.parent_id=? `
-	_, err = orm.NewOrm().Raw(sql, roleId, parentId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId, parentId).Find(&items).Error
 	return
 }
 
@@ -170,7 +175,7 @@ type RoleMenusAddReq struct {
 
 func DeleteRoleMenuByRoleId(roleId int) (err error) {
 	sql := `DELETE FROM sys_role_menu WHERE role_id=? `
-	_, err = orm.NewOrm().Raw(sql, roleId).Exec()
+	err = global.DbMap[utils.DbNameMaster].Exec(sql, roleId).Error
 	return
 
 }
@@ -183,8 +188,12 @@ type SysRoleMenu struct {
 }
 
 func AddSysRoleMenu(item *SysRoleMenu) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
+	if err != nil {
+		return
+	}
+	lastId = int64(item.RoleMenuId)
 	return
 }
 
@@ -193,8 +202,8 @@ func CreateMultiSysRoleMenu(roleId int, items []*SysRoleMenu) (err error) {
 	if roleId == 0 {
 		return
 	}
-	o := orm.NewOrm()
-	tx, err := o.Begin()
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	if err != nil {
 		return
 	}
@@ -207,25 +216,25 @@ func CreateMultiSysRoleMenu(roleId int, items []*SysRoleMenu) (err error) {
 	}()
 
 	sql := `DELETE FROM sys_role_menu WHERE role_id = ?`
-	_, err = tx.Raw(sql, roleId).Exec()
+	err = tx.Exec(sql, roleId).Error
 	if err != nil {
 		return
 	}
 
 	if len(items) > 0 {
-		_, err = tx.InsertMulti(len(items), items)
+		err = tx.CreateInBatches(items, utils.MultiAddNum).Error
 	}
 	return
 }
 
 func GetSysRoleAll(levelFlag bool) (items []*SysRoleItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_role WHERE 1=1`
 	if levelFlag {
 		sql += ` and role_level = 0`
 	}
 	sql += ` ORDER BY create_time DESC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
@@ -238,9 +247,9 @@ func GetEnglishAuthRoleIds(roleCodes []string) (roleIds []int, err error) {
 	if len(roleCodes) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT role_id FROM sys_role WHERE role_type_code IN (` + utils.GetOrmInReplace(len(roleCodes)) + `)`
-	_, err = o.Raw(sql, roleCodes).QueryRows(&roleIds)
+	err = o.Raw(sql, roleCodes).Scan(&roleIds).Error
 	return
 }
 
@@ -252,7 +261,7 @@ func GetSysRoleMenuByRoleId(roleId int) (items []*SysRoleMenu, err error) {
 				sys_role_menu
 			WHERE
 				role_id = ?`
-	_, err = orm.NewOrm().Raw(sql, roleId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId).Find(&items).Error
 	return
 }
 
@@ -261,9 +270,9 @@ func GetEnglishAuthRoleItems(roleCodes []string) (items []*SysRole, err error) {
 	if len(roleCodes) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_role WHERE role_type_code IN (` + utils.GetOrmInReplace(len(roleCodes)) + `)`
-	_, err = o.Raw(sql, roleCodes).QueryRows(&items)
+	err = o.Raw(sql, roleCodes).Find(&items).Error
 	return
 }
 
@@ -271,8 +280,8 @@ func GetSysRoleByIdList(id []int) (items []*SysRole, err error) {
 	if len(id) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT * FROM sys_role WHERE role_id IN (` + utils.GetOrmInReplace(len(id)) + `)`
-	_, err = o.Raw(sql, id).QueryRows(&items)
+	err = o.Raw(sql, id).Find(&items).Error
 	return
 }

+ 31 - 33
models/system/sys_role_admin.go

@@ -1,8 +1,8 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -39,14 +39,14 @@ func (sa *SysRoleAdmin) TableName() string {
 // GetRoleIdsByAdminId 根据管理员账号查询角色ID
 func GetRoleIdsByAdminId(adminId int) (items []*SysRoleAdmin, err error) {
 	sql := `SELECT * from sys_role_admin where admin_id = ?`
-	_, err = orm.NewOrm().Raw(sql, adminId).QueryRows(&items)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, adminId).Find(&items).Error
 	return
 }
 
 // GetRoleIdsByAdminIdRoleId 根据管理员账号和角色查询
 func GetRoleIdsByAdminIdRoleId(adminId int, roleId int) (item *SysRoleAdmin, err error) {
 	sql := `SELECT * from sys_role_admin where admin_id = ? and role_id=?`
-	err = orm.NewOrm().Raw(sql, adminId, roleId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, adminId, roleId).First(&item).Error
 	return
 }
 
@@ -68,13 +68,13 @@ func GetRoleAdminList(condition string, pars []interface{}, startSize, pageSize
 	a.group_name
 FROM
 	sys_role_admin s
-	INNER JOIN admin a ON s.admin_id = a.admin_id 
+	INNER JOIN "admin" a ON s.admin_id = a.admin_id 
 where 1=1`
 	if condition != "" {
 		sql += condition
 	}
 	sql += ` ORDER BY s.id DESC limit ?, ?`
-	_, err = orm.NewOrm().Raw(sql, pars, startSize, pageSize).QueryRows(&list)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, pars, startSize, pageSize).Find(&list).Error
 	return
 }
 
@@ -84,12 +84,12 @@ func GetRoleAdminListTotal(condition string, pars []interface{}) (total int64, e
 	count(*)
 FROM
 	sys_role_admin s
-	INNER JOIN admin a ON s.admin_id = a.admin_id 
+	INNER JOIN "admin" a ON s.admin_id = a.admin_id 
 where 1=1`
 	if condition != "" {
 		sql += condition
 	}
-	err = orm.NewOrm().Raw(sql, pars).QueryRow(&total)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, pars...).Scan(&total).Error
 	return
 }
 
@@ -99,24 +99,24 @@ func CheckRoleAdminByAdminIds(adminIds string, roleId int) (list []*SysRoleAdmin
 	s.*
 FROM
 	sys_role_admin s
-	LEFT JOIN admin a ON s.admin_id = a.admin_id 
+	LEFT JOIN "admin" a ON s.admin_id = a.admin_id 
 where s.role_id=? and s.admin_id in (` + adminIds + `)`
-	_, err = orm.NewOrm().Raw(sql, roleId).QueryRows(&list)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, roleId).Find(&list).Error
 	return
 }
 
 // AddRoleAdminBatch 批量新增留言版管理员
 func AddRoleAdminBatch(admins []*SysRoleAdmin) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(admins), admins)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.CreateInBatches(admins, utils.MultiAddNum).Error
 	return
 }
 
 // DeleteRoleAdmin 删除管理员和角色的绑定
 func DeleteRoleAdmin(SysRoleAdminId int) (err error) {
 	sql := `DELETE FROM sys_role_admin WHERE id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, SysRoleAdminId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, SysRoleAdminId).Error
 	return
 }
 
@@ -127,13 +127,13 @@ func GetRoleAdminById(SysRoleAdminId int) (item *SysRoleAdmin, err error) {
 FROM
 	sys_role_admin 
 where id=?`
-	err = orm.NewOrm().Raw(sql, SysRoleAdminId).QueryRow(&item)
+	err = global.DbMap[utils.DbNameMaster].Raw(sql, SysRoleAdminId).First(&item).Error
 	return
 }
 
 // GetEnglishAuthRoleAdminList 查询英文权限管理员列表
 func GetEnglishAuthRoleAdminList(condition string, pars []interface{}, startSize, pageSize int) (total int, list []*RoleAdminItem, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				s.id as sys_role_admin_id,
 				a.admin_id,
@@ -151,19 +151,20 @@ func GetEnglishAuthRoleAdminList(condition string, pars []interface{}, startSize
 			FROM
 				sys_role_admin AS s
 			JOIN sys_role AS r ON s.role_id = r.role_id
-			JOIN admin AS a ON s.admin_id = a.admin_id
+			JOIN "admin" AS a ON s.admin_id = a.admin_id
 			WHERE
 				1 = 1 `
 	sql += condition
 	sql += ` GROUP BY s.admin_id `
 
 	totalSQl := `SELECT COUNT(1) total FROM (` + sql + `) z`
-	if err = o.Raw(totalSQl, pars).QueryRow(&total); err != nil {
+	if err = o.Raw(totalSQl, pars...).Scan(&total).Error; err != nil {
 		return
 	}
 
 	sql += ` ORDER BY s.create_time DESC,s.admin_id ASC LIMIT ?,? `
-	_, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&list)
+	pars = append(pars, startSize, pageSize)
+	err = o.Raw(sql, pars...).Find(&list).Error
 	return
 }
 
@@ -172,9 +173,9 @@ func DeleteRoleAdminByAdminIdAndRoleIds(adminId int, roleIds []int) (err error)
 	if len(roleIds) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `DELETE FROM sys_role_admin WHERE admin_id = ? AND role_id IN (` + utils.GetOrmInReplace(len(roleIds)) + `) `
-	_, err = o.Raw(sql, adminId, roleIds).Exec()
+	err = o.Exec(sql, adminId, roleIds).Error
 	return
 }
 
@@ -183,18 +184,18 @@ func CheckEnglishAuthRoleAdminByAdminIds(adminIds []int, roleCodes []string) (li
 	if len(adminIds) == 0 || len(roleCodes) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				s.*
 			FROM
 				sys_role_admin AS s
 			JOIN sys_role AS r ON s.role_id = r.role_id
-			JOIN admin AS a ON s.admin_id = a.admin_id
+			JOIN "admin" AS a ON s.admin_id = a.admin_id
 			WHERE
 				s.admin_id IN (` + utils.GetOrmInReplace(len(adminIds)) + `) AND r.role_type_code IN (` + utils.GetOrmInReplace(len(roleCodes)) + `)
 			GROUP BY
 				s.admin_id`
-	_, err = o.Raw(sql, adminIds, roleCodes).QueryRows(&list)
+	err = o.Raw(sql, adminIds, roleCodes).Find(&list).Error
 	return
 }
 
@@ -209,26 +210,23 @@ func GetAdminEnglishAuthRoleDetail(adminId int, roleCodes []string) (list []*Eng
 	if len(roleCodes) == 0 {
 		return
 	}
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				s.admin_id, r.role_type_code
 			FROM
 				sys_role_admin AS s
 			JOIN sys_role AS r ON s.role_id = r.role_id
-			JOIN admin AS a ON s.admin_id = a.admin_id
+			JOIN "admin" AS a ON s.admin_id = a.admin_id
 			WHERE
 				s.admin_id = ? AND r.role_type_code IN (` + utils.GetOrmInReplace(len(roleCodes)) + `)`
-	_, err = o.Raw(sql, adminId, roleCodes).QueryRows(&list)
+	err = o.Raw(sql, adminId, roleCodes).Find(&list).Error
 	return
 }
 
 // EditEnglishAuthRoleAdmin 编辑管理员英文权限
 func EditEnglishAuthRoleAdmin(adminId int, englishRoleIds []int, roleAdmins []*SysRoleAdmin) (err error) {
-	o := orm.NewOrm()
-	tx, e := o.Begin()
-	if e != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	tx := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = tx.Rollback()
@@ -239,13 +237,13 @@ func EditEnglishAuthRoleAdmin(adminId int, englishRoleIds []int, roleAdmins []*S
 
 	// 删除原绑定关系
 	sql := `DELETE FROM sys_role_admin WHERE admin_id = ? AND role_id IN (` + utils.GetOrmInReplace(len(englishRoleIds)) + `)`
-	_, err = tx.Raw(sql, adminId, englishRoleIds).Exec()
+	err = tx.Exec(sql, adminId, englishRoleIds).Error
 	if err != nil {
 		return
 	}
 
 	// 新增绑定关系
-	_, err = tx.InsertMulti(len(roleAdmins), roleAdmins)
+	err = tx.CreateInBatches(roleAdmins, utils.MultiAddNum).Error
 	return
 }
 

+ 12 - 15
models/system/sys_session.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -18,42 +19,38 @@ type SysSession struct {
 
 // AddSysSession 新增用户登录session信息
 func AddSysSession(item *SysSession) (err error) {
-	o := orm.NewOrm()
-	lastId, err := o.Insert(item)
-	if err != nil {
-		return
-	}
-	item.Id = int(lastId)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }
 
 func GetSysSessionBySysUserId(sysUserId int) (item *SysSession, err error) {
 	sql := `SELECT * FROM sys_session WHERE sys_user_id=? AND expired_time> NOW() ORDER BY expired_time DESC LIMIT 1 `
-	o := orm.NewOrm()
-	err = o.Raw(sql, sysUserId).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, sysUserId).First(&item).Error
 	return
 }
 
 // GetSysSessionByToken 根据token获取session
 func GetSysSessionByToken(token string) (item *SysSession, err error) {
 	sql := `SELECT * FROM sys_session WHERE access_token=? AND expired_time> NOW() ORDER BY expired_time DESC LIMIT 1 `
-	o := orm.NewOrm()
-	err = o.Raw(sql, token).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, token).First(&item).Error
 	return
 }
 
 // ExpiredSysSessionByAdminId 过期掉用户token
 func ExpiredSysSessionByAdminId(adminId int) (err error) {
 	sql := `update sys_session set expired_time = NOW()  WHERE sys_user_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, adminId).Exec()
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, adminId).Error
 	return
 }
 
 // UnBindAdminRecordByUserId 根据系统用户id解除绑定用户关系
 func UnBindAdminRecordByUserId(userId int) (err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	msql := ` UPDATE admin_record SET user_id = 0 WHERE user_id = ? `
-	_, err = o.Raw(msql, userId).Exec()
+	err = o.Exec(msql, userId).Error
 	return
 }

+ 16 - 18
models/system/sys_team.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -21,8 +22,8 @@ type SysTeam struct {
 
 func GetSysTeamCount(groupId int, teamName string) (count int, err error) {
 	sql := `SELECT COUNT(1) AS count FROM sys_group WHERE parent_id=? AND group_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, groupId, teamName).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupId, teamName).Scan(&count).Error
 	return
 }
 
@@ -33,17 +34,14 @@ type SysTeamEditReq struct {
 
 func GetSysTeamByName(teamName string) (item *SysGroup, err error) {
 	sql := `SELECT * FROM sys_group WHERE group_name=? `
-	o := orm.NewOrm()
-	err = o.Raw(sql, teamName).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, teamName).First(&item).Error
 	return
 }
 
 func ModifySysTeam(teamName string, teamId int) (err error) {
-	o := orm.NewOrm()
-	to, err := o.Begin()
-	if err != nil {
-		return
-	}
+	o := global.DbMap[utils.DbNameMaster]
+	to := o.Begin()
 	defer func() {
 		if err != nil {
 			_ = to.Rollback()
@@ -52,9 +50,9 @@ func ModifySysTeam(teamName string, teamId int) (err error) {
 		}
 	}()
 	sql := `UPDATE sys_group SET group_name=? WHERE group_id=? `
-	_, err = to.Raw(sql, teamName, teamId).Exec()
-	sql = `UPDATE admin SET group_name=? WHERE group_id=? `
-	_, err = to.Raw(sql, teamName, teamId).Exec()
+	err = to.Exec(sql, teamName, teamId).Error
+	sql = `UPDATE "admin" SET group_name=? WHERE group_id=? `
+	err = to.Exec(sql, teamName, teamId).Error
 	return
 }
 
@@ -71,14 +69,14 @@ type SysTeamList struct {
 
 func GetSysTeamByDepartmentId(groupId int) (items []*SysTeamList, err error) {
 	sql := `SELECT * FROM sys_group WHERE parent_id=? ORDER BY sort ASC, create_time ASC`
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).QueryRows(&items)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, groupId).Find(&items).Error
 	return
 }
 
 func ClearSysUserTeam(groupId int) (err error) {
-	sql := `UPDATE admin SET group_id=0,group_name='' WHERE group_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, groupId).Exec()
+	sql := `UPDATE "admin" SET group_id=0,group_name='' WHERE group_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, groupId).Error
 	return
 }

+ 30 - 30
models/system/sys_user.go

@@ -1,9 +1,9 @@
 package system
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -68,30 +68,30 @@ type Admin struct {
 
 // Update 更新用户基础信息
 func (item *Admin) Update(cols []string) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Update(item, cols...)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Select(cols).Updates(item).Error
 	return
 }
 
 func CheckSysUser(userName, password string) (item *Admin, err error) {
-	sql := ` SELECT a.*,b.role_type_code FROM admin AS a
+	sql := ` SELECT a.*,b.role_type_code FROM "admin" AS a
 			 INNER JOIN sys_role AS b ON a.role_id=b.role_id WHERE a.admin_name=? AND a.password=? LIMIT 1`
-	o := orm.NewOrm()
-	err = o.Raw(sql, userName, password).QueryRow(&item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, userName, password).First(&item).Error
 	return
 }
 
 func GetSysUserById(sysUserId int) (item *Admin, err error) {
-	sql := `SELECT * FROM admin WHERE admin_id=? LIMIT 1`
-	o := orm.NewOrm()
-	err = o.Raw(sql, sysUserId).QueryRow(&item)
+	sql := `SELECT * FROM "admin" WHERE admin_id=?`
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, sysUserId).First(&item).Error
 	return
 }
 
 func ModifyPwd(sysUserId int, newPwd string) (err error) {
-	sql := `UPDATE admin SET password=?,last_updated_time=NOW() WHERE admin_id=? `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, newPwd, sysUserId).Exec()
+	sql := `UPDATE "admin" SET password=?,last_updated_time=NOW() WHERE admin_id=? `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Exec(sql, newPwd, sysUserId).Error
 	return
 }
 
@@ -114,9 +114,9 @@ func GetAdminListByIdList(idList []int) (items []*Admin, err error) {
 	if lenNum <= 0 {
 		return
 	}
-	sql := `SELECT * FROM admin WHERE admin_id in (` + utils.GetOrmInReplace(lenNum) + `) and enabled=1 `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, idList).QueryRows(&items)
+	sql := `SELECT * FROM "admin" WHERE admin_id in (` + utils.GetOrmInReplace(lenNum) + `) and enabled=1 `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, idList).Find(&items).Error
 	return
 }
 
@@ -126,21 +126,21 @@ func GetAdminListByIdListWithoutEnable(idList []int) (items []*Admin, err error)
 	if lenNum <= 0 {
 		return
 	}
-	sql := `SELECT * FROM admin WHERE admin_id in (` + utils.GetOrmInReplace(lenNum) + `) `
-	o := orm.NewOrm()
-	_, err = o.Raw(sql, idList).QueryRows(&items)
+	sql := `SELECT * FROM "admin" WHERE admin_id in (` + utils.GetOrmInReplace(lenNum) + `) `
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Raw(sql, idList).Find(&items).Error
 	return
 }
 
 func (item *Admin) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
-	o := orm.NewOrm()
-	sql := fmt.Sprintf(`SELECT COUNT(1) FROM admin WHERE 1=1 %s`, condition)
-	err = o.Raw(sql, pars).QueryRow(&count)
+	o := global.DbMap[utils.DbNameMaster]
+	sql := fmt.Sprintf(`SELECT COUNT(1) FROM "admin" WHERE 1=1 %s`, condition)
+	err = o.Raw(sql, pars...).Scan(&count).Error
 	return
 }
 
 func (item *Admin) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*Admin, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -149,14 +149,14 @@ func (item *Admin) GetItemsByCondition(condition string, pars []interface{}, fie
 	if orderRule != "" {
 		order = ` ORDER BY ` + orderRule
 	}
-	sql := fmt.Sprintf(`SELECT %s FROM admin WHERE 1=1 %s %s`, fields, condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	sql := fmt.Sprintf(`SELECT %s FROM "admin" WHERE 1=1 %s %s`, fields, condition, order)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
 // GetSysUserByMobile 手机号获取用户
 func GetSysUserByMobile(mobile string) (item *Admin, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.*, b.role_type_code
 			FROM
@@ -165,13 +165,13 @@ func GetSysUserByMobile(mobile string) (item *Admin, err error) {
 			WHERE
 				a.mobile = ?
 			LIMIT 1`
-	err = o.Raw(sql, mobile).QueryRow(&item)
+	err = o.Raw(sql, mobile).First(&item).Error
 	return
 }
 
 // GetSysUserByEmail 邮箱获取用户
 func GetSysUserByEmail(email string) (item *Admin, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.*, b.role_type_code
 			FROM
@@ -180,13 +180,13 @@ func GetSysUserByEmail(email string) (item *Admin, err error) {
 			WHERE
 				a.email = ?
 			LIMIT 1`
-	err = o.Raw(sql, email).QueryRow(&item)
+	err = o.Raw(sql, email).First(&item).Error
 	return
 }
 
 // GetSysUserByAdminName 账号获取用户
 func GetSysUserByAdminName(adminName string) (item *Admin, err error) {
-	o := orm.NewOrm()
+	o := global.DbMap[utils.DbNameMaster]
 	sql := `SELECT
 				a.*, b.role_type_code
 			FROM
@@ -195,6 +195,6 @@ func GetSysUserByAdminName(adminName string) (item *Admin, err error) {
 			WHERE
 				a.admin_name = ?
 			LIMIT 1`
-	err = o.Raw(sql, adminName).QueryRow(&item)
+	err = o.Raw(sql, adminName).First(&item).Error
 	return
 }

+ 4 - 3
models/system/sys_user_login_record.go

@@ -1,7 +1,8 @@
 package system
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -16,7 +17,7 @@ type SysUserLoginRecord struct {
 
 // AddSysUserLoginRecord 新增登录记录
 func AddSysUserLoginRecord(item *SysUserLoginRecord) (err error) {
-	o := orm.NewOrm()
-	_, err = o.Insert(item)
+	o := global.DbMap[utils.DbNameMaster]
+	err = o.Create(item).Error
 	return
 }

+ 8 - 15
models/yb/price_driven.go

@@ -1,7 +1,8 @@
 package yb
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -33,19 +34,15 @@ func (priceDrivenInfo *PriceDriven) TableName() string {
 
 // Add 新增
 func (priceDrivenInfo *PriceDriven) Add() (err error) {
-	o := orm.NewOrmUsingDB("weekly")
-	id, err := o.Insert(priceDrivenInfo)
-	if err != nil {
-		return
-	}
-	priceDrivenInfo.PriceDrivenId = int(id)
+	o := global.DbMap[utils.DbNameWeekly]
+	err = o.Create(priceDrivenInfo).Error
 	return
 }
 
 // Update 更新
 func (priceDrivenInfo *PriceDriven) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("weekly")
-	_, err = o.Update(priceDrivenInfo, cols...)
+	o := global.DbMap[utils.DbNameWeekly]
+	err = o.Select(cols).Updates(priceDrivenInfo).Error
 	return
 }
 
@@ -71,11 +68,7 @@ func (priceDrivenSaveLogInfo *PriceDrivenSaveLog) TableName() string {
 
 // Add 新增保存记录
 func (priceDrivenSaveLogInfo *PriceDrivenSaveLog) Add() (err error) {
-	o := orm.NewOrmUsingDB("weekly")
-	lastId, err := o.Insert(priceDrivenSaveLogInfo)
-	if err != nil {
-		return
-	}
-	priceDrivenSaveLogInfo.PriceDrivenId = int(lastId)
+	o := global.DbMap[utils.DbNameWeekly]
+	err = o.Create(priceDrivenSaveLogInfo).Error
 	return
 }

+ 4 - 3
models/yb/price_driven_tag.go

@@ -1,7 +1,8 @@
 package yb
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -22,8 +23,8 @@ func (priceDrivenTag *PriceDrivenTag) TableName() string {
 
 // GetPriceDrivenTagList 获取价格驱动标签列表
 func GetPriceDrivenTagList() (list []*PriceDrivenTag, err error) {
-	o := orm.NewOrmUsingDB("weekly")
+	o := global.DbMap[utils.DbNameWeekly]
 	sql := `SELECT * FROM yb_price_driven_tag`
-	_, err = o.Raw(sql).QueryRows(&list)
+	err = o.Raw(sql).Find(&list).Error
 	return
 }

+ 6 - 9
models/yb/yb_community_question_process.go

@@ -1,7 +1,8 @@
 package yb
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 	"time"
 )
 
@@ -33,12 +34,8 @@ func (item *CommunityQuestionProcess) TableName() string {
 }
 
 func (item *CommunityQuestionProcess) Create() (err error) {
-	o := orm.NewOrmUsingDB("weekly")
-	id, err := o.Insert(item)
-	if err != nil {
-		return
-	}
-	item.Id = int(id)
+	o := global.DbMap[utils.DbNameWeekly]
+	err = o.Create(item).Error
 	return
 }
 
@@ -61,8 +58,8 @@ type CommunityQuestionProcessItem struct {
 // GetCommunityQuestionProcessItemList 根据问答ID获取流程
 func GetCommunityQuestionProcessItemList(questionId int) (list []*CommunityQuestionProcessItem, err error) {
 	list = make([]*CommunityQuestionProcessItem, 0)
-	o := orm.NewOrmUsingDB("weekly")
+	o := global.DbMap[utils.DbNameWeekly]
 	sql := `SELECT * FROM yb_community_question_process WHERE community_question_id = ? ORDER BY create_time DESC`
-	_, err = o.Raw(sql, questionId).QueryRows(&list)
+	err = o.Raw(sql, questionId).Find(&list).Error
 	return
 }

+ 5 - 5
models/yb/yb_poster_resource.go

@@ -1,9 +1,9 @@
 package yb
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"strings"
 	"time"
 )
@@ -19,7 +19,7 @@ type YbPosterResource struct {
 }
 
 func (m *YbPosterResource) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*YbPosterResource, err error) {
-	o := orm.NewOrmUsingDB("weekly")
+	o := global.DbMap[utils.DbNameWeekly]
 	fields := strings.Join(fieldArr, ",")
 	if len(fieldArr) == 0 {
 		fields = `*`
@@ -29,7 +29,7 @@ func (m *YbPosterResource) GetItemsByCondition(condition string, pars []interfac
 		order = ` ORDER BY ` + orderRule
 	}
 	sql := fmt.Sprintf(`SELECT %s FROM yb_poster_resource WHERE 1=1 %s %s`, fields, condition, order)
-	_, err = o.Raw(sql, pars).QueryRows(&items)
+	err = o.Raw(sql, pars...).Find(&items).Error
 	return
 }
 
@@ -38,8 +38,8 @@ func (m *YbPosterResource) RemovePosters(ids []int) (err error) {
 	if num == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("weekly")
+	o := global.DbMap[utils.DbNameWeekly]
 	sql := fmt.Sprintf(`DELETE FROM yb_poster_resource WHERE id IN (%s) LIMIT %d`, utils.GetOrmInReplace(num), num)
-	_, err = o.Raw(sql, ids).Exec()
+	err = o.Exec(sql, ids).Error
 	return
 }