public bool localizar(double loc) { Elemento aux = this.prim.prox; if (vazia()) { return(false); } else { while (aux != null) { Historico c = (Historico)(aux.d); if (c.ID_consulta.Equals(loc)) { return(true); } else { aux = aux.prox; } } return(false); } }
public int CompareTo(IDado obj) { Historico aux = (Historico)(obj); if (this.ID_Medico.Equals(aux.ID_Medico)) { return(0); } else { return(1); } }
public bool Equals(IDado obj) { Historico aux = (Historico)(obj); if (this.ID_Medico == aux.ID_Medico) { return(true); } else { return(false); } }
public void AtenderPacientes()//Metodo onde as consultas de cada medico são inserirdas no historico do seu respectivo paciente { float MaiorValor = 0; MedicosArvore.InicializarAux(); for (int p = 1; p < 5; p++) { MedicosArvore.ListaM(TipoConsulta(p), MedicosArvore.raiz); } foreach (Medico Medico in MedicosArvore.aux) //Metodo foreach para pecorrer todos os Medicos { Elemento number1 = Medico.Consultas.ConsultaTopo(); //Metodo não generico para pega a primeira consulta da fila de consultas cada medico while (number1 != null) { IDado n0 = number1.d; Consulta n1 = (Consulta)(n0); Nodo n = PacientesArvore.buscarP(n1.ID_Paciente); Paciente n3 = (Paciente)(n.d); if (!n3.Historico.localizar(n1.ID)) { Historico h = new Historico(n1.Data, Medico.Nome, Medico.ID, Medico.Ex, n1.Preço, n1.ID, n1.Prioridade); n3.Historico.inserir(h); //inserindo no lista historico do paciente a consulta realizada Medico.Pagamento = n1.Preço / 2; //atribui o valor do pagamento ao medico pela metado do valor da consulta Cofre += n1.Preço / 2; //A outra metade do pagamento vai para o cofre da clinica } number1 = number1.prox; } } //O foreach a segui sere para indentifica o metodo foreach (Medico Medico in MedicosArvore.aux) { if (Medico.Pagamento > MaiorValor) { MaiorValor = Medico.Pagamento; Med = Medico; } } }