Roc 1 maand geleden
bovenliggende
commit
a5419a2d5b

+ 40 - 41
models/data_stat/edb_info_delete_log.go

@@ -1,49 +1,49 @@
 package data_stat
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_index_lib/global"
 )
 
 // EdbInfoDeleteLog 指标删除日志表
 type EdbInfoDeleteLog struct {
-	Id                 uint64  `orm:"column(id);pk"`
-	EdbInfoId          int     `description:"指标ID"`
-	EdbInfoType        int     `description:"指标类型,0:普通指标,1:预测指标"`
-	SourceName         string  `description:"来源名称"`
-	Source             int     `description:"来源id"`
-	EdbCode            string  `description:"指标编码"`
-	EdbName            string  `description:"指标名称"`
-	EdbNameEn          string  `description:"英文指标名称"`
-	EdbNameSource      string  `description:"指标名称来源"`
-	Frequency          string  `description:"频率"`
-	Unit               string  `description:"单位"`
-	UnitEn             string  `description:"英文单位"`
-	StartDate          string  `description:"起始日期"`
-	EndDate            string  `description:"终止日期"`
-	SysUserId          int     `description:"创建人ID"`
-	SysUserRealName    string  `description:"创建人姓名"`
-	UniqueCode         string  `description:"指标唯一编码"`
-	EdbCreateTime      string  `description:"指标创建时间"`
-	EdbModifyTime      string  `description:"指标修改时间"`
-	CreateTime         string  `description:"创建时间即删除时间"`
-	MinValue           float64 `description:"指标最小值"`
-	MaxValue           float64 `description:"指标最大值"`
-	CalculateFormula   string  `description:"计算公式"`
-	EdbType            int     `description:"指标类型:1:基础指标,2:计算指标"`
-	LatestDate         string  `description:"数据最新日期"`
-	LatestValue        float64 `description:"数据最新值"`
-	MoveType           int     `description:"移动方式:1:领先(默认),2:滞后"`
-	MoveFrequency      string  `description:"移动频度"`
-	NoUpdate           int8    `description:"是否停止更新,0:继续更新;1:停止更新"`
-	ChartImage         string  `description:"图表图片"`
-	Calendar           string  `description:"公历/农历" orm:"default(公历);"`
-	DataDateType       string  `orm:"column(data_date_type);size(255);null;default(交易日)"`
-	ManualSave         int     `description:"是否有手动保存过上下限: 0-否; 1-是"`
-	TerminalCode       string  `description:"终端编码,用于配置在机器上"`
-	DelSysUserId       int     `description:"删除人ID"`
-	DelSysUserRealName string  `description:"删除人姓名"`
-	DataUpdateTime     string  `description:"最近一次数据发生变化的时间"`
-	ErDataUpdateDate   string  `description:"本次更新,数据发生变化的最早日期"`
+	Id                 uint64  `gorm:"primaryKey;autoIncrement;column:id"             description:"记录ID"`
+	EdbInfoId          int     `gorm:"column:edb_info_id"                           description:"指标ID"`
+	EdbInfoType        int     `gorm:"column:edb_info_type"                         description:"指标类型,0:普通指标,1:预测指标"`
+	SourceName         string  `gorm:"column:source_name"                           description:"来源名称"`
+	Source             int     `gorm:"column:source"                               description:"来源id"`
+	EdbCode            string  `gorm:"column:edb_code"                             description:"指标编码"`
+	EdbName            string  `gorm:"column:edb_name"                             description:"指标名称"`
+	EdbNameEn          string  `gorm:"column:edb_name_en"                          description:"英文指标名称"`
+	EdbNameSource      string  `gorm:"column:edb_name_source"                      description:"指标名称来源"`
+	Frequency          string  `gorm:"column:frequency"                           description:"频率"`
+	Unit               string  `gorm:"column:unit"                                description:"单位"`
+	UnitEn             string  `gorm:"column:unit_en"                             description:"英文单位"`
+	StartDate          string  `gorm:"column:start_date"                          description:"起始日期"`
+	EndDate            string  `gorm:"column:end_date"                            description:"终止日期"`
+	SysUserId          int     `gorm:"column:sys_user_id"                         description:"创建人ID"`
+	SysUserRealName    string  `gorm:"column:sys_user_real_name"                  description:"创建人姓名"`
+	UniqueCode         string  `gorm:"column:unique_code"                         description:"指标唯一编码"`
+	EdbCreateTime      string  `gorm:"column:edb_create_time"                     description:"指标创建时间"`
+	EdbModifyTime      string  `gorm:"column:edb_modify_time"                     description:"指标修改时间"`
+	CreateTime         string  `gorm:"column:create_time"                         description:"创建时间即删除时间"`
+	MinValue           float64 `gorm:"column:min_value"                           description:"指标最小值"`
+	MaxValue           float64 `gorm:"column:max_value"                           description:"指标最大值"`
+	CalculateFormula   string  `gorm:"column:calculate_formula"                   description:"计算公式"`
+	EdbType            int     `gorm:"column:edb_type"                            description:"指标类型:1:基础指标,2:计算指标"`
+	LatestDate         string  `gorm:"column:latest_date"                         description:"数据最新日期"`
+	LatestValue        float64 `gorm:"column:latest_value"                        description:"数据最新值"`
+	MoveType           int     `gorm:"column:move_type"                           description:"移动方式:1:领先(默认),2:滞后"`
+	MoveFrequency      string  `gorm:"column:move_frequency"                      description:"移动频度"`
+	NoUpdate           int8    `gorm:"column:no_update"                           description:"是否停止更新,0:继续更新;1:停止更新"`
+	ChartImage         string  `gorm:"column:chart_image"                         description:"图表图片"`
+	Calendar           string  `gorm:"column:calendar;default:公历"               description:"公历/农历"`
+	DataDateType       string  `gorm:"column:data_date_type;size:255;null;default:交易日" description:"数据日期类型"`
+	ManualSave         int     `gorm:"column:manual_save"                         description:"是否有手动保存过上下限: 0-否; 1-是"`
+	TerminalCode       string  `gorm:"column:terminal_code"                       description:"终端编码,用于配置在机器上"`
+	DelSysUserId       int     `gorm:"column:del_sys_user_id"                     description:"删除人ID"`
+	DelSysUserRealName string  `gorm:"column:del_sys_user_real_name"              description:"删除人姓名"`
+	DataUpdateTime     string  `gorm:"column:data_update_time"                    description:"最近一次数据发生变化的时间"`
+	ErDataUpdateDate   string  `gorm:"column:er_data_update_date"                 description:"本次更新,数据发生变化的最早日期"`
 }
 
 type EdbInfoDeleteLogNum struct {
@@ -53,8 +53,7 @@ type EdbInfoDeleteLogNum struct {
 }
 
 func GetEdbDeleteLogNumByCreateTime(startDate, endDate string) (item []*EdbInfoDeleteLogNum, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT source, terminal_code, count(*) as num FROM edb_info_delete_log WHERE create_time >= ? and create_time < ? group by source, terminal_code `
-	_, err = o.Raw(sql, startDate, endDate).QueryRows(&item)
+	err = global.DEFAULT_DB.Raw(sql, startDate, endDate).Scan(&item).Error
 	return
 }

+ 36 - 37
models/data_stat/edb_info_update_log.go

@@ -1,65 +1,64 @@
 package data_stat
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_index_lib/global"
 	"time"
 )
 
 // EdbInfoUpdateLog 指标更新/刷新日志列表
 type EdbInfoUpdateLog struct {
-	Id                     uint64    `orm:"column(id);pk"`
-	EdbInfoId              int       `description:"指标ID"`
-	SourceName             string    `description:"来源名称"`
-	Source                 int       `description:"来源id"`
-	EdbCode                string    `description:"指标编码"`
-	EdbName                string    `description:"指标名称"`
-	EdbNameSource          string    `description:"指标名称来源"`
-	Frequency              string    `description:"频率"`
-	Unit                   string    `description:"单位"`
-	StartDate              string    `description:"起始日期"`
-	EndDate                string    `description:"终止日期"`
-	SysUserId              int       `description:"创建人ID"`
-	SysUserRealName        string    `description:"创建人姓名"`
-	UniqueCode             string    `description:"指标唯一编码"`
-	EdbCreateTime          time.Time `description:"指标创建时间"`
-	EdbModifyTime          time.Time `description:"指标修改时间"`
-	CreateTime             time.Time `description:"创建时间"`
-	UpdateSysUserId        int       `description:"变更人ID"`
-	UpdateSysUserRealName  string    `description:"变更人姓名"`
-	LatestDate             string    `description:"数据最新日期"`
-	LatestValue            float64   `description:"数据最新值"`
-	TerminalCode           string    `description:"终端编码,用于配置在机器上"`
-	ErDataUpdateDate       string    `description:"本次更新,数据发生变化的最早日期"`
-	UpdateResult           int       `description:"本次刷新操作结果:1成功,2失败"`
-	UpdateFailedReason     string    `description:"刷新失败原因"`
-	DataUpdateResult       int       `description:"数据更新结果:1成功,2失败"`
-	DataUpdateFailedReason string    `description:"数据未正常更新原因"`
-	DataUpdateTime         string    `description:"数据更新时间"`
-	IsSourceRefresh        int       `description:"是否为终端刷新到数据源的刷新操作:0否,1是"`
-	UpdateType             int       `description:"变更类型,0:数据明细变更,1:基础信息变更, 2:新增指标"`
+	Id                     uint64    `gorm:"primaryKey;autoIncrement;column:id"                        description:"记录ID"`
+	EdbInfoId              int       `gorm:"column:edb_info_id"                                      description:"指标ID"`
+	SourceName             string    `gorm:"column:source_name"                                     description:"来源名称"`
+	Source                 int       `gorm:"column:source"                                          description:"来源id"`
+	EdbCode                string    `gorm:"column:edb_code"                                        description:"指标编码"`
+	EdbName                string    `gorm:"column:edb_name"                                        description:"指标名称"`
+	EdbNameSource          string    `gorm:"column:edb_name_source"                                 description:"指标名称来源"`
+	Frequency              string    `gorm:"column:frequency"                                       description:"频率"`
+	Unit                   string    `gorm:"column:unit"                                            description:"单位"`
+	StartDate              string    `gorm:"column:start_date"                                      description:"起始日期"`
+	EndDate                string    `gorm:"column:end_date"                                        description:"终止日期"`
+	SysUserId              int       `gorm:"column:sys_user_id"                                     description:"创建人ID"`
+	SysUserRealName        string    `gorm:"column:sys_user_real_name"                              description:"创建人姓名"`
+	UniqueCode             string    `gorm:"column:unique_code"                                     description:"指标唯一编码"`
+	EdbCreateTime          time.Time `gorm:"column:edb_create_time"                                 description:"指标创建时间"`
+	EdbModifyTime          time.Time `gorm:"column:edb_modify_time"                                 description:"指标修改时间"`
+	CreateTime             time.Time `gorm:"column:create_time"                                     description:"创建时间"`
+	UpdateSysUserId        int       `gorm:"column:update_sys_user_id"                              description:"变更人ID"`
+	UpdateSysUserRealName  string    `gorm:"column:update_sys_user_real_name"                       description:"变更人姓名"`
+	LatestDate             string    `gorm:"column:latest_date"                                     description:"数据最新日期"`
+	LatestValue            float64   `gorm:"column:latest_value"                                    description:"数据最新值"`
+	TerminalCode           string    `gorm:"column:terminal_code"                                   description:"终端编码,用于配置在机器上"`
+	ErDataUpdateDate       string    `gorm:"column:er_data_update_date"                             description:"本次更新,数据发生变化的最早日期"`
+	UpdateResult           int       `gorm:"column:update_result"                                   description:"本次刷新操作结果:1成功,2失败"`
+	UpdateFailedReason     string    `gorm:"column:update_failed_reason"                            description:"刷新失败原因"`
+	DataUpdateResult       int       `gorm:"column:data_update_result"                              description:"数据更新结果:1成功,2失败"`
+	DataUpdateFailedReason string    `gorm:"column:data_update_failed_reason"                       description:"数据未正常更新原因"`
+	DataUpdateTime         string    `gorm:"column:data_update_time"                                description:"数据更新时间"`
+	IsSourceRefresh        int       `gorm:"column:is_source_refresh"                               description:"是否为终端刷新到数据源的刷新操作:0否,1是"`
+	UpdateType             int       `gorm:"column:update_type"                                     description:"变更类型,0:数据明细变更,1:基础信息变更, 2:新增指标"`
 }
 
 func AddEdbUpdateLog(item *EdbInfoUpdateLog) (lastId int64, err error) {
-	o := orm.NewOrm()
-	lastId, err = o.Insert(item)
+	err = global.DEFAULT_DB.Create(item).Error
 	return
 }
 
 // GetEdbUpdateLogByCondition 获取指标更新记录
 func GetEdbUpdateLogByCondition(condition string, pars []interface{}) (item []*EdbInfoUpdateLog, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_info_update_log WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = global.DEFAULT_DB.Raw(sql, pars).Find(&item).Error
+
 	return
 }
 
 // GetEdbUpdateSourceLogByCreateDate 获取指标终端更新记录
 func GetEdbUpdateSourceLogByCreateDate(source int, startDate, endDate string) (item []*EdbInfoUpdateLog, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_info_update_log WHERE source = ? and create_time >= ? and create_time < ? and is_source_refresh =1 order by data_update_result asc, id desc`
-	_, err = o.Raw(sql, source, startDate, endDate).QueryRows(&item)
+	err = global.DEFAULT_DB.Raw(sql, source, startDate, endDate).Find(&item).Error
+
 	return
 }

+ 48 - 45
models/data_stat/edb_info_update_stat.go

@@ -1,55 +1,63 @@
 package data_stat
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_index_lib/global"
+	"eta/eta_index_lib/utils"
 	"time"
 )
 
 // EdbInfoUpdateStat 指标更新/刷新 汇总表(数据源明细表)
 type EdbInfoUpdateStat struct {
-	Id                     uint64    `orm:"column(id);pk"`
-	EdbInfoId              int       `description:"指标ID"`
-	SourceName             string    `description:"来源名称"`
-	Source                 int       `description:"来源id"`
-	EdbCode                string    `description:"指标编码"`
-	EdbName                string    `description:"指标名称"`
-	EdbNameSource          string    `description:"指标名称来源"`
-	Frequency              string    `description:"频率"`
-	Unit                   string    `description:"单位"`
-	StartDate              string    `description:"起始日期"`
-	EndDate                string    `description:"终止日期"`
-	SysUserId              int       `description:"创建人ID"`
-	SysUserRealName        string    `description:"创建人姓名"`
-	UniqueCode             string    `description:"指标唯一编码"`
-	EdbCreateTime          time.Time `description:"指标创建时间"`
-	EdbModifyTime          time.Time `description:"指标修改时间"`
-	CreateTime             time.Time `description:"记录创建时间"`
-	LatestDate             string    `description:"数据最新日期"`
-	LatestValue            float64   `description:"数据最新值"`
-	TerminalCode           string    `description:"终端编码,用于配置在机器上"`
-	ErDataUpdateDate       string    `description:"本次更新,数据发生变化的最早日期"`
-	DataUpdateResult       int       `description:"数据更新结果:1成功,2失败"`
-	DataUpdateFailedReason string    `description:"数据未正常更新原因"`
-	DataUpdateTime         string    `description:"数据更新时间"`
-	UpdateResult           int       `description:"本次刷新操作结果:1成功,2失败"`
-	UpdateFailedReason     string    `description:"刷新失败原因"`
-	UpdateTime             string    `description:"刷新时间"`
-	ModifyTime             time.Time `description:"修改时间"`
-	IsAdd                  int       `description:"是否是当日新增的指标:1是,2否"`
-	NeedRefresh            int       `description:"今日是否需要定时刷新,1需要,0不需要"`
-	HasRefresh             int       `description:"今日是否发起刷新服务,1是,0否"`
+	Id                     uint64    `gorm:"primaryKey;autoIncrement;column:id" description:"ID"`
+	EdbInfoId              int       `gorm:"column:edb_info_id" description:"指标ID"`
+	SourceName             string    `gorm:"column:source_name" description:"来源名称"`
+	Source                 int       `gorm:"column:source" description:"来源id"`
+	EdbCode                string    `gorm:"column:edb_code" description:"指标编码"`
+	EdbName                string    `gorm:"column:edb_name" description:"指标名称"`
+	EdbNameSource          string    `gorm:"column:edb_name_source" description:"指标名称来源"`
+	Frequency              string    `gorm:"column:frequency" description:"频率"`
+	Unit                   string    `gorm:"column:unit" description:"单位"`
+	StartDate              string    `gorm:"column:start_date" description:"起始日期"`
+	EndDate                string    `gorm:"column:end_date" description:"终止日期"`
+	SysUserId              int       `gorm:"column:sys_user_id" description:"创建人ID"`
+	SysUserRealName        string    `gorm:"column:sys_user_real_name" description:"创建人姓名"`
+	UniqueCode             string    `gorm:"column:unique_code" description:"指标唯一编码"`
+	EdbCreateTime          time.Time `gorm:"column:edb_create_time" description:"指标创建时间"`
+	EdbModifyTime          time.Time `gorm:"column:edb_modify_time" description:"指标修改时间"`
+	CreateTime             time.Time `gorm:"column:create_time" description:"记录创建时间"`
+	LatestDate             string    `gorm:"column:latest_date" description:"数据最新日期"`
+	LatestValue            float64   `gorm:"column:latest_value" description:"数据最新值"`
+	TerminalCode           string    `gorm:"column:terminal_code" description:"终端编码,用于配置在机器上"`
+	ErDataUpdateDate       string    `gorm:"column:er_data_update_date" description:"本次更新,数据发生变化的最早日期"`
+	DataUpdateResult       int       `gorm:"column:data_update_result" description:"数据更新结果:1成功,2失败"`
+	DataUpdateFailedReason string    `gorm:"column:data_update_failed_reason" description:"数据未正常更新原因"`
+	DataUpdateTime         string    `gorm:"column:data_update_time" description:"数据更新时间"`
+	UpdateResult           int       `gorm:"column:update_result" description:"本次刷新操作结果:1成功,2失败"`
+	UpdateFailedReason     string    `gorm:"column:update_failed_reason" description:"刷新失败原因"`
+	UpdateTime             string    `gorm:"column:update_time" description:"刷新时间"`
+	ModifyTime             time.Time `gorm:"column:modify_time" description:"修改时间"`
+	IsAdd                  int       `gorm:"column:is_add" description:"是否是当日新增的指标:1是,2否"`
+	NeedRefresh            int       `gorm:"column:need_refresh" description:"今日是否需要定时刷新,1需要,0不需要"`
+	HasRefresh             int       `gorm:"column:has_refresh" description:"今日是否发起刷新服务,1是,0否"`
 }
 
 // Add 新增
 func (r *EdbInfoUpdateStat) Add(list []*EdbInfoUpdateStat) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(list), list)
