浏览代码

更换gorm

xyxie 2 月之前
父节点
当前提交
3fcbaab038
共有 3 个文件被更改,包括 231 次插入233 次删除
  1. 86 92
      models/data_manage/future_good_chart_info.go
  2. 83 81
      models/data_manage/gl_data.go
  3. 62 60
      models/data_manage/lz_data.go

+ 86 - 92
models/data_manage/future_good_chart_info.go

@@ -1,55 +1,53 @@
 package data_manage
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
 	"time"
 )
 
 // EditFutureGoodChartEnInfoAndEdbEnInfo 更改商品价格曲线英文信息
 func EditFutureGoodChartEnInfoAndEdbEnInfo(chartInfoId int, chartNameEn string, edbInfoId int, edbNameEn, edbUnitEn string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if err = tx.Error; err != nil {
 		return
 	}
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
+			tx.Rollback()
 		} else {
-			_ = to.Commit()
+			tx.Commit()
 		}
 	}()
 
-	sql := ` UPDATE  chart_info
-			SET
-			  chart_name_en =?,
-			  modify_time = NOW()
+	sql := `UPDATE chart_info 
+			SET chart_name_en = ?, modify_time = NOW() 
 			WHERE chart_info_id = ?`
-
-	_, err = to.Raw(sql, chartNameEn, chartInfoId).Exec()
+	err = tx.Exec(sql, chartNameEn, chartInfoId).Error
 	if err != nil {
-		fmt.Println("UPDATE  chart_info Err:", err.Error())
-		return err
+		fmt.Println("UPDATE chart_info Err:", err.Error())
+		return
 	}
-	var count int
-	csql := `SELECT COUNT(1) AS count FROM chart_edb_mapping WHERE chart_info_id=? AND edb_info_id=? AND source = 1 `
-	err = to.Raw(csql, chartInfoId, edbInfoId).QueryRow(&count)
+
+	var count int64
+	csql := `SELECT COUNT(1) AS count FROM chart_edb_mapping 
+	         WHERE chart_info_id=? AND edb_info_id=? AND source = 1`
+	err = tx.Raw(csql, chartInfoId, edbInfoId).Scan(&count).Error
 	if err != nil {
 		fmt.Println("QueryRow Err:", err.Error())
-		return err
+		return
 	}
+
 	if count > 0 {
-		msql := ` UPDATE  edb_info
-			SET edb_name_en = ?,
-			  unit_en = ?,
-			  modify_time = NOW()
-			WHERE edb_info_id = ? `
-		_, err = to.Raw(msql, edbNameEn, edbUnitEn, edbInfoId).Exec()
+		msql := `UPDATE edb_info 
+				SET edb_name_en = ?, unit_en = ?, modify_time = NOW() 
+				WHERE edb_info_id = ?`
+		err = tx.Exec(msql, edbNameEn, edbUnitEn, edbInfoId).Error
 		if err != nil {
 			fmt.Println("edb_info Err:" + err.Error())
-			return err
+			return
 		}
 	}
 
@@ -79,16 +77,16 @@ type EditFutureGoodChartInfoBaseReq struct {
 // @param lang string
 // @return err error
 func EditBaseFutureGoodChartInfoAndEdbEnInfo(chartInfo *ChartInfo, req *EditFutureGoodChartInfoBaseReq, lang string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if err = tx.Error; err != nil {
 		return
 	}
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
+			tx.Rollback()
 		} else {
-			_ = to.Commit()
+			tx.Commit()
 		}
 	}()
 
@@ -104,44 +102,42 @@ func EditBaseFutureGoodChartInfoAndEdbEnInfo(chartInfo *ChartInfo, req *EditFutu
 	}
 	chartInfo.ModifyTime = time.Now()
 	updateChartCols = append(updateChartCols, "ModifyTime", "BarConfig")
-	_, err = to.Update(chartInfo, updateChartCols...)
+	
+	err = tx.Model(chartInfo).Select(updateChartCols).Updates(chartInfo).Error
 	if err != nil {
-		fmt.Println("UPDATE  chart_info Err:", err.Error())
-		return err
+		fmt.Println("UPDATE chart_info Err:", err.Error())
+		return
 	}
+
 	for _, v := range req.ChartEdbInfoList {
-		msql := ` UPDATE edb_info SET modify_time = NOW()  `
+		msql := `UPDATE edb_info SET modify_time = NOW()`
 		pars := make([]interface{}, 0)
 		switch lang {
 		case utils.EnLangVersion:
 			if v.EdbName != `` {
-				msql += ` ,edb_name_en = ? `
+				msql += `, edb_name_en = ?`
 				pars = append(pars, v.EdbName)
 			}
-
 			if v.Unit != `` {
-				msql += ` ,unit_en = ? `
+				msql += `, unit_en = ?`
 				pars = append(pars, v.Unit)
 			}
-
 		default:
-
 			if v.EdbName != `` {
-				msql += ` ,edb_name = ? `
+				msql += `, edb_name = ?`
 				pars = append(pars, v.EdbName)
 			}
-
 			if v.Unit != `` {
-				msql += ` ,unit = ? `
+				msql += `, unit = ?`
 				pars = append(pars, v.Unit)
 			}
 		}
-		msql += ` WHERE edb_info_id = ? `
+		msql += ` WHERE edb_info_id = ?`
 		pars = append(pars, v.EdbInfoId)
-		_, err = to.Raw(msql, pars...).Exec()
+		err = tx.Exec(msql, pars...).Error
 		if err != nil {
 			fmt.Println("edb_info Err:" + err.Error())
-			return err
+			return
 		}
 	}
 	return
@@ -149,44 +145,41 @@ func EditBaseFutureGoodChartInfoAndEdbEnInfo(chartInfo *ChartInfo, req *EditFutu
 
 // EditFutureGoodProfitChartEnInfoAndEdbEnInfo 更改商品利润曲线英文信息
 func EditFutureGoodProfitChartEnInfoAndEdbEnInfo(chartInfoId int, chartNameEn string, edbInfoId int, edbNameEn, edbUnitEn, profitNameEn string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if err = tx.Error; err != nil {
 		return
 	}
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
+			tx.Rollback()
 		} else {
-			_ = to.Commit()
+			tx.Commit()
 		}
 	}()
 
-	sql := ` UPDATE  chart_info
-			SET chart_name_en =?,modify_time = NOW()
+	sql := `UPDATE chart_info 
+			SET chart_name_en = ?, modify_time = NOW() 
 			WHERE chart_info_id = ?`
