feat(api): expose series and season on episodes

This commit is contained in:
Miguel Palhas
2026-08-23 20:44:28 +01:00
parent 4762f2612f
commit 06a68372e6
+8
View File
@@ -107,7 +107,11 @@ pub struct Season {
#[derive(Debug, Clone, Serialize, ToSchema)]
pub struct Episode {
pub id: i64,
/// The owning series — the episode deck route needs it without walking
/// seasons first.
pub series_id: i64,
pub season_id: i64,
pub season_number: i64,
pub number: i64,
pub title: String,
pub air_date: Option<String>,
@@ -660,7 +664,9 @@ async fn load_seasons(state: &AppState, series_id: i64) -> Result<Vec<Season>, A
.filter(|episode| episode.season_id == season.id)
.map(|episode| Episode {
id: episode.id,
series_id,
season_id: episode.season_id,
season_number: episode.season_number,
number: episode.number,
title: episode.title.clone(),
air_date: episode.air_date.clone(),
@@ -881,7 +887,9 @@ async fn load_episode(state: &AppState, id: i64) -> Result<Episode, ApiError> {
.ok_or(ApiError::EpisodeNotFound)?;
Ok(Episode {
id: row.id,
series_id: row.series_id,
season_id: row.season_id,
season_number: row.season_number,
number: row.number,
title: row.title,
air_date: row.air_date,