mirror of
https://github.com/lampame/lampac-ukraine.git
synced 2026-06-17 12:08:54 +00:00
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.
38 lines
1.1 KiB
C#
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; }
|
|
}
|
|
}
|