Compare commits

..

No commits in common. "17d4dca0c90bd1dff98c10e82912f9fbb90a15c9" and "4418e009e0fd6a468d1e1fa7f00bec3a879d7912" have entirely different histories.

3 changed files with 5 additions and 20 deletions

View File

@ -14,7 +14,7 @@ import (
"github.com/zepyrshut/rating-orama/internal/repository" "github.com/zepyrshut/rating-orama/internal/repository"
) )
const version = "0.2.3-beta.20250128-27" const version = "0.2.2-beta.20250128-25"
const appName = "rating-orama" const appName = "rating-orama"
func init() { func init() {

View File

@ -26,7 +26,6 @@ func (hq *Handlers) GetTVShow(c *fiber.Ctx) error {
var title string var title string
var scraperEpisodes []scraper.Episode var scraperEpisodes []scraper.Episode
var sqlcTvShow sqlc.TvShow
var sqlcEpisodes []sqlc.Episode var sqlcEpisodes []sqlc.Episode
var totalVoteCount int32 var totalVoteCount int32
@ -34,7 +33,7 @@ func (hq *Handlers) GetTVShow(c *fiber.Ctx) error {
if err != nil { if err != nil {
title, scraperEpisodes = scraper.ScrapeEpisodes(ttShowID) title, scraperEpisodes = scraper.ScrapeEpisodes(ttShowID)
//TODO: make transactional //TODO: make transactional
sqlcTvShow, err = hq.queries.CreateTVShow(c.Context(), sqlc.CreateTVShowParams{ ttShow, err := hq.queries.CreateTVShow(c.Context(), sqlc.CreateTVShowParams{
TtImdb: ttShowID, TtImdb: ttShowID,
Name: title, Name: title,
}) })
@ -43,15 +42,14 @@ func (hq *Handlers) GetTVShow(c *fiber.Ctx) error {
return c.SendStatus(http.StatusInternalServerError) return c.SendStatus(http.StatusInternalServerError)
} }
slog.Info("ttshowid", "id", sqlcTvShow.ID) slog.Info("ttshowid", "id", ttShow.ID)
for _, episode := range scraperEpisodes { for _, episode := range scraperEpisodes {
sqlcEpisodesParams := episode.ToEpisodeParams(sqlcTvShow.ID) sqlcEpisodesParams := episode.ToEpisodeParams(ttShow.ID)
sqlcEpisode, err := hq.queries.CreateEpisodes(c.Context(), sqlcEpisodesParams) sqlcEpisode, err := hq.queries.CreateEpisodes(c.Context(), sqlcEpisodesParams)
if err != nil { if err != nil {
slog.Error("failed to create episodes", "ttid", ttShowID, "error", err) slog.Error("failed to create episodes", "ttid", ttShowID, "error", err)
return c.SendStatus(http.StatusInternalServerError) return c.SendStatus(http.StatusInternalServerError)
} }
totalVoteCount += int32(episode.VoteCount)
sqlcEpisodes = append(sqlcEpisodes, sqlcEpisode) sqlcEpisodes = append(sqlcEpisodes, sqlcEpisode)
} }
@ -78,6 +76,7 @@ func (hq *Handlers) GetTVShow(c *fiber.Ctx) error {
return c.SendStatus(http.StatusInternalServerError) return c.SendStatus(http.StatusInternalServerError)
} }
// calculate avg rating for the show
avgRatingShow, err := hq.queries.TvShowAverageRating(c.Context(), sqlcTvShow.ID) avgRatingShow, err := hq.queries.TvShowAverageRating(c.Context(), sqlcTvShow.ID)
if err != nil { if err != nil {
slog.Error("failed to calculate avg rating for the show", "ttid", ttShowID, "error", err) slog.Error("failed to calculate avg rating for the show", "ttid", ttShowID, "error", err)

View File

@ -4,23 +4,10 @@ services:
core: core:
container_name: rating-orama container_name: rating-orama
image: rating-orama:latest image: rating-orama:latest
depends_on:
db:
condition: service_started
environment: environment:
DRIVERNAME: pgx DRIVERNAME: pgx
DATASOURCE: postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?sslmode=disable DATASOURCE: postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?sslmode=disable
MIGRATE: true MIGRATE: true
TITLE_SELECTOR: ${TITLE_SELECTOR}
SEASON_SELECTOR: ${SEASON_SELECTOR}
EPISODE_CARD_SELECTOR: ${EPISODE_CARD_SELECTOR}
SEASON_EPISODE_AND_TITLE_SELECTOR: ${SEASON_EPISODE_AND_TITLE_SELECTOR}
RELEASED_DATE_SELECTOR: ${RELEASED_DATE_SELECTOR}
PLOT_SELECTOR: ${PLOT_SELECTOR}
STAR_RATING_SELECTOR: ${STAR_RATING_SELECTOR}
VOTE_COUNT_SELECTOR: ${VOTE_COUNT_SELECTOR}
IMDB_EPISODES_URL: ${IMDB_EPISODES_URL}
VISIT_URL: ${VISIT_URL}
ports: ports:
- "8086:8080" - "8086:8080"
networks: networks:
@ -42,4 +29,3 @@ networks:
volumes: volumes:
ratingorama_data: ratingorama_data: