list daily weathers 구현

This commit is contained in:
2025-12-08 23:26:03 +09:00
parent e3494e5041
commit 66db03dc24
5 changed files with 120 additions and 0 deletions

View File

@@ -3,6 +3,7 @@ package gorm
import (
"context"
"fmt"
"time"
"github.com/neatflowcv/seven-skies/internal/pkg/domain"
"github.com/neatflowcv/seven-skies/internal/pkg/repository"
@@ -42,3 +43,17 @@ func (r *Repository) CreateWeather(ctx context.Context, weather *domain.Weather)
return nil
}
func (r *Repository) ListWeathers(ctx context.Context, from, to time.Time) ([]*domain.Weather, error) {
weathers, err := gorm.G[*Weather](r.db).Where("target_date BETWEEN ? AND ?", from, to).Find(ctx)
if err != nil {
return nil, fmt.Errorf("failed to list weathers: %w", err)
}
var ret []*domain.Weather
for _, weather := range weathers {
ret = append(ret, weather.toDomain())
}
return ret, nil
}