+	err = global.DEFAULT_DB.CreateInBatches(list, utils.MultiAddNum).Error
+
 	return
 }
 
 // UpdateEdbUpdateStatMulti 批量更新
 func UpdateEdbUpdateStatMulti(list []*EdbInfoUpdateStat) (err error) {
-	o := orm.NewOrm()
+	o := global.DEFAULT_DB.Begin()
+	defer func() {
+		if err != nil {
+			_ = o.Rollback()
+		} else {
+			_ = o.Commit()
+		}
+	}()
 	sql := `UPDATE edb_info_update_stat 
 SET 
 edb_name = ?,
@@ -75,29 +83,24 @@ update_failed_reason = ?,
 update_time = ?
 WHERE
 	id = ?`
-	p, err := o.Raw(sql).Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
+
 	for _, v := range list {
-		_, err = p.Exec(v.EdbName, v.EdbNameSource, v.Frequency, v.Unit, v.StartDate, v.EndDate, v.EdbModifyTime, v.LatestDate, v.LatestValue, v.TerminalCode, v.ModifyTime, v.ErDataUpdateDate, v.IsAdd, v.NeedRefresh, v.HasRefresh, v.DataUpdateResult, v.DataUpdateFailedReason, v.DataUpdateTime, v.UpdateResult, v.UpdateFailedReason, v.UpdateTime, v.Id)
+		err = o.Exec(sql, v.EdbName, v.EdbNameSource, v.Frequency, v.Unit, v.StartDate, v.EndDate, v.EdbModifyTime, v.LatestDate, v.LatestValue, v.TerminalCode, v.ModifyTime, v.ErDataUpdateDate, v.IsAdd, v.NeedRefresh, v.HasRefresh, v.DataUpdateResult, v.DataUpdateFailedReason, v.DataUpdateTime, v.UpdateResult, v.UpdateFailedReason, v.UpdateTime, v.Id).Error
 		if err != nil {
 			return
 		}
 	}
+
 	return
 }
 
 // GetEdbUpdateStatByCondition 获取指标更新汇总记录
 func GetEdbUpdateStatByCondition(condition string, pars []interface{}) (item []*EdbInfoUpdateStat, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_info_update_stat WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = global.DEFAULT_DB.Raw(sql, pars).Find(&item).Error
+
 	return
 }

