|
@@ -108,7 +108,7 @@ func (c *ManualEdbController) EdbDetail() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- manualEdbInfo.NextDataTimeList = dataNextDateTime
|
|
|
+ manualEdbInfo.DataList = dataNextDateTime
|
|
|
}
|
|
|
|
|
|
resp := models.TargetDetailResp{
|
|
@@ -123,50 +123,40 @@ func (c *ManualEdbController) EdbDetail() {
|
|
|
}
|
|
|
|
|
|
// 封装指标数据下期时间
|
|
|
-func fillDataNextDateTime(list []*models.Edbdata) ([]*models.EdbDataNextDateTime, error) {
|
|
|
- var nextDataDateTimeList []*models.EdbDataNextDateTime
|
|
|
- var indexCodes []string
|
|
|
- for _, item := range list {
|
|
|
- indexCodes = append(indexCodes, item.TradeCode)
|
|
|
+func fillDataNextDateTime(list []*models.Edbdata) ([]*models.Edbdata, error) {
|
|
|
+ if len(list) == 0 {
|
|
|
+ return nil, nil
|
|
|
}
|
|
|
+ nextDataDateTime := models.Edbdata{}
|
|
|
+ indexCodes := []string{list[0].TradeCode}
|
|
|
edbinfoList, err := models.GetEdbinfoListByCodeListByCodeIdList(indexCodes)
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
|
}
|
|
|
- edbinfoMap := make(map[string]*models.Edbinfo)
|
|
|
- for _, item := range edbinfoList {
|
|
|
- edbinfoMap[item.TradeCode] = item
|
|
|
- }
|
|
|
-
|
|
|
- for _, item := range list {
|
|
|
- nextDataDateTime := &models.EdbDataNextDateTime{
|
|
|
- TradeCode: item.TradeCode,
|
|
|
- Dt: item.Dt,
|
|
|
- Close: item.Close,
|
|
|
- ModifyTime: item.ModifyTime,
|
|
|
- }
|
|
|
-
|
|
|
- date := utils.StrDateToDate(item.Dt)
|
|
|
- frequency := edbinfoMap[item.TradeCode].Frequency
|
|
|
- switch frequency {
|
|
|
- case "日度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 0, 1).Format(utils.FormatDate)
|
|
|
- case "周度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 0, 7).Format(utils.FormatDate)
|
|
|
- case "旬度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 0, 10).Format(utils.FormatDate)
|
|
|
- case "月度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 1, 0).Format(utils.FormatDate)
|
|
|
- case "季度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 3, 0).Format(utils.FormatDate)
|
|
|
- case "半年度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(0, 6, 0).Format(utils.FormatDate)
|
|
|
- case "年度":
|
|
|
- nextDataDateTime.NextDateTime = date.AddDate(1, 0, 0).Format(utils.FormatDate)
|
|
|
- }
|
|
|
- nextDataDateTimeList = append(nextDataDateTimeList, nextDataDateTime)
|
|
|
- }
|
|
|
- return nextDataDateTimeList, nil
|
|
|
+ if len(edbinfoList) == 0 {
|
|
|
+ return list, nil
|
|
|
+ }
|
|
|
+
|
|
|
+ date := utils.StrDateToDate(list[0].Dt)
|
|
|
+ frequency := edbinfoList[0].Frequency
|
|
|
+ switch frequency {
|
|
|
+ case "日度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 0, 1).Format(utils.FormatDate)
|
|
|
+ case "周度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 0, 7).Format(utils.FormatDate)
|
|
|
+ case "旬度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 0, 10).Format(utils.FormatDate)
|
|
|
+ case "月度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 1, 0).Format(utils.FormatDate)
|
|
|
+ case "季度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 3, 0).Format(utils.FormatDate)
|
|
|
+ case "半年度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(0, 6, 0).Format(utils.FormatDate)
|
|
|
+ case "年度":
|
|
|
+ nextDataDateTime.Dt = date.AddDate(1, 0, 0).Format(utils.FormatDate)
|
|
|
+ }
|
|
|
+ list = append(list, &nextDataDateTime)
|
|
|
+ return list, nil
|
|
|
}
|
|
|
|
|
|
// ClassifyEdbList
|