-
-	_, err = to.Raw(sql, chartNameEn, chartInfoId).Exec()
+	err = tx.Exec(sql, chartNameEn, chartInfoId).Error
 	if err != nil {
-		fmt.Println("UPDATE  chart_info Err:", err.Error())
+		fmt.Println("UPDATE chart_info Err:", err.Error())
 		return
 	}
 
-	// 更改指标英文信息
-	sql = ` UPDATE  edb_info
-			SET edb_name_en = ?,unit_en = ?,modify_time = NOW()
-			WHERE edb_info_id = ? `
-	_, err = to.Raw(sql, edbNameEn, edbUnitEn, edbInfoId).Exec()
+	sql = `UPDATE edb_info 
+		   SET edb_name_en = ?, unit_en = ?, modify_time = NOW() 
+		   WHERE edb_info_id = ?`
+	err = tx.Exec(sql, edbNameEn, edbUnitEn, edbInfoId).Error
 	if err != nil {
 		fmt.Println("edb_info Err:" + err.Error())
 		return
 	}
 
-	// 更改指标英文信息
-	sql = ` UPDATE  chart_info_future_good_profit
-			SET profit_name_en = ?,modify_time = NOW()
-			WHERE chart_info_id = ? `
-	_, err = to.Raw(sql, profitNameEn, chartInfoId).Exec()
+	sql = `UPDATE chart_info_future_good_profit 
+		   SET profit_name_en = ?, modify_time = NOW() 
+		   WHERE chart_info_id = ?`
+	err = tx.Exec(sql, profitNameEn, chartInfoId).Error
 	if err != nil {
 		fmt.Println("chart_info_future_good_profit Err:" + err.Error())
 		return
@@ -208,16 +201,16 @@ func EditFutureGoodProfitChartEnInfoAndEdbEnInfo(chartInfoId int, chartNameEn st
 // @param lang string
 // @return err error
 func EditBaseFutureGoodProfitChartInfoAndEdbEnInfo(chartInfo *ChartInfo, req *EditFutureGoodChartInfoBaseReq, lang string) (err error) {
-	o := orm.NewOrmUsingDB("data")
-	to, err := o.Begin()
-	if err != nil {
+	o := global.DbMap[utils.DbNameIndex]
+	tx := o.Begin()
+	if err = tx.Error; err != nil {
 		return
 	}
 	defer func() {
 		if err != nil {
-			_ = to.Rollback()
+			tx.Rollback()
 		} else {
-			_ = to.Commit()
+			tx.Commit()
 		}
 	}()
 
@@ -233,58 +226,59 @@ func EditBaseFutureGoodProfitChartInfoAndEdbEnInfo(chartInfo *ChartInfo, req *Ed
 	}
 	chartInfo.ModifyTime = time.Now()
 	updateChartCols = append(updateChartCols, "ModifyTime", "ExtraConfig")
-	_, err = to.Update(chartInfo, updateChartCols...)
+	
+	err = tx.Model(chartInfo).Select(updateChartCols).Updates(chartInfo).Error
 	if err != nil {
-		fmt.Println("UPDATE  chart_info Err:", err.Error())
-		return err
+		fmt.Println("UPDATE chart_info Err:", err.Error())
+		return
 	}
-	var sql string
-	// 更改指标英文信息
+
+	// 更改指标信息
 	for _, v := range req.ChartEdbInfoList {
-		msql := ` UPDATE edb_info SET modify_time = NOW()  `
+		msql := `UPDATE edb_info SET modify_time = NOW()`
 		pars := make([]interface{}, 0)
 		switch lang {
 		case utils.EnLangVersion:
 			if v.EdbName != `` {
-				msql += ` ,edb_name_en = ? `
+				msql += `, edb_name_en = ?`
 				pars = append(pars, v.EdbName)
 			}
-
 			if v.Unit != `` {
-				msql += ` ,unit_en = ? `
+				msql += `, unit_en = ?`
 				pars = append(pars, v.Unit)
 			}
-
 		default:
-
 			if v.EdbName != `` {
-				msql += ` ,edb_name = ? `
+				msql += `, edb_name = ?`
 				pars = append(pars, v.EdbName)
 			}
-
 			if v.Unit != `` {
-				msql += ` ,unit = ? `
+				msql += `, unit = ?`
 				pars = append(pars, v.Unit)
 			}
 		}
-		msql += ` WHERE edb_info_id = ? `
+		msql += ` WHERE edb_info_id = ?`
 		pars = append(pars, v.EdbInfoId)
-		_, err = to.Raw(msql, pars...).Exec()
+		err = tx.Exec(msql, pars...).Error
 		if err != nil {
 			fmt.Println("edb_info Err:" + err.Error())
-			return err
+			return
 		}
 	}
 
-	// 更改指标英文信息
-
+	// 更改利润名称
+	var sql string
 	switch lang {
 	case utils.EnLangVersion:
-		sql = ` UPDATE  chart_info_future_good_profit SET profit_name_en = ?,modify_time = NOW() WHERE chart_info_id = ? `
+		sql = `UPDATE chart_info_future_good_profit 
+			   SET profit_name_en = ?, modify_time = NOW() 
+			   WHERE chart_info_id = ?`
 	default:
-		sql = ` UPDATE  chart_info_future_good_profit SET profit_name = ?,modify_time = NOW() WHERE chart_info_id = ? `
+		sql = `UPDATE chart_info_future_good_profit 
+			   SET profit_name = ?, modify_time = NOW() 
+			   WHERE chart_info_id = ?`
 	}
-	_, err = to.Raw(sql, req.ProfitName, chartInfo.ChartInfoId).Exec()
+	err = tx.Exec(sql, req.ProfitName, chartInfo.ChartInfoId).Error
 	if err != nil {
 		fmt.Println("chart_info_future_good_profit Err:" + err.Error())
 		return

+ 83 - 81
models/data_manage/gl_data.go

@@ -1,9 +1,10 @@
 package data_manage
 
 import (
+	"eta/eta_api/global"
 	"eta/eta_api/utils"
 	"fmt"
-	"github.com/beego/beego/v2/client/orm"
+
 	"github.com/rdlucklib/rdluck_tools/paging"
 )
 
@@ -12,9 +13,10 @@ type GlClassify struct {
 }
 
 func GetGlSurveyClassify() (items []*GlClassify, err error) {
-	sql := ` SELECT CASE WHEN BREED_SHORT_NAME IS NULL THEN '无' ELSE BREED_SHORT_NAME END BREED_SHORT_NAME  FROM mb_index_main_info GROUP BY BREED_SHORT_NAME ORDER BY BREED_SHORT_NAME ASC `
-	o := orm.NewOrmUsingDB("gl")
-	o.Raw(sql).QueryRows(&items)
+	sql := `SELECT CASE WHEN BREED_SHORT_NAME IS NULL THEN '无' ELSE BREED_SHORT_NAME END BREED_SHORT_NAME 
+           FROM mb_index_main_info GROUP BY BREED_SHORT_NAME ORDER BY BREED_SHORT_NAME ASC`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
@@ -23,94 +25,100 @@ type GlFrequency struct {
 }
 
 func GetGlFrequencyByClassifyId(breedShortName string) (items []*GlFrequency, err error) {
-	o := orm.NewOrmUsingDB("gl")
+	o := global.DbMap[utils.DbNameGL]
+	var sql string
 	if breedShortName == "无" {
-		sql := ` SELECT FREQUENCY_NAME AS frequency FROM mb_index_main_info WHERE BREED_SHORT_NAME IS NULL GROUP BY FREQUENCY_CODE ORDER BY FREQUENCY_CODE ASC `
-		_, err = o.Raw(sql).QueryRows(&items)
-		return
+		sql = `SELECT FREQUENCY_NAME AS frequency FROM mb_index_main_info 
+               WHERE BREED_SHORT_NAME IS NULL GROUP BY FREQUENCY_CODE ORDER BY FREQUENCY_CODE ASC`
+		err = o.Raw(sql).Find(&items).Error
 	} else {
-		sql := ` SELECT FREQUENCY_NAME AS frequency FROM mb_index_main_info WHERE BREED_SHORT_NAME=? GROUP BY FREQUENCY_CODE ORDER BY FREQUENCY_CODE ASC `
-		_, err = o.Raw(sql, breedShortName).QueryRows(&items)
-		return
+		sql = `SELECT FREQUENCY_NAME AS frequency FROM mb_index_main_info 
+               WHERE BREED_SHORT_NAME=? GROUP BY FREQUENCY_CODE ORDER BY FREQUENCY_CODE ASC`
+		err = o.Raw(sql, breedShortName).Find(&items).Error
 	}
+	return
 }
 
 type GlIndex struct {
-	Id            int    `orm:"column(ID)"`
-	IndexCode     string `orm:"column(INDEX_CODE)"`
-	IndexName     string `orm:"column(INDEX_NAME)"`
-	UnitName      string `orm:"column(UNIT_NAME)"`
-	FrequencyName string `orm:"column(FREQUENCY_NAME)"`
-	UpdateTime    string `orm:"column(UPDATE_TIME)"`
+	Id            int    `gorm:"column:id;primaryKey"`
+	IndexCode     string `description:"指标编码"`
+	IndexName     string `description:"指标名称"`
+	UnitName      string `description:"单位"`
+	FrequencyName string `description:"频度名称"`
+	UpdateTime    string `description:"更新时间"`
 }
 
 func GetGlIndex(breedShortName, frequency string) (items []*GlIndex, err error) {
-	o := orm.NewOrmUsingDB("gl")
+	o := global.DbMap[utils.DbNameGL]
+	var sql string
 	if breedShortName == "无" {
-		sql := ` SELECT * FROM mb_index_main_info WHERE BREED_SHORT_NAME IS NULL AND FREQUENCY_NAME=? ORDER BY INDEX_CODE ASC `
-		_, err = o.Raw(sql, frequency).QueryRows(&items)
-		return
+		sql = `SELECT * FROM mb_index_main_info 
+               WHERE BREED_SHORT_NAME IS NULL AND FREQUENCY_NAME=? ORDER BY INDEX_CODE ASC`
+		err = o.Raw(sql, frequency).Find(&items).Error
 	} else {
-		sql := ` SELECT * FROM mb_index_main_info WHERE BREED_SHORT_NAME=? AND FREQUENCY_NAME=? ORDER BY INDEX_CODE ASC `
-		_, err = o.Raw(sql, breedShortName, frequency).QueryRows(&items)
-		return
+		sql = `SELECT * FROM mb_index_main_info 
+               WHERE BREED_SHORT_NAME=? AND FREQUENCY_NAME=? ORDER BY INDEX_CODE ASC`
+		err = o.Raw(sql, breedShortName, frequency).Find(&items).Error
 	}
+	return
 }
 
 func GetGlFrequency(productName string) (items []*string, err error) {
-	sql := `SELECT DISTINCT FREQUENCY_NAME FROM mb_index_main_info WHERE BREED_SHORT_NAME=? ORDER BY FIELD(FREQUENCY_NAME,'日度','周度','旬度','月度','季度','半年','年度') `
-	o := orm.NewOrmUsingDB("gl")
-	_, err = o.Raw(sql, productName).QueryRows(&items)
+	sql := `SELECT DISTINCT FREQUENCY_NAME FROM mb_index_main_info 
+           WHERE BREED_SHORT_NAME=? ORDER BY FIELD(FREQUENCY_NAME,'日度','周度','旬度','月度','季度','半年','年度')`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, productName).Find(&items).Error
 	return
 }
 
 type GlIndexList struct {
-	Id            int                `orm:"column(ID)"`
-	IndexCode     string             `orm:"column(INDEX_CODE)"`
-	IndexName     string             `orm:"column(INDEX_NAME)"`
-	UnitName      string             `orm:"column(UNIT_NAME)"`
-	FrequencyName string             `orm:"column(FREQUENCY_NAME)"`
-	UpdateTime    string             `orm:"column(UPDATE_TIME)"`
-	Paging        *paging.PagingItem `description:"分页数据"`
-	DataList      []*GlIndexData
+	Id            int                `gorm:"column:ID;primaryKey"`
+	IndexCode     string             `description:"指标编码"`
+	IndexName     string             `description:"指标名称"`
+	UnitName      string             `description:"单位"`
+	FrequencyName string             `description:"频度名称"`
+	UpdateTime    string             `description:"更新时间"`
+	Paging        *paging.PagingItem `gorm:"-" description:"分页数据"`
+	DataList      []*GlIndexData     `gorm:"-"`
 }
 
 type GlIndexData struct {
-	InputValue string `orm:"column(DATA_VALUE)" description:"日期"`
-	DataTime   string `orm:"column(DATA_DATE)" description:"值"`
+	InputValue string `description:"日期"`
+	DataTime   string `description:"值"`
 }
 
 func GetGlIndexData(indexCode string, startSize, pageSize int) (items []*GlIndexData, err error) {
-	//sql := ` SELECT *  FROM mb_index_main_data WHERE INDEX_CODE=? ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC LIMIT ?,?`
-	sql := ` SELECT * FROM (
-	SELECT DISTINCT a.INDEX_CODE,a.DATA_VALUE,a.DATA_DATE FROM mb_index_main_data AS a WHERE INDEX_CODE=? AND IS_DELETE=0
-	ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC 
-	)AS t
+	sql := `SELECT * FROM (
+		SELECT DISTINCT a.INDEX_CODE,a.DATA_VALUE,a.DATA_DATE FROM mb_index_main_data AS a 
+		WHERE INDEX_CODE=? AND IS_DELETE=0
+		ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC 
+	) AS t
 	GROUP BY t.DATA_DATE
-	ORDER BY t.DATA_DATE DESC LIMIT ?,? `
-	o := orm.NewOrmUsingDB("gl")
-	_, err = o.Raw(sql, indexCode, startSize, pageSize).QueryRows(&items)
+	ORDER BY t.DATA_DATE DESC LIMIT ?,?`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, indexCode, startSize, pageSize).Find(&items).Error
 	return
 }
 
 func GetGlIndexByCode(indexCode string) (items *GlIndex, err error) {
-	sql := ` SELECT *  FROM mb_index_main_info WHERE INDEX_CODE=? `
-	o := orm.NewOrmUsingDB("gl")
-	err = o.Raw(sql, indexCode).QueryRow(&items)
+	sql := `SELECT * FROM mb_index_main_info WHERE INDEX_CODE=?`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, indexCode).First(&items).Error
 	return
 }
 
 func GetGlIndexDataCount(indexCode string) (count int, err error) {
-	o := orm.NewOrmUsingDB("gl")
 	sql := `SELECT COUNT(1) AS count FROM (
-			SELECT * FROM (
-				SELECT DISTINCT a.INDEX_CODE,a.DATA_VALUE,a.DATA_DATE FROM mb_index_main_data AS a WHERE INDEX_CODE=? AND IS_DELETE=0
-				ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC 
-				)AS t
-				GROUP BY t.DATA_DATE
-				ORDER BY t.DATA_DATE DESC
-			)AS n `
-	err = o.Raw(sql, indexCode).QueryRow(&count)
+		SELECT * FROM (
+			SELECT DISTINCT a.INDEX_CODE,a.DATA_VALUE,a.DATA_DATE FROM mb_index_main_data AS a 
+			WHERE INDEX_CODE=? AND IS_DELETE=0
+			ORDER BY DATA_DATE DESC,PUBLISH_TIME DESC 
+		) AS t
+		GROUP BY t.DATA_DATE
+		ORDER BY t.DATA_DATE DESC
+	) AS n`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, indexCode).Scan(&count).Error
 	return
 }
 
@@ -132,52 +140,46 @@ type GlSearchIndex struct {
 	SearchText     string `description:"搜索结果(含高亮)"`
 }
 
-// GetGlItemList 模糊查询隆众数据库指标列表
 func GetGlItemList(keyword string) (items []*GlSearchIndex, err error) {
-	o := orm.NewOrmUsingDB("gl")
-	sql := "SELECT * FROM mb_index_main_info WHERE CONCAT(INDEX_NAME,INDEX_CODE) LIKE ? "
-	_, err = o.Raw(sql, utils.GetLikeKeyword(keyword)).QueryRows(&items)
+	sql := "SELECT * FROM mb_index_main_info WHERE CONCAT(INDEX_NAME,INDEX_CODE) LIKE ?"
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, utils.GetLikeKeyword(keyword)).Find(&items).Error
 	return
-
 }
 
 func GetGlDataMaxCount(classifyName string) (count int, err error) {
-	o := orm.NewOrmUsingDB("gl")
 	sql := `SELECT MAX(t.num) AS count FROM (
-				SELECT COUNT(1) AS num  FROM mb_index_main_info AS a
-				INNER JOIN mb_index_main_data AS b ON a.INDEX_CODE=b.INDEX_CODE
-				WHERE a.BREED_SHORT_NAME=?
-				GROUP BY a.INDEX_CODE
-			)AS t `
-	err = o.Raw(sql, classifyName).QueryRow(&count)
+		SELECT COUNT(1) AS num FROM mb_index_main_info AS a
+		INNER JOIN mb_index_main_data AS b ON a.INDEX_CODE=b.INDEX_CODE
+		WHERE a.BREED_SHORT_NAME=?
+		GROUP BY a.INDEX_CODE
+	) AS t`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, classifyName).Scan(&count).Error
 	return
 }
 
 func GetGlDataByCode(indexCode string) (items []*GlIndexData, err error) {
-	o := orm.NewOrmUsingDB("gl")
-	sql := `SELECT
-	* 
-FROM
-	( SELECT * FROM mb_index_main_data WHERE INDEX_CODE = ? GROUP BY UPDATE_TIME DESC, DATA_DATE DESC ) a 
-GROUP BY
-	a.DATA_DATE DESC `
-	_, err = o.Raw(sql, indexCode).QueryRows(&items)
+	sql := `SELECT * FROM (
+		SELECT * FROM mb_index_main_data WHERE INDEX_CODE=? 
+		GROUP BY UPDATE_TIME DESC, DATA_DATE DESC
+	) a GROUP BY a.DATA_DATE DESC`
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, indexCode).Find(&items).Error
 	return
 }
 
