Classe Pet
public Pet(string nome, int idade, string raca, string sexo)
{
Nome = nome;
Idade = idade;
Raca = raca;
Sexo = sexo;
}
public string Nome { get; set; }
public int Idade { get; set; }
public string Raca { get; set; }
public string Sexo { get; set; }
public Dono DonoPet { get; set; }
public List<int> ConsultasAgendadas = new List<int>();
public void Detalhes()
{
Console.WriteLine($"{Raca} de nome {Nome}. Responsável: {DonoPet.Nome}");
Console.WriteLine($"Consultas agendadas: {ConsultasAgendadas.Count}");
}
}
Classe Dono
public class Dono
{
public Dono(string nome)
{
Nome = nome;
}
public string Nome { get; set; }
public List<Pet> Pets = new List<Pet>();
public void AdotarPet(Pet pet)
{
Pets.Add(pet);
pet.DonoPet = this;
}
public void TodosPets()
{
foreach (Pet pet in Pets)
{
Console.WriteLine(pet.Nome);
}
}
}
Classe Medico
public class Medico
{
public Medico(string nome)
{
Nome = nome;
}
public string Nome { get; set; }
}
Classe Consulta
public class Consulta
{
public Consulta(Pet paciente, Medico medico, string data)
{
Paciente = paciente;
MedicoResponsavel = medico;
Data = DateTime.Parse(data);
ConsultaAgendada = true;
paciente.ConsultasAgendadas.Add(0);
}
public Pet Paciente { get; set; }
public Medico MedicoResponsavel { get; set; }
public DateTime Data { get; set; }
protected bool ConsultaAgendada { get; set; }
public void DesmarcarConsulta(Pet paciente)
{
ConsultaAgendada = false;
paciente.ConsultasAgendadas.Remove(0);
Console.WriteLine("Consulta desmarcada!");
}