Browse Source

数据源-睿咨得

kobe6258 3 months ago
parent
commit
dd0fd3e855
2 changed files with 43 additions and 7 deletions
  1. 1 1
      controllers/base_from_rzd.go
  2. 42 6
      models/base_from_rzd_data.go

+ 1 - 1
controllers/base_from_rzd.go

@@ -711,7 +711,7 @@ func (this *BaseFromRzdController) UpdateRzdEdbData() {
 		return
 	}
 	if edbInfo.EdbInfoId > 0 {
-		err = models.UpdateRzdEdbDataByIndexCodeAndDataTime(req.BaseFromRzdIndexId, req.DataTime, req.Value)
+		err = models.UpdateRzdEdbDataByIndexCodeAndDataTime(req.BaseFromRzdIndexId, req.DataTime.Format(utils.FormatDate), req.Value)
 		if err != nil {
 			return
 		}

+ 42 - 6
models/base_from_rzd_data.go

@@ -5,9 +5,38 @@ import (
 	"errors"
 	"eta/eta_index_lib/utils"
 	"github.com/beego/beego/v2/client/orm"
+	"time"
 )
 
 type BaseFromRzdData struct {
+	BaseFromRzdDataId  int       `orm:"column(base_from_rzd_data_id);pk"`
+	BaseFromRzdIndexId int       `orm:"column(base_from_rzd_index_id)"`
+	CreateTime         time.Time `orm:"column(create_time)"`
+	DataTime           time.Time `orm:"column(data_time)"`
+	IndexCode          string    `orm:"column(index_code)"`
+	ModifyTime         time.Time `orm:"column(modify_time)"`
+	Value              float64   `orm:"column(value)"`
+}
+
+func (t *BaseFromRzdData) toView() BaseFromRzdDataView {
+	return BaseFromRzdDataView{
+		BaseFromRzdDataId:  t.BaseFromRzdDataId,
+		BaseFromRzdIndexId: t.BaseFromRzdIndexId,
+		CreateTime:         t.CreateTime.Format(utils.FormatDateTime),
+		DataTime:           t.DataTime.Format(utils.FormatDate),
+		IndexCode:          t.IndexCode,
+		ModifyTime:         t.ModifyTime.Format(utils.FormatDateTime),
+	}
+}
+
+func toViewList(items []BaseFromRzdData) (viewList []BaseFromRzdDataView) {
+	for _, item := range items {
+		viewList = append(viewList, item.toView())
+	}
+	return
+}
+
+type BaseFromRzdDataView struct {
 	BaseFromRzdDataId  int     `orm:"column(base_from_rzd_data_id);pk"`
 	BaseFromRzdIndexId int     `orm:"column(base_from_rzd_index_id)"`
 	CreateTime         string  `orm:"column(create_time)"`
@@ -29,16 +58,18 @@ func AddRzdDataList(items []BaseFromRzdData) (err error) {
 }
 
 // GetRzdDataByIndexCodeAndDataTime 根据指标id和数据日期查询数据
-func GetRzdDataByIndexCodeAndDataTime(indexCode string, dataTime string) (items BaseFromRzdData, err error) {
+func GetRzdDataByIndexCodeAndDataTime(indexCode string, dataTime string) (item BaseFromRzdDataView, err error) {
 	o := orm.NewOrm()
 	sql := `SELECT * FROM base_from_rzd_data WHERE index_code=? AND data_time=?`
-	err = o.Raw(sql, indexCode, dataTime).QueryRow(&items) // 使用 QueryRow
+	var ormItem BaseFromRzdData
+	err = o.Raw(sql, indexCode, dataTime).QueryRow(&ormItem) // 使用 QueryRow
 	if errors.Is(err, orm.ErrNoRows) {
-		return items, nil
+		return item, nil
 	}
 	if err != nil {
-		return items, err
+		return item, err
 	}
+	item = ormItem.toView()
 	return
 }
 
@@ -51,16 +82,21 @@ func UpdateRzdDataById(dataId int, value float64) (err error) {
 }
 
 // GetBaseFromRzdDataByCondition 添加查询
-func GetBaseFromRzdDataByCondition(condition string, pars []interface{}) (items []BaseFromRzdData, err error) {
+func GetBaseFromRzdDataByCondition(condition string, pars []interface{}) (items []BaseFromRzdDataView, err error) {
 	sql := `SELECT * FROM base_from_rzd_data WHERE 1=1 `
 	o := orm.NewOrm()
 	if condition != "" {
 		sql += condition
 	}
-	_, err = o.Raw(sql, pars...).QueryRows(&items)
+	var ormList []BaseFromRzdData
+	_, err = o.Raw(sql, pars...).QueryRows(&ormList)
 	if errors.Is(err, orm.ErrNoRows) {
 		return nil, nil
 	}
+	if err != nil {
+		return
+	}
+	items = toViewList(ormList)
 	return
 }