Present outlook discussions in responses

This commit is contained in:
2026-06-12 13:00:11 +00:00
parent fa1b2cb390
commit 1f2459923f
3 changed files with 61 additions and 0 deletions

View File

@@ -22,10 +22,14 @@ func OutlookRunPayload(run *model.WeatherOutlookRun, _ Units, tz *time.Location)
AsOf: inLocationTime(run.AsOf, tz),
IssuedAt: inLocationTimePtr(run.IssuedAt, tz),
Outlooks: make([]model.WeatherOutlook, 0, len(run.Outlooks)),
Discussions: make([]model.WeatherOutlookDiscussion, 0, len(run.Discussions)),
}
for _, outlook := range run.Outlooks {
out.Outlooks = append(out.Outlooks, copyOutlook(outlook, tz))
}
for _, discussion := range run.Discussions {
out.Discussions = append(out.Discussions, copyOutlookDiscussion(discussion, tz))
}
return &out
}
@@ -54,6 +58,16 @@ func copyOutlook(outlook model.WeatherOutlook, tz *time.Location) model.WeatherO
return out
}
func copyOutlookDiscussion(discussion model.WeatherOutlookDiscussion, tz *time.Location) model.WeatherOutlookDiscussion {
return model.WeatherOutlookDiscussion{
Day: discussion.Day,
Headline: discussion.Headline,
Summary: discussion.Summary,
Discussion: discussion.Discussion,
UpdatedAt: inLocationTimePtr(discussion.UpdatedAt, tz),
}
}
func copyIntPtr(v *int) *int {
if v == nil {
return nil