Browse Source

Merge branch 'aj_wind_wsd' into debug

tuoling805 1 year ago
parent
commit
c08de81667
2 changed files with 21 additions and 0 deletions
  1. 20 0
      models/base_from_wind_wsd.go
  2. 1 0
      models/edb_info.go

+ 20 - 0
models/base_from_wind_wsd.go

@@ -17,6 +17,7 @@ func AddEdbDataFromWindWsd(stockCode string, item map[string]map[string]interfac
 	var isAdd bool
 	addSql := ` INSERT INTO edb_data_wind_wsd(edb_info_id,edb_code,data_time,value,create_time,modify_time,data_timestamp) values `
 
+	indexCodeMap := make(map[string]string)
 	for wk, wv := range item {
 		for vk, vv := range wv {
 			var indexCode string
@@ -29,6 +30,8 @@ func AddEdbDataFromWindWsd(stockCode string, item map[string]map[string]interfac
 			vk = strings.ToLower(vk)
 			indexCode = windWsd + stockCode + vk
 
+			indexCodeMap[indexCode] = indexCode
+
 			wkInt = wkInt / 1000
 			t := time.Unix(wkInt, 0)
 			if t.After(time.Now()) {
@@ -62,6 +65,23 @@ func AddEdbDataFromWindWsd(stockCode string, item map[string]map[string]interfac
 	}
 
 	if isAdd {
+
+		for _, v := range indexCodeMap {
+			var count int
+			sql := ` SELECT COUNT(1) FROM edb_data_wind_wsd WHERE edb_code=? `
+			err = o.Raw(sql, v).QueryRow(&count)
+			if err != nil {
+				return err
+			}
+			if count > 0 {
+				sql = ` DELETE FROM edb_data_wind_wsd WHERE edb_code=? `
+				_, err = o.Raw(sql, v).Exec()
+				if err != nil {
+					return err
+				}
+			}
+		}
+
 		addSql = strings.TrimRight(addSql, ",")
 		_, err = o.Raw(addSql).Exec()
 		if err != nil {

+ 1 - 0
models/edb_info.go

@@ -170,6 +170,7 @@ type EdbInfoSearchData struct {
 	EdbDataId int     `description:"数据ID"`
 	DataTime  string  `description:"数据日期"`
 	Value     float64 `description:"数据"`
+	EdbCode   string  `description:"指标编码"`
 }
 
 // GetEdbDataListAll 获取指标数据列表 order:1升序,其余值为降序