/// <summary>
        /// Busca el registro que contiene el ID pasado por parametro y lo elimina.
        /// </summary>
        /// <param name="_ID_MesaXReservaEliminar">Registro que se eliminará.</param>
        /// <param name="_InformacionDelError">Devuelve una cadena de texto con informacion para el usuario en caso de que el
        /// metodo devuelva null (debido a que ocurrio un error).</param>
        public int Borrar(int _ID_MesaXReservaEliminar, ref string _InformacionDelError)
        {
            using (BDRestauranteEntities BBDD = new BDRestauranteEntities())
            {
                try
                {
                    MesaXReserva ObjetoAEliminar = BBDD.MesaXReserva.SingleOrDefault(Identificador => Identificador.ID_MesaXReserva == _ID_MesaXReservaEliminar);

                    if (ObjetoAEliminar != null)
                    {
                        BBDD.MesaXReserva.Remove(ObjetoAEliminar);
                        return(BBDD.SaveChanges());
                    }
                    else
                    {
                        return(0);
                    }
                }
                catch (Exception Error)
                {
                    _InformacionDelError = $"OCURRIO UN ERROR INESPERADO AL INTENTAR LISTAR LA INFORMACIÓN: {Error.Message}\r\n\r\n" +
                                           $"ORIGEN DEL ERROR: {Error.StackTrace}\r\n\r\n" +
                                           $"OBJETO QUE GENERÓ EL ERROR: {Error.Data}\r\n\r\n\r\n" +
                                           $"ENVIE AL PROGRAMADOR UNA FOTO DE ESTE MENSAJE CON UNA DESCRIPCION DE LO QUE HIZO ANTES DE QUE SE GENERARÁ " +
                                           $"ESTE ERROR PARA QUE SEA ARREGLADO.";
                    return(0);
                }
            }
        }
        /// <summary>
        /// Actualiza el registro mediente el ID que contiene el objeto proporcionado como parametro.
        /// </summary>
        /// <param name="_MesaXReserva">Objeto que contiene los datos del registro al que se le van a actualizar los datos.</param>
        ///<param name="_InformacionDelError">Devuelve una cadena de texto con informacion para el usuario en caso de que el
        /// metodo devuelva null (debido a que ocurrio un error).</param>
        public int Actualizar(MesaXReserva _MesaXReserva, ref string _InformacionDelError)
        {
            using (BDRestauranteEntities BBDD = new BDRestauranteEntities())
            {
                try
                {
                    MesaXReserva ObjetoActualizado = BBDD.MesaXReserva.SingleOrDefault(Identificador => Identificador.ID_MesaXReserva == _MesaXReserva.ID_MesaXReserva);

                    if (ObjetoActualizado != null)
                    {
                        ObjetoActualizado.ID_MesaXReserva = _MesaXReserva.ID_MesaXReserva;
                        //ObjetoActualizado.Nombre = cliente.Nombre;
                        //ObjetoActualizado.Direccion = cliente.Direccion;
                        //ObjetoActualizado.Id_Localidad = cliente.Id_Localidad;
                        return(BBDD.SaveChanges());
                    }
                    else
                    {
                        return(0);
                    }
                }
                catch (Exception Error)
                {
                    _InformacionDelError = $"OCURRIO UN ERROR INESPERADO AL INTENTAR LISTAR LA INFORMACIÓN: {Error.Message}\r\n\r\n" +
                                           $"ORIGEN DEL ERROR: {Error.StackTrace}\r\n\r\n" +
                                           $"OBJETO QUE GENERÓ EL ERROR: {Error.Data}\r\n\r\n\r\n" +
                                           $"ENVIE AL PROGRAMADOR UNA FOTO DE ESTE MENSAJE CON UNA DESCRIPCION DE LO QUE HIZO ANTES DE QUE SE GENERARÁ " +
                                           $"ESTE ERROR PARA QUE SEA ARREGLADO.";
                    return(0);
                }
            }
        }
 /// <summary>
 /// Crea un nuevo registro a partir de los datos que contiene el objeto pasado por parametro.
 /// </summary>
 /// <param name="_MesaXReserva">Objeto que contiene los datos del nuevo registro que se creará.</param>
 ///<param name="_InformacionDelError">Devuelve una cadena de texto con informacion para el usuario en caso de que el
 /// metodo devuelva null (debido a que ocurrio un error).</param>
 public int Crear(MesaXReserva _MesaXReserva, ref string _InformacionDelError)
 {
     using (BDRestauranteEntities BBDD = new BDRestauranteEntities())
     {
         try
         {
             BBDD.MesaXReserva.Add(_MesaXReserva);
             return(BBDD.SaveChanges());
         }
         catch (Exception Error)
         {
             _InformacionDelError = $"OCURRIO UN ERROR INESPERADO AL INTENTAR LISTAR LA INFORMACIÓN: {Error.Message}\r\n\r\n" +
                                    $"ORIGEN DEL ERROR: {Error.StackTrace}\r\n\r\n" +
                                    $"OBJETO QUE GENERÓ EL ERROR: {Error.Data}\r\n\r\n\r\n" +
                                    $"ENVIE AL PROGRAMADOR UNA FOTO DE ESTE MENSAJE CON UNA DESCRIPCION DE LO QUE HIZO ANTES DE QUE SE GENERARÁ " +
                                    $"ESTE ERROR PARA QUE SEA ARREGLADO.";
             return(0);
         }
     }
 }
예제 #4
0
        private void BtnCrearReserva_Click(object sender, EventArgs e)
        {
            // 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;
            }

            // No cargo un cliente
            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     CrearReserva = new Reserva();

                CrearReserva.Fecha            = Convert.ToDateTime(dtpFecha.Value.Date);
                CrearReserva.Hora             = TimeSpan.Parse(mtbHorario.Text);
                CrearReserva.ID_ViaContacto   = ContactoSeleccionado.ID_ViaDeContacto;
                CrearReserva.CantidadPersonas = (int)nudCantidadPersonas.Value;
                CrearReserva.ID_EstadoReserva = (int)ClsEstadoReservas.EEstadosReservas.Pendiente;
                CrearReserva.ID_Cliente       = ID_Cliente;

                if (Reservas.Crear(CrearReserva, ref InformacionDelError) != 0)
                {
                    ClsMesasXReservas MesasXReservas     = new ClsMesasXReservas();
                    MesaXReserva      CargarMesasReserva = new MesaXReserva();

                    CargarMesasReserva.ID_Reserva = CrearReserva.ID_Reserva;

                    foreach (int Elemento in ListaDeMesasReserva)
                    {
                        CargarMesasReserva.ID_Mesa = Elemento;
                        MesasXReservas.Crear(CargarMesasReserva, ref InformacionDelError);
                    }

                    DialogResult = DialogResult.OK;
                    Close();
                }
                else if (InformacionDelError == string.Empty)
                {
                    MessageBox.Show("Fallo al intentar crear la reserva", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                {
                    MessageBox.Show($"{InformacionDelError}", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            else
            {
                using (FrmInformacion FormInformacion = new FrmInformacion(RegistroDeErrores, ClsColores.Blanco, AnchoFormInformacion, 300))
                {
                    FormInformacion.ShowDialog();
                }
            }
        }
예제 #5
0
        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();
                }
            }
        }