public IActionResult CamasVacunacion(string Municipio, string Paciente1, string Paciente2, string Paciente3) { Singleton.Instance.ListaParaFechas.Clear(); if (Municipio != null) { NodoFecha <DatosPaciente> Primero = new NodoFecha <DatosPaciente>(); NodoFecha <DatosPaciente> Segundo = new NodoFecha <DatosPaciente>(); NodoFecha <DatosPaciente> Tercero = new NodoFecha <DatosPaciente>(); Primero = Singleton.Instance.EstructuraParaCitas.RetornarEstructura(Regex.Replace(Municipio, @"\s", "").ToUpper()).Vacunacion(); if (Primero != null) { Singleton.Instance.Listacamasvacunacion.Add(Primero.Data); Segundo = Primero.PrimerHijo; if (Segundo != null) { Singleton.Instance.Listacamasvacunacion.Add(Segundo.Data); Tercero = Primero.SegundoHijo; if (Tercero != null) { Singleton.Instance.Listacamasvacunacion.Add(Tercero.Data); } } } } if (Paciente1 != null) { if (Paciente1 == "Si") { var NuevoHash = new Models.DatosPaciente { NombrePaciente = Singleton.Instance.Listacamasvacunacion[0].NombrePaciente, ApellidoPaciente = Singleton.Instance.Listacamasvacunacion[0].ApellidoPaciente, DPIPartidadenacimiento = Singleton.Instance.Listacamasvacunacion[0].DPIPartidadenacimiento }; int posicion = Singleton.Instance.TablaHashPacientes.FuncionHash(NuevoHash.NombrePaciente, NuevoHash.ApellidoPaciente, NuevoHash.DPIPartidadenacimiento); for (int i = 0; i < Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista.Length; i++) { if (Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.NombrePaciente == NuevoHash.NombrePaciente) { Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.EstadoVacunado = "Si"; Singleton.Instance.ListadoVacunados.Add(Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data); vacunados += 1; novacunados -= 1; } } } else { DateTime Nuevo = LLamadoFecha.FechaParaAsignar(); Singleton.Instance.EstructuraParaCitas.RetornarEstructura(Singleton.Instance.Listacamasvacunacion[0].Municipio).InsertarFecha(Singleton.Instance.ListadePacientesParaV[0], Nuevo); } } if (Paciente2 != null) { if (Paciente2 == "Si") { var NuevoHash = new Models.DatosPaciente { NombrePaciente = Singleton.Instance.Listacamasvacunacion[1].NombrePaciente, ApellidoPaciente = Singleton.Instance.Listacamasvacunacion[1].ApellidoPaciente, DPIPartidadenacimiento = Singleton.Instance.Listacamasvacunacion[1].DPIPartidadenacimiento }; int posicion = Singleton.Instance.TablaHashPacientes.FuncionHash(NuevoHash.NombrePaciente, NuevoHash.ApellidoPaciente, NuevoHash.DPIPartidadenacimiento); for (int i = 0; i < Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista.Length; i++) { if (Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.NombrePaciente == NuevoHash.NombrePaciente) { Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.EstadoVacunado = "Si"; Singleton.Instance.ListadoVacunados.Add(Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data); vacunados += 1; novacunados -= 1; } } } else { DateTime Nuevo = LLamadoFecha.FechaParaAsignar(); Singleton.Instance.EstructuraParaCitas.RetornarEstructura(Singleton.Instance.Listacamasvacunacion[1].Municipio).InsertarFecha(Singleton.Instance.Listacamasvacunacion[1], Nuevo); } } if (Paciente3 != null) { if (Paciente3 == "Si") { var NuevoHash = new Models.DatosPaciente { NombrePaciente = Singleton.Instance.Listacamasvacunacion[2].NombrePaciente, ApellidoPaciente = Singleton.Instance.Listacamasvacunacion[2].ApellidoPaciente, DPIPartidadenacimiento = Singleton.Instance.Listacamasvacunacion[2].DPIPartidadenacimiento }; int posicion = Singleton.Instance.TablaHashPacientes.FuncionHash(NuevoHash.NombrePaciente, NuevoHash.ApellidoPaciente, NuevoHash.DPIPartidadenacimiento); for (int i = 0; i < Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista.Length; i++) { if (Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.NombrePaciente == NuevoHash.NombrePaciente) { Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data.EstadoVacunado = "Si"; Singleton.Instance.ListadoVacunados.Add(Singleton.Instance.TablaHashPacientes.ArrayHash[posicion].lista[i].Data); vacunados += 1; novacunados = -1; } } } else { DateTime Nuevo = LLamadoFecha.FechaParaAsignar(); Singleton.Instance.EstructuraParaCitas.RetornarEstructura(Singleton.Instance.Listacamasvacunacion[2].Municipio).InsertarFecha(Singleton.Instance.ListadePacientesParaV[2], Nuevo); } } return(View(Singleton.Instance.Listacamasvacunacion)); }
static void Main(string[] args) { Cabecera("Xml"); //Se establecen los datos de configuración iniciales. DateTime date = DateTime.Now; ConsoleColor colorfondo = ConsoleColor.Cyan; ConsoleColor colortexto = ConsoleColor.Yellow; int alto = 30; int ancho = 90; //Se generan las clases para cada atributo de la configuración NodoFecha Fecha = new NodoFecha("Fecha", date); NodoColor ColorFondo = new NodoColor("ColorFondo", colorfondo); NodoColor ColorTexto = new NodoColor("ColorTexto", colortexto); NodoDimension Alto = new NodoDimension("Alto", alto); NodoDimension Ancho = new NodoDimension("Ancho", ancho); NodoEspacioLibre EspacioLibre = new NodoEspacioLibre("EspacioLibre"); //Compruebo si existe el documento Configuracion.xml y si no existe lo genera y añade los datos de configuracion iniciales if (!(File.Exists("Configuracion.xml"))) { XmlDocument document = new XmlDocument(); XmlDeclaration declaration = document.CreateXmlDeclaration("1.0", "UTF-8", null); document.AppendChild(declaration); XmlNode root = document.CreateElement("Configuracion"); document.AppendChild(root); document.Save("Configuracion.xml"); Fecha.CrearNodo(); ColorFondo.CrearNodo(); ColorTexto.CrearNodo(); Alto.CrearNodo(); Ancho.CrearNodo(); EspacioLibre.CrearNodo(); WriteLine("Se ha generado el documento \"Configuracion.xml\""); } WriteLine("Ya existe el archivo \"Configuracion.xml\"\n"); //A continuación pregunta si quiere modificar los datos por pantalla. WriteLine("Modifique si quiere los elementos de la configuración"); Fecha.ModificarNodo(); ColorFondo.ModificarNodo(); ColorTexto.ModificarNodo(); Alto.ModificarNodo(); Ancho.ModificarNodo(); //Pido que se introduzcan por pantalla los usuarios int orden = 0; int tipo = 0; while (orden != 1 && orden != 2) { Nuevo: Write("Añadir usuario --> 1 \t Salir --> 2\t"); Casilla(); if (int.TryParse(ReadLine(), out int num)) { orden = num; } WriteLine("\n"); //Procedimiento para añadir usuarios o salir del programa switch (orden) { case 1: Write($"Nombre: "); string nombre = ReadLine(); Write("Contraseña: "); string contraseña = ReadLine(); while (tipo != 1 && tipo != 2) { Write("Administrador --> 1 \t Limitado --> 2 \t"); Casilla(); if (int.TryParse(ReadLine(), out num)) { tipo = num; } WriteLine(); } AñadirUsuario usuarionuevo = new AñadirUsuario(nombre, contraseña, tipo); WriteLine("\n"); goto Nuevo; case 2: break; default: goto Nuevo; } WriteLine("El documento \"Configuracion.xml\" contiene:"); Leer xml = new Leer(); } }