public fmr_detalleReserv(Vw_detalleReserv vdr, fmr_Reservacion frm) : base(Gtk.WindowType.Toplevel) { this.Build(); //LlenarTabla(); tbr = vdr; edicion = true; form = frm; }
public List <Vw_detalleReserv> listarDetallesReserv(int id_reservacion) { List <Vw_detalleReserv> detList = new List <Vw_detalleReserv>(); Vw_detalleReserv vdr = null; IDataReader idr = null; sb.Clear(); sb.Append("USE `hotel`;"); sb.Append("SELECT * " + "FROM vw_detalleReserv WHERE id_reservacion = " + id_reservacion + ";"); try { con.AbrirConexion(); idr = con.Leer(CommandType.Text, sb.ToString()); while (idr.Read()) { vdr = new Vw_detalleReserv(); vdr.Id_detalleReserv = Convert.ToInt32(idr[0].ToString()); vdr.Id_reservacion = Convert.ToInt32(idr[1].ToString()); vdr.Id_habitacion = Convert.ToInt32(idr[2].ToString()); vdr.NumeroHab = idr[3].ToString(); vdr.Descripcion = idr[4].ToString(); vdr.FechaEntrada = idr[5].ToString(); vdr.FechaSalida = idr[6].ToString(); vdr.HoraEntrada = idr[7].ToString(); vdr.HoraSalida = idr[8].ToString(); detList.Add(vdr); } return(detList); } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); throw; } finally { idr.Close(); con.CerrarConexion(); } }
protected void OnTwHabitacionesCursorChanged(object sender, EventArgs e) { tbr = new Vw_detalleReserv(); TreeSelection seleccion = (sender as TreeView).Selection; TreeIter iter; TreeModel model; if (seleccion.GetSelected(out model, out iter)) { tbr.Id_habitacion = Convert.ToInt32(model.GetValue(iter, 0).ToString()); tbr.NumeroHab = model.GetValue(iter, 1).ToString(); tbr.Descripcion = model.GetValue(iter, 2).ToString(); txtHab.Text = tbr.NumeroHab; } }
public bool ComprobarDisponibilidadHab(Vw_detalleReserv vdr) { if (dth.VerificarHabDisponible(vdr)) { return(true); } else { ms = new MessageDialog(null, DialogFlags.Modal, MessageType.Warning, ButtonsType.Ok, "La habitación " + vdr.NumeroHab + " estará ocupada en ese momento \n" + "Presione \"Verificar\" antes de agregar habitación"); ms.Run(); ms.Destroy(); return(false); } }
public bool VerificarHabDisponible(Vw_detalleReserv tdr) { bool encontrado = false; IDataReader idr = null; sb.Clear(); sb.Append("USE `hotel`;"); sb.Append("SELECT h.id_habitacion, h.numero, h.descripcion FROM vw_habitaciones h LEFT JOIN " + "tbl_detalleReserv d ON h.id_habitacion = d.id_habitacion WHERE NOT(concat('" + tdr.FechaEntrada + "', ' ', '" + tdr.HoraEntrada + ":00')" + "< concat(d.fecha_salida, ' ', d.hora_salida) AND concat('" + tdr.FechaSalida + "', ' ', '" + tdr.HoraSalida + ":00') > concat(d.fecha_entrada, ' ', d.hora_entrada))" + "OR NOT(SELECT EXISTS(SELECT * FROM tbl_detalleReserv d INNER JOIN tbl_reservacion r ON d.id_reservacion =" + "r.id_reservacion WHERE r.estado <> 3 AND d.id_habitacion = h.id_habitacion));"); try { con.AbrirConexion(); idr = con.Leer(CommandType.Text, sb.ToString()); // EXPLICACIÓN: esta parte compara los números de habitaciones disponibles según las // fechas y horas de entrada y salida que fueron otorgadas. Si se encuentra la habitación // seleccionada quiere decir que es posible utilizarla. while (idr.Read()) { if (tdr.NumeroHab.Equals(idr[1].ToString())) { encontrado = true; } } return(encontrado); } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); idr.Close(); return(encontrado); throw; } finally { con.CerrarConexion(); } }
public ListStore ListarHabitacionesDisponibles(Vw_detalleReserv tdr) { ListStore datos = new ListStore(typeof(string), typeof(string), typeof(string)); IDataReader dr = null; sb.Clear(); sb.Append("USE `hotel`;"); sb.Append("SELECT h.id_habitacion, h.numero, h.descripcion FROM vw_habitaciones h LEFT JOIN " + "tbl_detalleReserv d ON h.id_habitacion = d.id_habitacion WHERE NOT(concat('" + tdr.FechaEntrada + "', ' ', '" + tdr.HoraEntrada + ":00')" + "< concat(d.fecha_salida, ' ', d.hora_salida) AND concat('" + tdr.FechaSalida + "', ' ', '" + tdr.HoraSalida + ":00') > concat(d.fecha_entrada, ' ', d.hora_entrada))" + "OR NOT(SELECT EXISTS(SELECT * FROM tbl_detalleReserv d INNER JOIN tbl_reservacion r ON d.id_reservacion =" + "r.id_reservacion WHERE r.estado <> 3 AND d.id_habitacion = h.id_habitacion));"); try { con.AbrirConexion(); dr = con.Leer(CommandType.Text, sb.ToString()); while (dr.Read()) { datos.AppendValues(dr[0].ToString(), dr[1].ToString(), dr[2].ToString()); //dr.Close(); }//fin de while return(datos); } catch (Exception e) { ms = new MessageDialog(null, DialogFlags.Modal, MessageType.Error, ButtonsType.Ok, e.Message); ms.Run(); ms.Destroy(); Console.WriteLine("Error: " + e.Message); Console.WriteLine("Error: " + e.StackTrace); throw; } finally { dr.Close(); con.CerrarConexion(); } //return datos; }
protected void OnBtnVerificarClicked(object sender, EventArgs e) { tbr = new Vw_detalleReserv(); int hora_salida = Convert.ToInt32(salida_hora.Text); int minuto_salida = Convert.ToInt32(salida_minuto.Text); int hora_entrada = Convert.ToInt32(entrada_hora.Text); int minuto_entrada = Convert.ToInt32(entrada_minuto.Text); String hora_s; String minuto_s; String hora_e; String minuto_e; if (!ValidarEleccion()) { return; } if (hora_salida < 10) { hora_s = "0" + salida_hora.Text; } else { hora_s = salida_hora.Text; } if (minuto_salida < 10) { minuto_s = "0" + salida_minuto.Text; } else { minuto_s = salida_minuto.Text; } if (hora_entrada < 10) { hora_e = "0" + entrada_hora.Text; } else { hora_e = entrada_hora.Text; } if (minuto_entrada < 10) { minuto_e = "0" + entrada_minuto.Text; } else { minuto_e = entrada_minuto.Text; } tbr.FechaEntrada = txt_fechaEntrada.Text; tbr.FechaSalida = txt_fechaSalida.Text; tbr.HoraEntrada = hora_e + ":" + minuto_e; tbr.HoraSalida = hora_s + ":" + minuto_s; //ListStore lista = dth.ListarHabitacionesDisponibles(tdr); //LlenarTabla(lista); twHabitaciones.Model = dth.ListarHabitacionesDisponibles(tbr); if (!columnas) { string[] titulos = { "ID", "Numero", "Tipo" }; for (int i = 0; i < titulos.Length; i++) { twHabitaciones.AppendColumn(titulos[i], new CellRendererText(), "text", i); } columnas = true; } }