diff --git a/api/api.gen.go b/api/api.gen.go index 9adc19d..ebb4c01 100644 --- a/api/api.gen.go +++ b/api/api.gen.go @@ -94,8 +94,8 @@ type GetTitleParams struct { Rating *float64 `form:"rating,omitempty" json:"rating,omitempty"` ReleaseYear *int32 `form:"release_year,omitempty" json:"release_year,omitempty"` ReleaseSeason *ReleaseSeason `form:"release_season,omitempty" json:"release_season,omitempty"` - Limit *int `form:"limit,omitempty" json:"limit,omitempty"` - Offset *int `form:"offset,omitempty" json:"offset,omitempty"` + Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"` + Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"` Fields *string `form:"fields,omitempty" json:"fields,omitempty"` } diff --git a/api/openapi.yaml b/api/openapi.yaml index c899595..200cc47 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -35,11 +35,13 @@ paths: name: limit schema: type: integer + format: int32 default: 10 - in: query name: offset schema: type: integer + format: int32 default: 0 - in: query name: fields diff --git a/modules/backend/handlers/titles.go b/modules/backend/handlers/titles.go index 85f9f45..99217ca 100644 --- a/modules/backend/handlers/titles.go +++ b/modules/backend/handlers/titles.go @@ -57,21 +57,25 @@ func ReleaseSeason2sqlc(s *oapi.ReleaseSeason) (*sqlc.ReleaseSeasonT, error) { return &t, nil } +type TileNames *map[string][]string + // unmarshall jsonb to map[string][]string -func jsonb2map4names(b []byte) (*map[string][]string, error) { - var t map[string][]string - if err := json.Unmarshal(b, &t); err != nil { +func jsonb2TitleNames(b []byte) (TileNames, error) { + var t TileNames + if err := json.Unmarshal(b, t); err != nil { return nil, fmt.Errorf("invalid title_names JSON for title: %w", err) } - return &t, nil + return t, nil } -func jsonb2map4len(b []byte) (*map[string]float64, error) { - var t map[string]float64 - if err := json.Unmarshal(b, &t); err != nil { +type EpisodeLens *map[string]float64 + +func jsonb2EpisodeLens(b []byte) (EpisodeLens, error) { + var t EpisodeLens + if err := json.Unmarshal(b, t); err != nil { return nil, fmt.Errorf("invalid episodes_len JSON for title: %w", err) } - return &t, nil + return t, nil } func (s Server) GetTitle(ctx context.Context, request oapi.GetTitleRequestObject) (oapi.GetTitleResponseObject, error) { @@ -95,6 +99,8 @@ func (s Server) GetTitle(ctx context.Context, request oapi.GetTitleRequestObject Rating: request.Params.Rating, ReleaseYear: request.Params.ReleaseYear, ReleaseSeason: season, + Offset: request.Params.Offset, + Limit: request.Params.Limit, }) if err != nil { return oapi.GetTitle500Response{}, nil @@ -104,12 +110,12 @@ func (s Server) GetTitle(ctx context.Context, request oapi.GetTitleRequestObject } for _, title := range titles { - title_names, err := jsonb2map4names(title.TitleNames) + title_names, err := jsonb2TitleNames(title.TitleNames) if err != nil { log.Errorf("%v", err) return oapi.GetTitle500Response{}, err } - episodes_lens, err := jsonb2map4len(title.EpisodesLen) + episodes_lens, err := jsonb2EpisodeLens(title.EpisodesLen) if err != nil { log.Errorf("%v", err) return oapi.GetTitle500Response{}, err @@ -122,6 +128,7 @@ func (s Server) GetTitle(ctx context.Context, request oapi.GetTitleRequestObject ReleaseSeason: (*oapi.ReleaseSeason)(title.ReleaseSeason), ReleaseYear: title.ReleaseYear, StudioId: &title.StudioID, + // StudioName: , TitleNames: title_names, TitleStatus: (*oapi.TitleStatus)(&title.TitleStatus), EpisodesAired: title.EpisodesAired,