-// GlDataPageListResp 钢联原始指标库-分页列表
 type GlDataPageListResp struct {
 	Paging *paging.PagingItem
 	List   []*GlSearchIndex
 }
 
-// GetGlItemListByIds IDs获取钢联原始指标库
 func GetGlItemListByIds(ids []int) (items []*GlSearchIndex, err error) {
 	if len(ids) == 0 {
 		return
 	}
-	o := orm.NewOrmUsingDB("gl")
 	sql := fmt.Sprintf(`SELECT * FROM mb_index_main_info WHERE ID IN (%s)`, utils.GetOrmInReplace(len(ids)))
-	_, err = o.Raw(sql, ids).QueryRows(&items)
+	o := global.DbMap[utils.DbNameGL]
+	err = o.Raw(sql, ids).Find(&items).Error
 	return
 }

+ 62 - 60
models/data_manage/lz_data.go

@@ -1,19 +1,21 @@
 package data_manage
 
 import (
-	"github.com/beego/beego/v2/client/orm"
 	"time"
+
+	"eta/eta_api/global"
+	"eta/eta_api/utils"
 )
 
 type LzClassify struct {
-	BreedId   int    `description:"分类id"`
-	BreedName string `description:"分类名称"`
+	BreedId   int    `gorm:"column:breed_id" description:"分类id"`
+	BreedName string `gorm:"column:breed_name" description:"分类名称"`
 }
 
 func GetLzSurveyClassify() (items []*LzClassify, err error) {
-	sql := ` SELECT breed_id,breed_name FROM longzhong_survey_product GROUP BY breed_name ORDER BY breed_name DESC `
-	o := orm.NewOrmUsingDB("edb")
-	o.Raw(sql).QueryRows(&items)
+	sql := `SELECT breed_id,breed_name FROM longzhong_survey_product GROUP BY breed_name ORDER BY breed_name DESC`
+	o := global.DbMap[utils.DbNameManualIndex]
+	err = o.Raw(sql).Find(&items).Error
 	return
 }
 
