Example #1
0
        public bool doarSangue(string idPaciente, string idDoador)
        {
            try
            {
                Doador   doador   = doadores.Find(x => x.getId() == idDoador);
                Paciente paciente = pacientes.Find(x => x.getId() == idPaciente);

                if (doador != null)
                {
                    if (paciente != null)
                    {
                        if (Paciente.compatibilidadeDeSangue(doador.getSangue(), paciente.getSangue()))
                        {
                            Console.WriteLine("\nDoador: " + doador.getNome());
                            Console.WriteLine("Paciente: " + paciente.getNome());

                            doadores.Remove(doador);
                            pacientes.Remove(paciente);

                            string texto = $"Sangue do {doador.getNome()}(Tipo: {doador.getSangue()}) doado para {paciente.getNome()}(tipo: {paciente.getSangue()})";

                            DadoDoacao.SalvarDado(paciente, doador, texto);

                            return(true);
                        }
                        else
                        {
                            throw new ClinicaException("Sangue incompatíveis!");
                        }
                    }
                    else
                    {
                        throw new ClinicaException("Codigo do paciente invalido!");
                    }
                }
                else
                {
                    throw new ClinicaException("Codigo do doador invalido!");
                }
            }

            catch (Exception e)
            {
                Console.WriteLine("Doaçao: " + e.Message);

                return(false);
            }
        }
Example #2
0
        public void imprimirDoaçoes()
        {
            Console.Clear();
            Console.WriteLine("----------------------------------\n");
            //ComunicaoArquivo.leia("registro_doacoes.txt");
            List <string> dados = DadoDoacao.LerDados();

            if (dados != null)
            {
                foreach (string linha in dados)
                {
                    Console.WriteLine(linha);
                }
            }

            Console.WriteLine("\n----------------------------------");
            Console.Write("Digite entre para voltar.");
            Console.ReadLine();
        }