|
@@ -31,6 +31,9 @@ type PythonBloombergGeneralData struct {
|
|
|
DL_SNAPSHOT_START_TIME string `json:"DL_SNAPSHOT_START_TIME" description:"数据日期"`
|
|
|
LAST_UPDATE string `json:"LAST_UPDATE" description:"IDpcsgDailySnap0000和IDpcsgDailySnap0330判断用的"`
|
|
|
PX_CLOSE_DT string `json:"PX_CLOSE_DT" description:"数据日期"`
|
|
|
+ LAST_UPDATE_DT string `json:"LAST_UPDATE_DT" description:"数据日期"`
|
|
|
+ HEATING_DAYS *float64 `json:"HEATING_DAYS" description:"数据值, 可能为null"`
|
|
|
+ COOLING_DAYS *float64 `json:"COOLING_DAYS" description:"数据值, 可能为null"`
|
|
|
}
|
|
|
|
|
|
// PythonBloombergGeneralResult API响应体
|
|
@@ -126,3 +129,68 @@ func FormatPythonBloombergGeneralData2Base(origin PythonBloombergGeneralData, fr
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+func FormatPythonBloombergDailyRun11Data2Base(origin PythonBloombergGeneralData, frequency, taskKey string) (items []BaseFromBloombergApiIndexAndData) {
|
|
|
+ if origin.IDENTIFIER == "" {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if origin.LAST_UPDATE_DT == "" {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ dataTime, err := time.ParseInLocation(utils.FormatDate, origin.LAST_UPDATE_DT, time.Local)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ items = make([]BaseFromBloombergApiIndexAndData, 0)
|
|
|
+ // WER1UK00 Index, WER1UK00 Index HDD, WER1UK00 Index CDD
|
|
|
+ item := BaseFromBloombergApiIndexAndData{}
|
|
|
+ item.IndexCode = strings.TrimSpace(origin.IDENTIFIER)
|
|
|
+ item.IndexName = strings.TrimSpace(origin.NAME)
|
|
|
+ item.Frequency = frequency
|
|
|
+ item.Unit = "无"
|
|
|
+ item.Data = make([]BaseFromBloombergApiIndexData, 0)
|
|
|
+
|
|
|
+ itemHDD := BaseFromBloombergApiIndexAndData{}
|
|
|
+ itemHDD.IndexCode = strings.TrimSpace(origin.IDENTIFIER)
|
|
|
+ itemHDD.IndexCode = fmt.Sprintf("%s HDD", itemHDD.IndexCode)
|
|
|
+ itemHDD.IndexName = strings.TrimSpace(origin.NAME)
|
|
|
+ itemHDD.IndexName = fmt.Sprintf("%s HDD", itemHDD.IndexName)
|
|
|
+ itemHDD.Frequency = frequency
|
|
|
+ itemHDD.Unit = "无"
|
|
|
+ itemHDD.Data = make([]BaseFromBloombergApiIndexData, 0)
|
|
|
+
|
|
|
+ itemCDD := BaseFromBloombergApiIndexAndData{}
|
|
|
+ itemCDD.IndexCode = strings.TrimSpace(origin.IDENTIFIER)
|
|
|
+ itemCDD.IndexCode = fmt.Sprintf("%s CDD", itemCDD.IndexCode)
|
|
|
+ itemCDD.IndexName = strings.TrimSpace(origin.NAME)
|
|
|
+ itemCDD.IndexName = fmt.Sprintf("%s CDD", itemCDD.IndexName)
|
|
|
+ itemCDD.Frequency = frequency
|
|
|
+ itemCDD.Unit = "无"
|
|
|
+ itemCDD.Data = make([]BaseFromBloombergApiIndexData, 0)
|
|
|
+
|
|
|
+ // 数据来源的值和日期对应字段不同
|
|
|
+ if origin.PX_LAST != nil {
|
|
|
+ val := origin.PX_LAST
|
|
|
+ item.Data = append(item.Data, BaseFromBloombergApiIndexData{
|
|
|
+ DataTime: dataTime,
|
|
|
+ Value: *val,
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ if origin.HEATING_DAYS != nil {
|
|
|
+ val := origin.HEATING_DAYS
|
|
|
+ itemHDD.Data = append(itemHDD.Data, BaseFromBloombergApiIndexData{
|
|
|
+ DataTime: dataTime,
|
|
|
+ Value: *val,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if origin.COOLING_DAYS != nil {
|
|
|
+ val := origin.COOLING_DAYS
|
|
|
+ itemCDD.Data = append(itemCDD.Data, BaseFromBloombergApiIndexData{
|
|
|
+ DataTime: dataTime,
|
|
|
+ Value: *val,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ items = append(items, item, itemHDD, itemCDD)
|
|
|
+ return
|
|
|
+}
|