public bool InsertarCierreTemporalHabitacion(CierreTemporalHabitacion Cierre) { try { DatabaseConnection.GetInstance() .ExecuteProcedureNonQuery("INSERTAR_CIERRE_TEMPORAL_HABITACION", GenerateParamsDML(Cierre)); LogUtils.LogInfo("Se cerrará temporalmente la habitación " + Cierre.Habitacion.Número + " del hotel " + Session.Hotel.Nombre); MessageBox.Show("Se cerrará temporalmente la habitación " + Cierre.Habitacion.Número + " del hotel " + Session.Hotel.Nombre + " desde el " + Cierre.Inicio.ToString("dd/MM/yyyy") + " hasta el " + Cierre.Fin.ToString("dd/MM/yyyy"), "INFO"); return(true); } catch (SqlException Sex) { if (Sex.Message.StartsWith("50001")) { MessageBox.Show("Esa habitación ya tiene un cierre temporal durante ese margen de fechas", "ERROR"); } else { MessageBox.Show("Error SQL desconocido " + Sex.Message, "ERROR"); } return(false); } catch (Exception Ex) { LogUtils.LogError(Ex); MessageBox.Show("Hubo un error al intentar cerrar una habitación. Revise el log", "ERROR"); return(false); } }
private SqlParameter[] GenerateParamsDML(CierreTemporalHabitacion Cierre) { List <SqlParameter> Params = new List <SqlParameter>(); Params.Add(new SqlParameter("@id_rol_user", Session.Rol.Id)); Params.Add(new SqlParameter("@inicio", Cierre.Inicio)); Params.Add(new SqlParameter("@fin", Cierre.Fin)); Params.Add(new SqlParameter("@id_habitacion", Cierre.Habitacion.Id)); Params.Add(new SqlParameter("@motivo", Cierre.Descripción)); return(Params.ToArray()); }
private void button3_Click(object sender, EventArgs e) { string Inicio = textBox2.Text; string Fin = textBox3.Text; string Descripción = textBox4.Text; bool ReservadaEnPeriodo; string ErrMsg = ""; if (Inicio.Equals("")) { ErrMsg += "Debe ingresar la fecha de inicio del cierre temporal\n"; } if (Fin.Equals("")) { ErrMsg += "Debe ingresar la fecha de fin del cierre temporal\n"; } if (Descripción.Equals("")) { ErrMsg += "Debe ingresar el motivo del cierre temporal\n"; } if (!Inicio.Equals("") && !Fin.Equals("")) { ReservadaEnPeriodo = new HabitacionDAO().IsHabitacionReservadaEnPeriodo( DateTime.ParseExact(Inicio, "dd/MM/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(Fin, "dd/MM/yyyy", CultureInfo.InvariantCulture), habitacion); if (ReservadaEnPeriodo) { ErrMsg += "La habitación tiene una reserva en ese período!"; } } if (!ErrMsg.Equals("")) // hay error { MessageBox.Show(ErrMsg, "ERROR"); } else { // procesamos el ingreso CierreTemporalHabitacion Cierre = new CierreTemporalHabitacion(null, DateTime.ParseExact(Inicio, "dd/MM/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(Fin, "dd/MM/yyyy", CultureInfo.InvariantCulture), habitacion, Descripción); if (new CierreTemporalHabitacionDAO().InsertarCierreTemporalHabitacion(Cierre)) { this.Close(); } } }