@@ -22,65 +24,65 @@ type LzFrequency struct {
 }
 
 func GetLzFrequencyByClassifyId(breedId int) (items []*LzFrequency, err error) {
-	sql := ` SELECT frequency  FROM longzhong_survey_product WHERE breed_id=? GROUP BY frequency ORDER BY frequency ASC `
-	o := orm.NewOrmUsingDB("edb")
-	_, err = o.Raw(sql, breedId).QueryRows(&items)
+	sql := `SELECT frequency FROM longzhong_survey_product WHERE breed_id=? GROUP BY frequency ORDER BY frequency ASC`
+	o := global.DbMap[utils.DbNameManualIndex]
+	err = o.Raw(sql, breedId).Find(&items).Error
 	return
 }
 
 type LongzhongSurveyProduct struct {
-	SurveyProductId      int `orm:"column(survey_product_id);pk"`
-	ProjectQuotaId       int64
-	BreedId              string
-	BreedName            string
-	QuotaId              string
-	QuotaName            string
-	UnitId               string
-	UnitName             string
-	SampleType           int64
-	SampleId             string
-	SampleName           string
-	DeviceId             string
-	Device               string
-	ProductCraftId       string
-	ProductCraft         string
-	ProductLine          string
-	InputMode            int64
-	Frequency            int64
-	InputValue           string
-	TaskShouldFinishTime int
-	CustomId             string
-	CustomType           int64
-	Custom               string
-	QuotaSampleId        int64
-	StartDate            string
-	EndDate              string
-	ModifyTime           time.Time
-	LzCode               string
+	SurveyProductId      int       `gorm:"column:survey_product_id;primaryKey"`
+	ProjectQuotaId       int64     `gorm:"column:project_quota_id"`
+	BreedId              string    `gorm:"column:breed_id"`
+	BreedName            string    `gorm:"column:breed_name"`
+	QuotaId              string    `gorm:"column:quota_id"`
+	QuotaName            string    `gorm:"column:quota_name"`
+	UnitId               string    `gorm:"column:unit_id"`
+	UnitName             string    `gorm:"column:unit_name"`
+	SampleType           int64     `gorm:"column:sample_type"`
+	SampleId             string    `gorm:"column:sample_id"`
+	SampleName           string    `gorm:"column:sample_name"`
+	DeviceId             string    `gorm:"column:device_id"`
+	Device               string    `gorm:"column:device"`
+	ProductCraftId       string    `gorm:"column:product_craft_id"`
+	ProductCraft         string    `gorm:"column:product_craft"`
+	ProductLine          string    `gorm:"column:product_line"`
+	InputMode            int64     `gorm:"column:input_mode"`
+	Frequency            int64     `gorm:"column:frequency"`
+	InputValue           string    `gorm:"column:input_value"`
+	TaskShouldFinishTime int       `gorm:"column:task_should_finish_time"`
+	CustomId             string    `gorm:"column:custom_id"`
+	CustomType           int64     `gorm:"column:custom_type"`
+	Custom               string    `gorm:"column:custom"`
+	QuotaSampleId        int64     `gorm:"column:quota_sample_id"`
+	StartDate            string    `gorm:"column:start_date"`
+	EndDate              string    `gorm:"column:end_date"`
+	ModifyTime           time.Time `gorm:"column:modify_time"`
+	LzCode               string    `gorm:"column:lz_code"`
 }
 
 func GetLongzhongSurveyProduct(breedId, frequency int) (items []*LongzhongSurveyProduct, err error) {
-	sql := ` SELECT *  FROM longzhong_survey_product WHERE breed_id=? AND frequency=? ORDER BY survey_product_id ASC `
-	o := orm.NewOrmUsingDB("edb")
-	_, err = o.Raw(sql, breedId, frequency).QueryRows(&items)
+	sql := `SELECT * FROM longzhong_survey_product WHERE breed_id=? AND frequency=? ORDER BY survey_product_id ASC`
+	o := global.DbMap[utils.DbNameManualIndex]
+	err = o.Raw(sql, breedId, frequency).Find(&items).Error
 	return
 }
 
 type LzProductList struct {
-	SurveyProductId int    `orm:"column(survey_product_id);pk"`
-	BreedName       string `description:"品种名称"`
-	QuotaName       string `description:"指标名称"`
-	UnitName        string `description:"单位"`
-	SampleType      int64  `description:"样本类型 0-空 1-企业 2-港口 3-运距 4-区域/国家 99-不确定"`
-	SampleName      string `description:"样本名称"`
-	Device          string `description:"设备"`
-	Frequency       int64  `description:"频度"`
-	Custom          string `description:"扩展字段"`
-	StartDate       string `description:"开始日期"`
-	EndDate         string `description:"结束日期"`
-	ModifyTime      string `description:"修改时间"`
-	LzCode          string `description:"指标编码"`
-	DataList        []*LzProductData
+	SurveyProductId int             `gorm:"column:survey_product_id;primaryKey"`
+	BreedName       string          `gorm:"column:breed_name" description:"品种名称"`
+	QuotaName       string          `gorm:"column:quota_name" description:"指标名称"`
+	UnitName        string          `gorm:"column:unit_name" description:"单位"`
+	SampleType      int64           `gorm:"column:sample_type" description:"样本类型 0-空 1-企业 2-港口 3-运距 4-区域/国家 99-不确定"`
+	SampleName      string          `gorm:"column:sample_name" description:"样本名称"`
+	Device          string          `gorm:"column:device" description:"设备"`
+	Frequency       int64           `gorm:"column:frequency" description:"频度"`
+	Custom          string          `gorm:"column:custom" description:"扩展字段"`
+	StartDate       string          `gorm:"column:start_date" description:"开始日期"`
+	EndDate         string          `gorm:"column:end_date" description:"结束日期"`
+	ModifyTime      string          `gorm:"column:modify_time" description:"修改时间"`
+	LzCode          string          `gorm:"column:lz_code" description:"指标编码"`
+	DataList        []*LzProductData `gorm:"-"`
 }
 
 type LzProductData struct {
@@ -89,15 +91,15 @@ type LzProductData struct {
 }
 
 func GetLongzhongSurveyProductData(surveyProductId int) (items []*LzProductData, err error) {
-	sql := ` SELECT *  FROM longzhong_survey_data WHERE survey_product_id=? ORDER BY data_time DESC `
-	o := orm.NewOrmUsingDB("edb")
-	_, err = o.Raw(sql, surveyProductId).QueryRows(&items)
+	sql := `SELECT * FROM longzhong_survey_data WHERE survey_product_id=? ORDER BY data_time DESC`
+	o := global.DbMap[utils.DbNameManualIndex]
+	err = o.Raw(sql, surveyProductId).Find(&items).Error
 	return
 }
 
 func GetLongzhongSurveyProductByCode(lzCode string) (items *LongzhongSurveyProduct, err error) {
-	sql := ` SELECT *  FROM longzhong_survey_product WHERE lz_code=? `
-	o := orm.NewOrmUsingDB("edb")
-	err = o.Raw(sql, lzCode).QueryRow(&items)
+	sql := `SELECT * FROM longzhong_survey_product WHERE lz_code=?`
+	o := global.DbMap[utils.DbNameManualIndex]
+	err = o.Raw(sql, lzCode).First(&items).Error
 	return
 }