You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

211 lines
7.1 KiB

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Model
{
public class Animal
{
public string Nom { get; set; }
public string DateNaissance { get; set; }
public string Sexe { get; set; }
public string DateAdoption { get; set; }
public float? Taille { get; set; }
public float? Poids { get; set; }
public string Alimentation { get; set; }
public Espece Espece { get; set; }
public Race? Race { get; set; }
public Animal(Espece espece, string nom, string dateNaissance = "", string sexe = "", string dateAdpotion = "", float? taille = null, float? poids = null, string alimentation = "", Race? race = null)
{
Espece = espece;
Nom = nom;
DateNaissance = dateNaissance;
Sexe = sexe;
DateAdoption = dateAdpotion;
Taille = taille;
Poids = poids;
Alimentation = alimentation;
Race = race;
}
public void AfficherAnimal(Zootheque zootheque, Especetheque especetheque)
{
Console.Clear();
while (true)
{
Console.WriteLine("\n" + Nom);
Console.WriteLine("\tEspece : " + Espece.Nom);
if (Race != null) Console.WriteLine("\tRace : " + Race.Nom);
Console.WriteLine("\tDate de naissance : " + DateNaissance);
Console.WriteLine("\tSexe : " + Sexe);
Console.WriteLine("\tDate d'adoption : " + DateAdoption);
Console.WriteLine("\tTaille : " + Taille);
Console.WriteLine("\tPoids : " + Poids);
Console.WriteLine("\tAlimentation : " + Alimentation);
Console.WriteLine("\n\t1- Modifier");
Console.WriteLine("\t2- Supprimer");
Console.WriteLine("\t9- Retour");
Console.Write("\n\tEntrer votre choix : ");
int decision = Convert.ToInt32(Console.ReadLine());
switch (decision)
{
case 1:
ModifierAnimal(especetheque);
break;
case 2:
zootheque.SupprimerAnimal(this);
return;
case 9:
return;
default:
Console.WriteLine("\tChoix incorrect\n");
break;
}
}
}
public void ModifierNom()
{
while(Nom == "")
{
Console.Write("\tNom : ");
Nom = Console.ReadLine();
}
}
public void ModifierEspece(Especetheque especetheque)
{
Espece? espece = null;
while (espece == null)
{
Console.Write("\tEspèce : ");
string nomEspece = Console.ReadLine();
espece = especetheque.RechercherEspece(nomEspece);
if (espece == null)
{
Console.WriteLine("Espece inconnue\n");
}
}
Espece = espece;
}
public void ModifierSexe()
{
string sexe = "sexe";
while(sexe != "Male" && sexe != "Femelle" && sexe != "")
{
Console.Write("\tSexe [Male|Femelle|] (appuyer sur entrer pour passer) : ");
sexe = Console.ReadLine();
}
Sexe = sexe;
}
public void ModifierTaille()
{
Console.Write("\tTaille (appuyer sur entrer pour passer) : ");
string taille = Console.ReadLine();
if (taille == "") Taille = null;
else Taille = Single.Parse(taille);
}
public void ModifierPoids()
{
Console.Write("\tPoids (appuyer sur entrer pour passer) : ");
string poids = Console.ReadLine();
if (poids == "") Poids = null;
else Poids = Single.Parse(poids);
}
public void ModifierAlimentation()
{
Console.Write("\tAlimentation (appuyer sur entrer pour passer) : ");
Alimentation = Console.ReadLine();
}
public void ModifierDateNaissance()
{
Console.Write("\tDate de naissance (appuyer sur entrer pour passer) : ");
DateNaissance = Console.ReadLine();
}
public void ModifierDateAdoption()
{
Console.Write("\tDate d'adoption (appuyer sur entrer pour passer) : ");
DateAdoption = Console.ReadLine();
}
public void ModifierRace()
{
Console.Write("\tRace (appuyer sur entrer pour passer) : ");
string nomRace = Console.ReadLine();
Race = Espece.RechercherRace(nomRace);
}
public void ModifierAnimal(Especetheque especetheque)
{
while (true)
{
Console.WriteLine("MODIFIER L'ANIMAL ", Nom);
Console.WriteLine("\t1- Nom");
Console.WriteLine("\t2- Espece");
Console.WriteLine("\t3- Race");
Console.WriteLine("\t4- Date de naissance");
Console.WriteLine("\t5- Sexe");
Console.WriteLine("\t6- Date d'adoption");
Console.WriteLine("\t7- Taille");
Console.WriteLine("\t8- Poids");
Console.WriteLine("\t9- Alimentation");
Console.WriteLine("\t19- Retour");
Console.Write("\n\tEntrer votre choix : ");
int decision = Convert.ToInt32(Console.ReadLine());
switch (decision)
{
case 1:
ModifierNom();
break;
case 2:
ModifierEspece(especetheque);
break;
case 3:
ModifierRace();
break;
case 4:
ModifierDateNaissance();
break;
case 5:
ModifierSexe();
break;
case 6:
ModifierDateAdoption();
break;
case 7:
ModifierTaille();
break;
case 8:
ModifierPoids();
break;
case 9:
ModifierAlimentation();
break;
case 19:
return;
default:
Console.WriteLine("\tChoix incorrect\n");
break;
}
}
}
}
}