/// <summary> /// Lista las mesas de una reserva ya creada. /// </summary> private void CargarDGVMesasReservadas() { if (ID_Reserva != -1) { string InformacionDelError = string.Empty; ClsMesasXReservas Mesas = new ClsMesasXReservas(); List <MesaXReserva> ListarMesas = Mesas.LeerListado(ClsMesasXReservas.EMesasDisponibles.MesasReservadas, ref InformacionDelError, FechaReserva, ID_Reserva); if (ListarMesas != null) { int CapacidadTotal = 0; foreach (MesaXReserva Elemento in ListarMesas) { int NumeroDeFila = dgvMesasReservadas.Rows.Add(); dgvMesasReservadas.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesas.ID_Mesa].Value = Elemento.ID_Mesa; dgvMesasReservadas.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesas.Numero].Value = Elemento.Mesa.Numero; dgvMesasReservadas.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesas.Capacidad].Value = Elemento.Mesa.Capacidad; CapacidadTotal += Elemento.Mesa.Capacidad; } dgvMesasReservadas.Sort(dgvMesasReservadas.Columns[(int)ENumColDGVMesas.Numero], ListSortDirection.Ascending); lblResultadoCapacidadTotal.Text = Convert.ToString(CapacidadTotal); } else if (InformacionDelError == string.Empty) { MessageBox.Show("Fallo al comprobar si trabaja con planta alta", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { MessageBox.Show($"{InformacionDelError}", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { MessageBox.Show($"No se encontro el codigo identificador de la reserva para realizar la carga", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); Close(); } }
private void CargarDGVMesasDisponibles(ClsMesasXReservas.EMesasDisponibles _TipoDeFiltro) { dgvSeleccionarMesaReserva.Rows.Clear(); lblResultadoCapacidadTotal.Text = "0"; string InformacionDelError = string.Empty; ClsMesasXReservas MesasXReservas = new ClsMesasXReservas(); List <MesaXReserva> ListaMesasReservadas = MesasXReservas.LeerListado(_TipoDeFiltro, ref InformacionDelError, FechaParaReservar.Date); ClsMesas Mesas = new ClsMesas(); List <Mesa> MesasDisponibles = null; // Trae la lista por planta if (_TipoDeFiltro == ClsMesasXReservas.EMesasDisponibles.MesasDisponiblesPB) { MesasDisponibles = Mesas.LeerListado(ClsMesas.ETipoDeListado.MesasActivasPB, ref InformacionDelError); } else { MesasDisponibles = Mesas.LeerListado(ClsMesas.ETipoDeListado.MesasActivasPA, ref InformacionDelError); } if (MesasDisponibles != null && ListaMesasReservadas != null) { // Recorro todas las mesas activas foreach (Mesa Elemento in MesasDisponibles) { bool MesaNoReservada = true; // Elimino de la lista las mesas que encuentre en la lista de las reservadas foreach (MesaXReserva ElementoSecundario in ListaMesasReservadas) { if (Elemento.ID_Mesa == ElementoSecundario.ID_Mesa && ElementoSecundario.ID_Reserva != ID_Reserva) { MesaNoReservada = false; } } if (MesaNoReservada) { bool MarcarMesaReservada = false; int NumeroDeFila = dgvSeleccionarMesaReserva.Rows.Add(); dgvSeleccionarMesaReserva.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesa.ID_Mesa].Value = Elemento.ID_Mesa; dgvSeleccionarMesaReserva.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesa.Numero].Value = Elemento.Numero; dgvSeleccionarMesaReserva.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesa.Capacidad].Value = Elemento.Capacidad; // Marca las mesas ya reservadas al editar una reserva foreach (MesaXReserva ElementoSecundario in ListaMesasReservadas) { if (Elemento.ID_Mesa == ElementoSecundario.ID_Mesa) { MarcarMesaReservada = true; lblResultadoCapacidadTotal.Text = Convert.ToString(Convert.ToInt32(lblResultadoCapacidadTotal.Text) + Elemento.Capacidad); } } dgvSeleccionarMesaReserva.Rows[NumeroDeFila].Cells[(int)ENumColDGVMesa.Seleccionar].Value = MarcarMesaReservada; if (MarcarMesaReservada) { ClsColores.MarcarFilaDGV(dgvSeleccionarMesaReserva, NumeroDeFila, true); } else { ClsColores.MarcarFilaDGV(dgvSeleccionarMesaReserva, NumeroDeFila, false); } } } UltimaFilaSeleccionada = -1; dgvSeleccionarMesaReserva.Sort(dgvSeleccionarMesaReserva.Columns[(int)ENumColDGVMesa.Numero], ListSortDirection.Ascending); } else if (InformacionDelError == string.Empty) { MessageBox.Show($"Ocurrio un fallo al cargar las mesas reservadas", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { MessageBox.Show($"{InformacionDelError}", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void BtnGuardarCambios_Click(object sender, EventArgs e) { //TODO - Conexion con la BBDD para validar datos y cargarlos o no // Validar los datos. bool DatosValidos = true; string RegistroDeErrores = string.Empty; int AnchoFormInformacion = 100; ViaDeContacto ContactoSeleccionado = (ViaDeContacto)cmbFormaContacto.SelectedItem; lblMostrarNombre.Text = lblMostrarNombre.Text.Trim(); lblMostrarApellido.Text = lblMostrarApellido.Text.Trim(); lblMostrarTelefono.Text = lblMostrarTelefono.Text.Trim(); if (dtpFecha.Value < DateTime.Today) { DatosValidos = false; RegistroDeErrores += "Debe ingresar una fecha, y esta debe ser mayor o igual a la actual.\r\n\r\n"; AnchoFormInformacion += 50; } if (!ValidarHora(true)) { DatosValidos = false; RegistroDeErrores += "Cambie el campo hora a un horario valido.\r\n\r\n"; AnchoFormInformacion += 50; } if (ContactoSeleccionado == null) { DatosValidos = false; RegistroDeErrores += "Debe cargar la forma en que se contacto el cliente.\r\n\r\n"; AnchoFormInformacion += 50; } if (ListaDeMesasReserva.Count == 0) { DatosValidos = false; RegistroDeErrores += "Debe cargar alguna mesa para asignarle a la 'reserva'.\r\n\r\n"; AnchoFormInformacion += 50; } if (ID_Cliente == -1) { DatosValidos = false; RegistroDeErrores += "Debe cargar un cliente.\r\n\r\n"; AnchoFormInformacion += 50; } if (DatosValidos) { string InformacionDelError = string.Empty; ClsReservas Reservas = new ClsReservas(); Reserva ActualizarReserva = new Reserva(); ActualizarReserva.ID_Cliente = ID_Cliente; ActualizarReserva.ID_Reserva = ID_Reserva; ActualizarReserva.Fecha = Convert.ToDateTime(dtpFecha.Value.Date); ActualizarReserva.Hora = TimeSpan.Parse(mtbHorario.Text); ActualizarReserva.ID_ViaContacto = ContactoSeleccionado.ID_ViaDeContacto; ActualizarReserva.CantidadPersonas = (int)nudCantidadPersonas.Value; ActualizarReserva.ID_EstadoReserva = (int)ClsEstadoReservas.EEstadosReservas.Pendiente; Reservas.Actualizar(ActualizarReserva, ref InformacionDelError); ClsMesasXReservas MesasXReservas = new ClsMesasXReservas(); MesaXReserva CargarMesasReserva = new MesaXReserva(); List <MesaXReserva> Eliminar = MesasXReservas.LeerListado(ClsMesasXReservas.EMesasDisponibles.PorID, ref InformacionDelError, DateTime.Today.Date, ID_Reserva); foreach (MesaXReserva Elemento in Eliminar) { MesasXReservas.Borrar(Elemento.ID_MesaXReserva, ref InformacionDelError); } CargarMesasReserva.ID_Reserva = ActualizarReserva.ID_Reserva; foreach (int Elemento in ListaDeMesasReserva) { CargarMesasReserva.ID_Mesa = Elemento; MesasXReservas.Crear(CargarMesasReserva, ref InformacionDelError); } DialogResult = DialogResult.OK; Close(); } else { using (FrmInformacion FormInformacion = new FrmInformacion(RegistroDeErrores, ClsColores.Blanco, AnchoFormInformacion, 300)) { FormInformacion.ShowDialog(); } } }