Browse Source

change gorm

Roc 3 weeks ago
parent
commit
ef16bba6c0
2 changed files with 35 additions and 3 deletions
  1. 13 1
      models/manual_edb.go
  2. 22 2
      models/target.go

+ 13 - 1
models/manual_edb.go

@@ -26,6 +26,11 @@ func GetTargetByTradeCode(tradeCode string) (item *EdbInfoItem, err error) {
 	sql := `SELECT * FROM edbinfo WHERE TRADE_CODE = ?  `
 	o := global.DbMap[utils.DbNameManualIndex]
 	err = o.Raw(sql, tradeCode).First(&item).Error
+	if err != nil {
+		return
+	}
+	item.ConvDate()
+
 	return
 }
 
@@ -186,7 +191,7 @@ func GetCountEdbInfoList(condition string, pars []interface{}) (total int, err e
 		sql += condition
 	}
 	sql += ` ORDER BY a.create_date DESC `
-	err = o.Raw(sql, pars...).First(&total).Error
+	err = o.Raw(sql, pars...).Scan(&total).Error
 	return
 }
 
@@ -371,6 +376,13 @@ type EdbinfoOpRecordItem struct {
 	CreateTime string `gorm:"column:create_time" description:"创建时间"`
 }
 
+// AfterFind 在该模型上设置钩子函数,把日期转成正确的string,所以查询函数只能用Find函数,First或者Scan是不会触发该函数的来获取数据
+func (m *EdbinfoOpRecordItem) AfterFind(db *gorm.DB) (err error) {
+	m.CreateTime = utils.GormDateStrToDateTimeStr(m.CreateTime)
+
+	return
+}
+
 // EdbinfoOpRecordListResp 指标数据结构体
 type EdbinfoOpRecordListResp struct {
 	List   []*EdbinfoOpRecordItem

+ 22 - 2
models/target.go

@@ -1389,8 +1389,28 @@ type EdbInfoItem struct {
 	StartDate        string                 `description:"数据开始日期"`
 	EndDate          string                 `description:"数据结束日期"`
 	LatestValue      float64                `description:"指标最新值"`
-	DataList         []*Edbdata             `description:"指标数据列表"`
-	NextDataTimeList []*EdbDataNextDateTime `description:"下期数据时间列表"`
+	DataList         []*Edbdata             `gorm:"-" description:"指标数据列表"`
+	NextDataTimeList []*EdbDataNextDateTime `gorm:"-" description:"下期数据时间列表"`
+}
+
+// AfterFind 在该模型上设置钩子函数,把日期转成正确的string,所以查询函数只能用Find函数,First或者Scan是不会触发该函数的来获取数据
+func (m *EdbInfoItem) AfterFind(db *gorm.DB) (err error) {
+	m.CreateDate = utils.GormDateStrToDateTimeStr(m.CreateDate)
+	m.ModifyTime = utils.GormDateStrToDateTimeStr(m.ModifyTime)
+	m.StartDate = utils.GormDateStrToDateStr(m.StartDate)
+	m.EndDate = utils.GormDateStrToDateStr(m.EndDate)
+
+	return
+}
+
+// ConvDate
+func (m *EdbInfoItem) ConvDate() {
+	m.CreateDate = utils.GormDateStrToDateTimeStr(m.CreateDate)
+	m.ModifyTime = utils.GormDateStrToDateTimeStr(m.ModifyTime)
+	m.StartDate = utils.GormDateStrToDateStr(m.StartDate)
+	m.EndDate = utils.GormDateStrToDateStr(m.EndDate)
+
+	return
 }
 
 // GetTargetItemList 获取指标列表数据