/* Método que elimina una hora de reserva de la lista de horas de la mediateca. * Param String hora Almacena la hora a la que se quiere eliminar la reserva. * Return Boolean True en caso de que todo se haya realizado correctamente. * False en caso contrario. */ public static bool EliminarReservaMediateca(string hora) { /*Var Boolean Bandera que indica si la hora que se quiere eliminar existe o no. */ bool horaExistente = false; /* Recorre la lista en busca de coincidencias. */ foreach (String horas in GestionReservas.mediateca) { /* En caso de encontrar una coincidencia, la bandera cambia a true. */ if (horas.Equals(hora)) { horaExistente = true; } } /* Si existe la hora la elimina. */ if (horaExistente) { mediateca.RemoveAt(mediateca.FindIndex(x => x == hora)); /* Llama a la clase que conecta con el fichero y guarda el array. */ DatosReserva dr = new DatosReserva(); dr.GuardarReservasMediateca(mediateca); /* Devuelve si todo ha sido correcto. */ return(true); } /* Si no existe la hora, devuelve que no se ha podido realizar la eliminación. */ else { return(false); } }
/* Método que modifica una hora de reserva a otra distinta de la lista de horas de la mediateca. * Param String horaVieja Almacena la hora antigua de la reserva. * Param String horaNueva Almacena la hora a la que se quiere modificar la reserva. * Return Boolean True en caso de que todo se haya realizado correctamente. * False en caso contrario. */ public static bool ModificarMediateca(string horaVieja, string horaNueva) { DatosReserva dr = new DatosReserva(); mediateca = dr.ObtenerReservasMediateca(); /*Var Boolean Bandera que indica si la hora a la que se quiere modificar existe o no. */ bool horaExistente = false; /* Recorre la lista en busca de coincidencias. */ foreach (String horas in GestionReservas.mediateca) { /* En caso de encontrar una coincidencia, la bandera cambia a true. */ if (horas.Equals(horaVieja)) { horaExistente = true; } } /* Comprueba la nueva hora introducida sea válida. */ if (horaNueva.Length >= 4 && horaNueva.Length <= 5 && int.Parse(horaNueva.Substring(0, horaNueva.IndexOf(":"))) < 24 && int.Parse(horaNueva.Substring(0, horaNueva.IndexOf(":"))) >= 0 && horaNueva.Substring(horaNueva.IndexOf(":") + 1).Equals("00")) { /* Reiniciamos la bandera para el siguiente parámetro de entrada. */ horaExistente = false; /* Recorre la lista en busca de coincidencias. */ foreach (String horas in GestionReservas.mediateca) { /* En caso de encontrar una coincidencia, la bandera cambia a true. */ if (horas.Equals(horaNueva)) { horaExistente = true; } } /* Si no existe la hora la modifica. */ if (!horaExistente) { /* Modifica la hora y ordena lista de horas. */ mediateca[mediateca.FindIndex(x => x == horaVieja)] = horaNueva; mediateca.Sort(); /* Guarda el array en el fichero. */ dr.GuardarReservasMediateca(mediateca); /* Devuelve si todo ha sido correcto. */ return(true); } /* Si ya existe, devuelve el error. */ else { return(false); } } else { /* Si no existe la hora, devuelve que no se ha podido realizar la modificación. */ return(false); } }
/* Método que añade una hora de reserva a la lista de horas de la mediateca. * Param String hora Almacena la hora a la que se quiere realizar la reserva. * Return Boolean True en caso de que todo se haya realizado correctamente. * False en caso contrario. */ public static bool ReservarMediateca(string hora) { /* Comprueba la hora introducida sea válida. */ if (hora.Length >= 4 && hora.Length <= 5 && int.Parse(hora.Substring(0, hora.IndexOf(":"))) < 24 && int.Parse(hora.Substring(0, hora.IndexOf(":"))) >= 0 && hora.Substring(hora.IndexOf(":") + 1).Equals("00")) { /*Var Boolean Bandera que indica si la hora a la que se quiere modificar existe o no. */ bool horaExistente = false; /* Recorre la lista en busca de coincidencias. */ foreach (String horas in GestionReservas.mediateca) { /* En caso de encontrar una coincidencia, la bandera cambia a true. */ if (horas.Equals(hora)) { horaExistente = true; } } /* Si no existe la hora la añade. */ if (!horaExistente) { /* Añade la hora a la lista de horas y la ordena. */ mediateca.Add(hora); mediateca.Sort(); /* Llama a la clase que conecta con el fichero y guarda el array. */ DatosReserva dr = new DatosReserva(); dr.GuardarReservasMediateca(mediateca); /* Devuelve si todo ha sido correcto. */ return(true); } /* Si ya existe, devuelve el error. */ else { return(false); } } else { /* Si no existe la hora, devuelve que no se ha podido realizar la reserva. */ return(false); } }