예제 #1
0
void MenuTerminal::mostrarLista(list<Paciente> *pacientes) {
	int j = 1, opcion=0;
	Paciente aux;
	list<Paciente>::iterator i;
	for (i = pacientes->begin(); i != pacientes->end(); ++i) {
		cout << "Paciente " << j << ": " << (*i).getApellidosNombre() << endl;
		j++;
	}
	j--;
	cout << endl
			<< "¿Quieres ver algun paciente en especial? Introduce el número o 0 si ninguno de ellos: ";
	cin >> opcion;
	if (opcion == 0) {
		cabecera();
		cout << "Volviendo al menú principal." << endl;
		sleep(2);
	}
	else{
		if ((opcion<0) || (opcion>j)) {
			cabecera();
			cout << "Número no válido. Volviendo al menú principal." << endl;
			sleep(2);
		}
		else {
			for (i = pacientes->begin(), j = 1; j < opcion; ++j, ++i);
			aux = *i;
			llamarPaciente(&aux);
			*i = aux;
			//Las siguientes 3 sentencias son necesáreas para que se actualice la frecuencia siempre.
			getAgenda()->eliminarPaciente(aux.getDni());
			getAgenda()->insertarPaciente(aux);
			getAgenda()->ordenar();
			cout << "Opciones disponibles:" << endl;
			cout << "\t1) Modificar paciente." << endl;
			cout << "\t2) Eliminar paciente." << endl;
			cout << "\tCualquier otro numero para volver al menú principal." << endl;
			cout << "Elija una opción: ";
			cin >> opcion;
			switch (opcion) {
				case 1:
					getAgenda()->eliminarPaciente(aux.getDni()); //Eliminamos el paciente.
					aux = rellenaPaciente(); //Le metemos la nueva información a un paciente auxiliar.
					aux.setFrecuencia((*i).getFrecuencia()); //Y restauramos su frecuencia.
					getAgenda()->insertarPaciente(aux); //Después, lo introducios en la lista.
					getAgenda()->ordenar(); //Y ordenamos nuestros pacientes para que cuadre.
					break;
				case 2:
					getAgenda()->eliminarPaciente(aux.getDni());
					break;
				default:
					cout << "volviendo al menú principal.";
					sleep(2);
				}
		}
	}
}
예제 #2
0
void MenuTerminal::visualizarPaciente(Paciente p) {
	cout << "\tNombre: " << p.getApellidosNombre() << endl;
	cout << "\tDNI: " << p.getDni() << endl;
	cout << "\tTeléfono: " << p.getTelefono() << endl;
	cout << "\tCuenta Facebook: " << p.getRedSocial().getCuentaFacebook()
			<< endl;
	cout << "\tCuenta Twitter: " << p.getRedSocial().getCuentaTwitter() << endl;
	cout << "\tDirección: " << p.getDireccion().getTipoVia() << " " << p.getDireccion().getCalle() << " nº " << p.getDireccion().getNumPortal() << ", Escalera " << p.getDireccion().getEscalera() << " " << p.getDireccion().getNumPiso() << "º " << p.getDireccion().getNumPuerta() << endl;
	cout << "\tNotas: " << p.getNotas() << endl;
	if (p.isFavorito())
		cout << "\tFavorito: Sí" << endl;
	else
		cout << "\tFavorito: No" << endl;
	cout << "\tFrecuencia: " << p.getFrecuencia() << endl << endl;
}