public bool InsertarCierreTemporalHotel(CierreTemporalHotel Cierre) { try { DatabaseConnection.GetInstance() .ExecuteProcedureNonQuery("INSERTAR_CIERRE_TEMPORAL_HOTEL", GenerateParamsDML(Cierre)); LogUtils.LogInfo("Se cerrará temporalmente el hotel " + Cierre.Hotel.Nombre); MessageBox.Show("Se cerrará temporalmente el hotel " + Cierre.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("Ese hotel 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 un hotel. Revise el log", "ERROR"); return(false); } }
private SqlParameter[] GenerateParamsDML(CierreTemporalHotel 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_hotel", Cierre.Hotel.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; string ErrMsg = ""; int ReservasEnPeriodo; 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("")) { ReservasEnPeriodo = new ReservaDAO().ObtenerCantidadReservasEnPeriodoDeHotel( DateTime.ParseExact(Inicio, "dd/MM/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(Fin, "dd/MM/yyyy", CultureInfo.InvariantCulture), hotel); if (ReservasEnPeriodo != 0) { ErrMsg += "Hay " + ReservasEnPeriodo + " reservas que se intersecan con ese período"; } } if (!ErrMsg.Equals("")) // hay error { MessageBox.Show(ErrMsg, "ERROR"); } else { // procesamos el ingreso CierreTemporalHotel Cierre = new CierreTemporalHotel(null, DateTime.ParseExact(Inicio, "dd/MM/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(Fin, "dd/MM/yyyy", CultureInfo.InvariantCulture), hotel, Descripción); if (new CierreTemporalHotelDAO().InsertarCierreTemporalHotel(Cierre)) { this.Close(); } } }