Răsfoiți Sursa

Merge remote-tracking branch 'origin/feature/eta_zsh' into feature/eta_zsh

Roc 1 lună în urmă
părinte
comite
f2c2dfc558
2 a modificat fișierele cu 25 adăugiri și 1 ștergeri
  1. 20 1
      models/data_manage/edb_info.go
  2. 5 0
      services/data/stl/stl.go

+ 20 - 1
models/data_manage/edb_info.go

@@ -654,6 +654,13 @@ type EdbData struct {
 	Value     float64
 }
 
+type EdbDataOrm struct {
+	EdbDataId int `orm:"column(edb_data_id);pk"`
+	EdbInfoId int
+	DataTime  time.Time
+	Value     float64
+}
+
 type EdbInfoListResp struct {
 	Paging       *paging.PagingItem
 	Item         *EdbInfoList
@@ -730,6 +737,7 @@ func toEdbDataList(ormList []*EdbDataORM) (dataList []*EdbData) {
 
 // GetAllEdbDataListByCondition 根据条件获取所有的数据
 func GetAllEdbDataListByCondition(condition string, pars []interface{}, source, subSource int) (item []*EdbData, err error) {
+	itemsOrm := make([]*EdbDataOrm, 0)
 	o := orm.NewOrmUsingDB("data")
 	tableName := GetEdbDataTableName(source, subSource)
 	sql := ` SELECT * FROM %s WHERE 1=1 `
@@ -739,7 +747,18 @@ func GetAllEdbDataListByCondition(condition string, pars []interface{}, source,
 		sql += condition
 	}
 	sql += ` ORDER BY data_time DESC `
-	_, err = o.Raw(sql, pars).QueryRows(&item)
+	_, err = o.Raw(sql, pars).QueryRows(&itemsOrm)
+	if err != nil {
+		return
+	}
+	for _, v := range itemsOrm {
+		dataItem := new(EdbData)
+		dataItem.EdbDataId = v.EdbDataId
+		dataItem.EdbInfoId = v.EdbInfoId
+		dataItem.DataTime = v.DataTime.Format(utils.FormatDate)
+		dataItem.Value = v.Value
+		item = append(item, dataItem)
+	}
 	return
 }
 

+ 5 - 0
services/data/stl/stl.go

@@ -97,6 +97,11 @@ func GenerateStlEdbData(req *request.StlConfigReq, adminId int) (resp *response.
 		return
 	}
 
+	if len(edbData) <= 0 {
+		msg = "所选指标时间序列不存在数据,请重新选择"
+		return
+	}
+
 	var condMsg string
 	if confReq.Period < 2 || confReq.Period > len(edbData) {
 		condMsg += "period必须是一个大于等于2的正整数,且必须小于时间序列的长度"