|
|
|
@ -10,6 +10,9 @@ using System.Runtime.CompilerServices;
|
|
|
|
|
|
|
|
|
|
namespace MangaMap.Model
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Représente une oeuvre dans le système de gestion de listes d'anime.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataContract]
|
|
|
|
|
public class Oeuvre : INotifyPropertyChanged
|
|
|
|
|
{
|
|
|
|
@ -18,17 +21,36 @@ namespace MangaMap.Model
|
|
|
|
|
void OnPropertyChanged([CallerMemberName] string propertyName = null)
|
|
|
|
|
=> PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit le nom de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public string Nom { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit les genres de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public List<string> Genre { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit le type de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public string Type { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit la description de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public string Description { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit la note de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public int Note {
|
|
|
|
|
public int Note
|
|
|
|
|
{
|
|
|
|
|
get => note;
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
@ -40,11 +62,28 @@ namespace MangaMap.Model
|
|
|
|
|
}
|
|
|
|
|
private int note;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit le nombre d'épisodes de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public int NbEpisodes { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Obtient ou définit l'affiche de l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataMember]
|
|
|
|
|
public string Affiche { get; private set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initialise une nouvelle instance de la classe Oeuvre avec les informations spécifiées.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="nom">Le nom de l'oeuvre.</param>
|
|
|
|
|
/// <param name="genre">Les genres de l'oeuvre.</param>
|
|
|
|
|
/// <param name="type">Le type de l'oeuvre.</param>
|
|
|
|
|
/// <param name="description">La description de l'oeuvre.</param>
|
|
|
|
|
/// <param name="note">La note de l'oeuvre.</param>
|
|
|
|
|
/// <param name="nbEpisode">Le nombre d'épisodes de l'oeuvre.</param>
|
|
|
|
|
/// <param name="affiche">L'affiche de l'oeuvre.</param>
|
|
|
|
|
public Oeuvre(string nom, List<string> genre, string type, string description, int note, int nbEpisode, string affiche)
|
|
|
|
|
{
|
|
|
|
|
Nom = nom;
|
|
|
|
@ -56,6 +95,14 @@ namespace MangaMap.Model
|
|
|
|
|
Affiche = affiche;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Initialise une nouvelle instance de la classe Oeuvre avec les informations spécifiées.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="nom">Le nom de l'oeuvre.</param>
|
|
|
|
|
/// <param name="type">Le type de l'oeuvre.</param>
|
|
|
|
|
/// <param name="description">La description de l'oeuvre.</param>
|
|
|
|
|
/// <param name="nbEpisode">Le nombre d'épisodes de l'oeuvre.</param>
|
|
|
|
|
/// <param name="affiche">L'affiche de l'oeuvre.</param>
|
|
|
|
|
public Oeuvre(string nom, string type, string description, int nbEpisode, string affiche)
|
|
|
|
|
{
|
|
|
|
|
Nom = nom;
|
|
|
|
@ -65,6 +112,10 @@ namespace MangaMap.Model
|
|
|
|
|
Affiche = affiche;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Méthode permettant d'ajouter un certain nombre d'épisodes à l'oeuvre.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="nb">Le nombre d'épisodes à ajouter.</param>
|
|
|
|
|
public void AjouterEpisode(int nb)
|
|
|
|
|
{
|
|
|
|
|
NbEpisodes = NbEpisodes + nb;
|
|
|
|
|