Quellcode durchsuchen

修改edb_refresh数据库

genlong vor 5 Monaten
Ursprung
Commit
4fef23037f

+ 81 - 36
models/data_manage/edb_refresh/edb_refresh_config.go

@@ -2,8 +2,8 @@ package edb_refresh
 
 import (
 	"errors"
+	"eta_gn/eta_api/global"
 	"eta_gn/eta_api/utils"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
@@ -32,13 +32,14 @@ func (m *EdbRefreshConfig) Add() (err error) {
 		err = errors.New("该配置已存在")
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	lastId, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.EdbRefreshConfigId = int(lastId)
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err := o.Insert(m)
+	//if err != nil {
+	//	return
+	//}
+	//m.EdbRefreshConfigId = int(lastId)
 
+	err = global.DmSQL["data"].Create(m).Error
 	return
 }
 
@@ -50,8 +51,9 @@ func (m *EdbRefreshConfig) Add() (err error) {
 // @param cols []string
 // @return err error
 func (m *EdbRefreshConfig) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(m, cols...)
+	err = global.DmSQL["data"].Select(cols).Updates(m).Error
 	return
 }
 
@@ -62,8 +64,11 @@ func (m *EdbRefreshConfig) Update(cols []string) (err error) {
 // @datetime 2023-12-14 16:11:10
 // @return err error
 func (m *EdbRefreshConfig) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(m)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(m)
+
+	sql := ` DELETE FROM edb_refresh_config WHERE edb_refresh_config_id=?`
+	err = global.DmSQL["data"].Exec(sql, m.EdbRefreshConfigId).Error
 	return
 }
 
@@ -79,11 +84,15 @@ func (m *EdbRefreshConfig) Delete() (err error) {
 // @return item *EdbRefreshConfig
 // @return err error
 func GetEdbRefreshConfigListByCondition(refreshFrequency, refreshTime string, refreshFrequencyDay, refreshAllData, refreshDataNum int) (item *EdbRefreshConfig, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM edb_refresh_config
+	//     WHERE refresh_frequency = ? AND refresh_frequency_day = ? AND refresh_time = ? AND refresh_all_data = ? AND refresh_data_num = ? ORDER BY edb_refresh_config_id ASC `
+	//err = o.Raw(sql, refreshFrequency, refreshFrequencyDay, refreshTime, refreshAllData, refreshDataNum).QueryRow(&item)
+
 	sql := `SELECT * FROM edb_refresh_config
-         WHERE refresh_frequency = ? AND refresh_frequency_day = ? AND refresh_time = ? AND refresh_all_data = ? AND refresh_data_num = ? ORDER BY edb_refresh_config_id ASC `
-	err = o.Raw(sql, refreshFrequency, refreshFrequencyDay, refreshTime, refreshAllData, refreshDataNum).QueryRow(&item)
+	     WHERE refresh_frequency = ? AND refresh_frequency_day = ? AND refresh_time = ? AND refresh_all_data = ? AND refresh_data_num = ? ORDER BY edb_refresh_config_id ASC `
 
+	err = global.DmSQL["data"].Raw(sql, refreshFrequency, refreshFrequencyDay, refreshTime, refreshAllData, refreshDataNum).First(&item).Error
 	return
 }
 
@@ -104,27 +113,41 @@ func SaveEdbRefreshConfig(source, subSource, sysUserId int, sysUserRealName stri
 	if num <= 0 {
 		return
 	}
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
-	}
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = o.Rollback()
+	//		return
+	//	}
+	//	_ = o.Commit()
+	//}()
+
+	to := global.DmSQL["data"].Begin()
+
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
-			return
+			_ = to.Rollback()
+		} else {
+			_ = to.Commit()
 		}
-		_ = o.Commit()
 	}()
 
 	for _, v := range newConfigList {
-		lastId, tmpErr := o.Insert(v)
+		//lastId, tmpErr := o.Insert(v)
+		//if tmpErr != nil {
+		//	err = tmpErr
+		//	return
+		//}
+
+		tmpErr := to.Create(v).Error
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
 
-		v.EdbRefreshConfigId = int(lastId)
-
 		for _, edbId := range edbIdList {
 			addMapping = append(addMapping, &EdbRefreshMapping{
 				EdbRefreshMappingId: 0,
@@ -141,8 +164,11 @@ func SaveEdbRefreshConfig(source, subSource, sysUserId int, sysUserRealName stri
 	}
 
 	// 先删除
+	//sql := `DELETE FROM edb_refresh_mapping WHERE source =? AND sub_source =? AND edb_info_id in (` + utils.GetOrmInReplace(num) + `)`
+	//_, err = o.Raw(sql, source, subSource, edbIdList).Exec()
+
 	sql := `DELETE FROM edb_refresh_mapping WHERE source =? AND sub_source =? AND edb_info_id in (` + utils.GetOrmInReplace(num) + `)`
-	_, err = o.Raw(sql, source, subSource, edbIdList).Exec()
+	err = to.Exec(sql, source, subSource, edbIdList).Error
 
 	// 再写入
 	if len(addMapping) > 0 {
@@ -152,17 +178,27 @@ func SaveEdbRefreshConfig(source, subSource, sysUserId int, sysUserRealName stri
 			tmpAddDataList = append(tmpAddDataList, v)
 			i++
 			if i >= 500 {
-				_, err = o.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+				//_, err = o.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+				//if err != nil {
+				//	return
+				//}
+				err = to.CreateInBatches(tmpAddDataList, utils.MultiAddNum).Error
 				if err != nil {
 					return
 				}
+
 				i = 0
 				tmpAddDataList = make([]*EdbRefreshMapping, 0)
 			}
 		}
 
 		if len(tmpAddDataList) > 0 {
-			_, err = o.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+			//_, err = o.InsertMulti(len(tmpAddDataList), tmpAddDataList)
+			//if err != nil {
+			//	return
+			//}
+
+			err = to.CreateInBatches(tmpAddDataList, utils.MultiAddNum).Error
 			if err != nil {
 				return
 			}
@@ -193,11 +229,16 @@ type EdbRefreshConfigItem struct {
 // @return list []*EdbRefreshDefaultConfig
 // @return err error
 func GetEdbRefreshConfigListBySourceAndeEdbInfoId(source, subSource, edbInfoId int) (list []*EdbRefreshConfigItem, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT a.* FROM edb_refresh_config a
+	//     JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
+	//     WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id = ? ORDER BY a.edb_refresh_config_id ASC `
+	//_, err = o.Raw(sql, source, subSource, edbInfoId).QueryRows(&list)
+
 	sql := `SELECT a.* FROM edb_refresh_config a 
-         JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
-         WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id = ? ORDER BY a.edb_refresh_config_id ASC `
-	_, err = o.Raw(sql, source, subSource, edbInfoId).QueryRows(&list)
+	    JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
+	    WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id = ? ORDER BY a.edb_refresh_config_id ASC `
+	err = global.DmSQL["data"].Raw(sql, source, subSource, edbInfoId).Find(&list).Error
 
 	return
 }
@@ -229,11 +270,15 @@ func GetEdbRefreshConfigAndEdbListBySourceAndeEdbInfoId(source, subSource int, e
 	if num <= 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT a.*,b.source,b.sub_source,b.edb_info_id FROM edb_refresh_config a 
-         JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
-         WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id in (` + utils.GetOrmInReplace(num) + `)  ORDER BY a.edb_refresh_config_id ASC `
-	_, err = o.Raw(sql, source, subSource, edbInfoIdList).QueryRows(&list)
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT a.*,b.source,b.sub_source,b.edb_info_id FROM edb_refresh_config a
+	//     JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
+	//     WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id in (` + utils.GetOrmInReplace(num) + `)  ORDER BY a.edb_refresh_config_id ASC `
+	//_, err = o.Raw(sql, source, subSource, edbInfoIdList).QueryRows(&list)
 
+	sql := `SELECT a.*,b.source,b.sub_source,b.edb_info_id FROM edb_refresh_config a 
+	    JOIN  edb_refresh_mapping b ON a.edb_refresh_config_id = b.edb_refresh_config_id
+	    WHERE b.source = ? AND b.sub_source = ? AND b.edb_info_id in (` + utils.GetOrmInReplace(num) + `)  ORDER BY a.edb_refresh_config_id ASC `
+	err = global.DmSQL["data"].Raw(sql, source, subSource, edbInfoIdList).Find(&list).Error
 	return
 }

+ 60 - 32
models/data_manage/edb_refresh/edb_refresh_default_config.go

@@ -2,7 +2,8 @@ package edb_refresh
 
 import (
 	"errors"
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_api/global"
+	"eta_gn/eta_api/utils"
 	"time"
 )
 
@@ -34,13 +35,13 @@ func (m *EdbRefreshDefaultConfig) Add() (err error) {
 		err = errors.New("该配置已存在")
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	lastId, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.Id = int(lastId)
-
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err := o.Insert(m)
+	//if err != nil {
+	//	return
+	//}
+	//m.Id = int(lastId)
+	err = global.DmSQL["data"].Create(m).Error
 	return
 }
 
@@ -52,8 +53,9 @@ func (m *EdbRefreshDefaultConfig) Add() (err error) {
 // @param cols []string
 // @return err error
 func (m *EdbRefreshDefaultConfig) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(m, cols...)
+	err = global.DmSQL["data"].Select(cols).Updates(m).Error
 	return
 }
 
@@ -64,8 +66,11 @@ func (m *EdbRefreshDefaultConfig) Update(cols []string) (err error) {
 // @datetime 2023-12-14 16:11:10
 // @return err error
 func (m *EdbRefreshDefaultConfig) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(m)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(m)
+
+	sql := ` DELETE FROM edb_refresh_default_config WHERE id=? `
+	err = global.DmSQL["data"].Exec(sql, m.Id).Error
 	return
 }
 
@@ -79,11 +84,14 @@ func (m *EdbRefreshDefaultConfig) Delete() (err error) {
 // @return list []*EdbRefreshDefaultConfig
 // @return err error
 func GetListBySourceAndFrequency(source, subSource int, frequency string) (list []*EdbRefreshDefaultConfig, err error) {
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM edb_refresh_default_config
-         WHERE source = ? AND sub_source = ? AND frequency = ? ORDER BY id ASC `
-	_, err = o.Raw(sql, source, subSource, frequency).QueryRows(&list)
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM edb_refresh_default_config
+	//     WHERE source = ? AND sub_source = ? AND frequency = ? ORDER BY id ASC `
+	//_, err = o.Raw(sql, source, subSource, frequency).QueryRows(&list)
 
+	sql := `SELECT * FROM edb_refresh_default_config
+	    WHERE source = ? AND sub_source = ? AND frequency = ? ORDER BY id ASC `
+	err = global.DmSQL["data"].Raw(sql, source, subSource, frequency).Find(&list).Error
 	return
 }
 
@@ -96,11 +104,14 @@ func GetListBySourceAndFrequency(source, subSource int, frequency string) (list
 // @return list []*EdbRefreshDefaultConfig
 // @return err error
 func GetAllListBySourceList(source, subSource int) (list []*EdbRefreshDefaultConfig, err error) {
-	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM edb_refresh_default_config
-         WHERE source = ? AND sub_source = ? ORDER BY id ASC `
-	_, err = o.Raw(sql, source, subSource).QueryRows(&list)
+	//o := orm.NewOrmUsingDB("data")
+	//sql := `SELECT * FROM edb_refresh_default_config
+	//     WHERE source = ? AND sub_source = ? ORDER BY id ASC `
+	//_, err = o.Raw(sql, source, subSource).QueryRows(&list)
 
+	sql := `SELECT * FROM edb_refresh_default_config
+	    WHERE source = ? AND sub_source = ? ORDER BY id ASC `
+	err = global.DmSQL["data"].Raw(sql, source, subSource).Find(&list).Error
 	return
 }
 
@@ -114,25 +125,42 @@ func GetAllListBySourceList(source, subSource int) (list []*EdbRefreshDefaultCon
 // @param newList []*EdbRefreshDefaultConfig
 // @return err error
 func SaveEdbRefreshDefaultConfig(source, subSource int, frequency string, newList []*EdbRefreshDefaultConfig) (err error) {
-	o, err := orm.NewOrmUsingDB("data").Begin()
-	if err != nil {
-		return
-	}
+	//o, err := orm.NewOrmUsingDB("data").Begin()
+	//if err != nil {
+	//	return
+	//}
+	//defer func() {
+	//	if err != nil {
+	//		_ = o.Rollback()
+	//		return
+	//	}
+	//	_ = o.Commit()
+	//}()
+
+	to := global.DmSQL["data"].Begin()
+
 	defer func() {
 		if err != nil {
-			_ = o.Rollback()
-			return
+			_ = to.Rollback()
+		} else {
+			_ = to.Commit()
 		}
-		_ = o.Commit()
 	}()
 
-	// 先删除
-	sql := `DELETE FROM edb_refresh_default_config WHERE source =? AND sub_source =? AND frequency =?`
-	_, err = o.Raw(sql, source, subSource, frequency).Exec()
+	//// 先删除
+	//sql := `DELETE FROM edb_refresh_default_config WHERE source =? AND sub_source =? AND frequency =?`
+	//_, err = o.Raw(sql, source, subSource, frequency).Exec()
+	//
+	//// 再写入
+	//_, err = o.InsertMulti(len(newList), newList)
 
+	sql := `DELETE FROM edb_refresh_default_config WHERE source =? AND sub_source =? AND frequency =?`
+	err = to.Exec(sql, source, subSource, frequency).Error
+	if err != nil {
+		return err
+	}
 	// 再写入
-	_, err = o.InsertMulti(len(newList), newList)
-
+	err = to.CreateInBatches(newList, utils.MultiAddNum).Error
 	return
 
 }

+ 16 - 12
models/data_manage/edb_refresh/edb_refresh_mapping.go

@@ -2,7 +2,7 @@ package edb_refresh
 
 import (
 	"errors"
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_api/global"
 	"time"
 )
 
@@ -32,13 +32,13 @@ func (m *EdbRefreshMapping) Add() (err error) {
 		err = errors.New("该配置已存在")
 		return
 	}
-	o := orm.NewOrmUsingDB("data")
-	lastId, err := o.Insert(m)
-	if err != nil {
-		return
-	}
-	m.EdbRefreshMappingId = int(lastId)
-
+	//o := orm.NewOrmUsingDB("data")
+	//lastId, err := o.Insert(m)
+	//if err != nil {
+	//	return
+	//}
+	//m.EdbRefreshMappingId = int(lastId)
+	err = global.DmSQL["data"].Create(m).Error
 	return
 }
 
@@ -50,8 +50,9 @@ func (m *EdbRefreshMapping) Add() (err error) {
 // @param cols []string
 // @return err error
 func (m *EdbRefreshMapping) Update(cols []string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Update(m, cols...)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Update(m, cols...)
+	err = global.DmSQL["data"].Select(cols).Updates(m).Error
 	return
 }
 
@@ -62,7 +63,10 @@ func (m *EdbRefreshMapping) Update(cols []string) (err error) {
 // @datetime 2023-12-14 16:11:10
 // @return err error
 func (m *EdbRefreshMapping) Delete() (err error) {
-	o := orm.NewOrmUsingDB("data")
-	_, err = o.Delete(m)
+	//o := orm.NewOrmUsingDB("data")
+	//_, err = o.Delete(m)
+
+	sql := ` DELETE FROM edb_refresh_mapping WHERE edb_refresh_mapping_id=? `
+	err = global.DmSQL["data"].Exec(sql, m.EdbRefreshConfigId).Error
 	return
 }

+ 14 - 11
models/data_manage/edb_refresh/edb_refresh_source.go

@@ -1,7 +1,7 @@
 package edb_refresh
 
 import (
-	"github.com/beego/beego/v2/client/orm"
+	"eta_gn/eta_api/global"
 	"time"
 )
 
@@ -23,14 +23,14 @@ type EdbRefreshSource struct {
 // EdbRefreshSourceList
 // @Description: 获取刷新的数据源列表
 type EdbRefreshSourceList struct {
-	Source        int                    `orm:"column(source)" description:"来源"`
-	SourceName    string                 `description:"来源名称"`
-	SubSource     int                    `description:"子数据来源:0:经济数据库,1:日期序列"`
-	SubSourceName string                 `description:"子来源名称"`
-	Child         []EdbRefreshSourceList `description:"子来源"`
-	HasChild      int                    `description:"是否有子来源,0:否,1:是"`
-	SourceNameEn    string    `description:"英文来源名称"`
-	SubSourceNameEn string    `description:"英文子来源名称"`
+	Source          int                    `orm:"column(source)" description:"来源"`
+	SourceName      string                 `description:"来源名称"`
+	SubSource       int                    `description:"子数据来源:0:经济数据库,1:日期序列"`
+	SubSourceName   string                 `description:"子来源名称"`
+	Child           []EdbRefreshSourceList `description:"子来源"`
+	HasChild        int                    `description:"是否有子来源,0:否,1:是"`
+	SourceNameEn    string                 `description:"英文来源名称"`
+	SubSourceNameEn string                 `description:"英文子来源名称"`
 }
 
 // GetAllList
@@ -40,9 +40,12 @@ type EdbRefreshSourceList struct {
 // @return items []*EdbRefreshSource
 // @return err error
 func (m EdbRefreshSource) GetAllList() (items []*EdbRefreshSource, err error) {
-	o := orm.NewOrmUsingDB("data")
+	//o := orm.NewOrmUsingDB("data")
+	//sql := ` SELECT *  FROM edb_refresh_source ORDER BY id ASC `
+	//_, err = o.Raw(sql).QueryRows(&items)
+
 	sql := ` SELECT *  FROM edb_refresh_source ORDER BY id ASC `
-	_, err = o.Raw(sql).QueryRows(&items)
+	err = global.DmSQL["data"].Raw(sql).Find(&items).Error
 	return
 }