+ 30 - 29
models/data_stat/edb_source_stat.go

@@ -1,49 +1,56 @@
 package data_stat
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta/eta_index_lib/global"
+	"eta/eta_index_lib/utils"
 	"time"
 )
 
 // EdbSourceStat 数据源统计表
 type EdbSourceStat struct {
-	Id                int       `orm:"column(id);pk"`
-	SourceName        string    `description:"来源名称"`
-	Source            int       `description:"来源id"`
-	TerminalCode      string    `description:"终端编码,用于配置在机器上"`
-	EdbNum            int       `description:"指标总数"`
-	EdbNewNum         int       `description:"今日新增指标数"`
-	EdbDelNum         int       `description:"今日删除指标数"`
-	NeedRefreshNum    int       `description:"今日需刷新指标"`
-	HasRefreshNum     int       `description:"今日发起刷新任务指标数"`
-	UpdateSuccessNum  int       `description:"今日已更新成功指标数"`
-	UpdateFailedNum   int       `description:"今日已更新失败指标数"`
-	RefreshSuccessNum int       `description:"今日已刷新成功指标数"`
-	RefreshFailedNum  int       `description:"今日已刷新失败指标数"`
-	CreateTime        time.Time `description:"创建时间"`
-	ModifyTime        time.Time `description:"修改时间"`
+	Id                int       `gorm:"primaryKey;autoIncrement;column:id" description:"ID"`
+	SourceName        string    `gorm:"column:source_name" description:"来源名称"`
+	Source            int       `gorm:"column:source" description:"来源id"`
+	TerminalCode      string    `gorm:"column:terminal_code" description:"终端编码,用于配置在机器上"`
+	EdbNum            int       `gorm:"column:edb_num" description:"指标总数"`
+	EdbNewNum         int       `gorm:"column:edb_new_num" description:"今日新增指标数"`
+	EdbDelNum         int       `gorm:"column:edb_del_num" description:"今日删除指标数"`
+	NeedRefreshNum    int       `gorm:"column:need_refresh_num" description:"今日需刷新指标"`
+	HasRefreshNum     int       `gorm:"column:has_refresh_num" description:"今日发起刷新任务指标数"`
+	UpdateSuccessNum  int       `gorm:"column:update_success_num" description:"今日已更新成功指标数"`
+	UpdateFailedNum   int       `gorm:"column:update_failed_num" description:"今日已更新失败指标数"`
+	RefreshSuccessNum int       `gorm:"column:refresh_success_num" description:"今日已刷新成功指标数"`
+	RefreshFailedNum  int       `gorm:"column:refresh_failed_num" description:"今日已刷新失败指标数"`
+	CreateTime        time.Time `gorm:"column:create_time" description:"创建时间"`
+	ModifyTime        time.Time `gorm:"column:modify_time" description:"修改时间"`
 }
 
 func GetEdbSourceStatByCondition(condition string, pars []interface{}) (item []*EdbSourceStat, err error) {
-	o := orm.NewOrm()
 	sql := ` SELECT * FROM edb_source_stat WHERE 1=1 `
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	err = global.DEFAULT_DB.Raw(sql, pars...).Scan(&item).Error
 	return
 }
 
 // Add 新增
 func (r *EdbSourceStat) Add(list []*EdbSourceStat) (err error) {
-	o := orm.NewOrm()
-	_, err = o.InsertMulti(len(list), list)
+	err = global.DEFAULT_DB.CreateInBatches(list, utils.MultiAddNum).Error
+
 	return
 }
 
 // UpdateEdbSourceStatMulti 批量更新
 func UpdateEdbSourceStatMulti(list []*EdbSourceStat) (err error) {
-	o := orm.NewOrm()
+	o := global.DEFAULT_DB.Begin()
+	defer func() {
+		if err != nil {
+			_ = o.Rollback()
+		} else {
+			_ = o.Commit()
+		}
+	}()
 	sql := `UPDATE edb_source_stat 
 SET 
 edb_num=?,                              
@@ -58,18 +65,12 @@ refresh_failed_num=?,
 modify_time=?                           
 WHERE
 	id = ?`
-	p, err := o.Raw(sql).Prepare()
-	if err != nil {
-		return
-	}
-	defer func() {
-		_ = p.Close() // 别忘记关闭 statement
-	}()
 	for _, v := range list {
-		_, err = p.Exec(v.EdbNum, v.EdbNewNum, v.EdbDelNum, v.NeedRefreshNum, v.HasRefreshNum, v.UpdateSuccessNum, v.UpdateFailedNum, v.RefreshSuccessNum, v.RefreshFailedNum, v.ModifyTime, v.Id)
+		err = o.Exec(sql, v.EdbNum, v.EdbNewNum, v.EdbDelNum, v.NeedRefreshNum, v.HasRefreshNum, v.UpdateSuccessNum, v.UpdateFailedNum, v.RefreshSuccessNum, v.RefreshFailedNum, v.ModifyTime, v.Id).Error
 		if err != nil {
 			return
 		}
 	}
+
 	return
 }