lampac-ukraine/LME.UAKino/Models/UAKinoModels.cs
Felix a54bc0e435 refactor(uakino): restructure search results into grouped season entries
Replace flat search result handling with a grouped model where each show
contains a list of season entries, enabling deterministic serial flow for
single-show and multi-season matches.

Update controller logic to branch serial/movie processing against grouped
results, add explicit season selection handling, and reuse selected season
URLs on follow-up requests.

Adjust search parsing to collect raw items, filter non-content entries, and
group by normalized show identity before caching, removing early year-based
filtering from cached returns.
2026-05-15 19:05:01 +03:00

38 lines
1.1 KiB
C#

using System.Collections.Generic;
namespace LME.UAKino.Models
{
public class SearchResult
{
public string Title { get; set; }
public string OriginalTitle { get; set; }
public string Poster { get; set; }
/// <summary>Сезони серіалу. Для фільмів — один елемент без SeasonNumber</summary>
public List<SeasonEntry> Seasons { get; set; } = new();
/// <summary>Рік фільму (тільки для не-сезонних результатів)</summary>
public int? Year { get; set; }
}
public class SeasonEntry
{
public int SeasonNumber { get; set; }
public string NewsId { get; set; }
public string Url { get; set; }
public int? Year { get; set; }
}
public class VoiceGroup
{
public string Name { get; set; }
public string DataId { get; set; }
public List<EpisodeItem> Episodes { get; set; } = new();
}
public class EpisodeItem
{
public string Title { get; set; }
public string FileUrl { get; set; }
public int? EpisodeNumber { get; set; }
}
}