private void txtDescripcion_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((char)Keys.Enter != e.KeyChar)
            {
                return;
            }

            var listaId = (long)cmbListaPrecio.SelectedValue;

            var producto = _productoServicio.ObtenerPorDescripcion(txtDescripcion.Text, listaId);

            if (string.IsNullOrEmpty(txtDescripcion.Text))
            {
                return;
            }

            if (producto != null)
            {
                nudCantidad.Enabled = true;


                _comprobanteSalon.AgregarItem(_comprobante.Id, (int)nudCantidad.Value, producto, listaId);
                _comprobante = _comprobanteSalon.ObtenerComprobantePorMesa(_mesaId);

                dgvGrilla.DataSource = _comprobante.ComprobanteSalonDetalleDtos.ToList();
                nudTOTAL.Value       = _comprobante.ComprobanteSalonDetalleDtos.Sum(x => x.SubTotal);
            }
            else
            {
                var lookUpProducto = new Producto_LookUp(listaId);
                lookUpProducto.ShowDialog();
                if (lookUpProducto.Entidad != null)
                {
                    var productoSeleccionado = (ProductoDto)lookUpProducto.Entidad;
                    txtDescripcion.Text = productoSeleccionado.Codigo.ToString();
                    nudPrecio.Value     = productoSeleccionado.PrecioPublico;

                    _comprobanteSalon.AgregarItem(_comprobante.Id, 1, productoSeleccionado, listaId);
                    _comprobante = _comprobanteSalon.ObtenerComprobantePorMesa(_mesaId);

                    dgvGrilla.DataSource = _comprobante.ComprobanteSalonDetalleDtos.ToList();
                    nudTOTAL.Value       = _comprobante.ComprobanteSalonDetalleDtos.Sum(x => x.SubTotal);
                    nudCantidad.Enabled  = true;
                }
            }
        }
Esempio n. 2
0
        private void btnAgregar_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtDescripcion.Text))
            {
                Mensaje.Mostrar("Ingrese un código del producto.", Mensaje.Tipo.Informacion);
                txtDescripcion.Focus();
            }

            else
            {
                if (cmbListaPrecio.SelectedValue != null)
                {
                    var listaId = (long)cmbListaPrecio.SelectedValue;

                    var listaProducto = BuscarProducto(txtDescripcion.Text, listaId);

                    var producto = new ProductoDto();

                    foreach (var item in listaProducto)
                    {
                        producto.Id                 = item.Id;
                        producto.Codigo             = item.Codigo;
                        producto.CodigoBarra        = item.CodigoBarra;
                        producto.Descripcion        = item.Descripcion;
                        producto.Stock              = item.Stock;
                        producto.ListaPrecioId      = listaId;
                        producto.PrecioPublico      = item.PrecioPublico;
                        producto.FechaActualizacion = item.FechaActualizacion;
                    }
                    ;


                    if (listaProducto.Count() == 1)
                    {
                        // Cargar Datos

                        var cantidad = nudCantidad.Value;

                        if (_productoServicio.Stock(producto, (int)cantidad))
                        {
                            nudPrecio.Value = producto.PrecioPublico;
                            _comprobanteSalon.AgregarItem(_comprobante.Id, (int)cantidad, producto, _empleadoSeleccionadoId);
                            _comprobanteSalon.obtenerDescuento(nudDescuento.Value, _mesaId);
                            ActualizarGrilla();

                            ActualizarTotalizadores();
                        }

                        else
                        {
                            Mensaje.Mostrar("No hay stock suficiente", Mensaje.Tipo.Informacion);
                        }
                    }

                    else
                    {
                        var lookUpProducto = new Producto_LookUp(listaId);
                        lookUpProducto.ShowDialog();

                        var prod = (ProductoDto)lookUpProducto.elementoSeleccionado;

                        var cantidad = nudCantidad.Value;

                        if (lookUpProducto.Entidad != null)
                        {
                            if (_productoServicio.Stock(prod, (int)cantidad))
                            {
                                var productoSeleccionado = (ProductoDto)lookUpProducto.Entidad;
                                txtDescripcion.Text = productoSeleccionado.Descripcion;
                                nudPrecio.Value     = productoSeleccionado.PrecioPublico;
                                _comprobanteSalon.AgregarItem(_comprobante.Id, (int)cantidad, productoSeleccionado, _empleadoSeleccionadoId);
                                _comprobanteSalon.obtenerDescuento(nudDescuento.Value, _mesaId);
                                ActualizarGrilla();

                                ActualizarTotalizadores();
                            }

                            else
                            {
                                Mensaje.Mostrar("No hay stock suficiente", Mensaje.Tipo.Informacion);
                            }
                        }
                    }

                    ActualizarTotalizadores(); // aqui llamo este metodo para que en tiempo real el txt total vaya cambiando
                }

                else
                {
                    Mensaje.Mostrar("No hay una lista de precio seleecionada", Mensaje.Tipo.Informacion);
                }
            }
        }
Esempio n. 3
0
        private void txtDescripcion_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((char)Keys.Enter != e.KeyChar)
            {
                return;
            }

            var listaId = (long)cmbListaPrecio.SelectedValue;

            var producto = _productoServicio.ObtenerPorDescripcion(txtDescripcion.Text, listaId);

            if (string.IsNullOrEmpty(txtDescripcion.Text))
            {
                return;
            }

            if (producto != null)
            {
                if (_clienteId != 0)
                {
                    if (!string.IsNullOrEmpty(txtCodigoCadete.Text))
                    {
                        if (_comprobante != null)
                        {
                            nudCantidad.Enabled = true;
                            _comprobanteDelivery.AgregarItem(_comprobante.Id, (int)nudCantidad.Value, producto, listaId);
                            _comprobante = _comprobanteDelivery.ObtenerComprobantePorCliente(_clienteId);

                            dgvGrilla.DataSource = _comprobante.ComprobanteDeliveryDetalleDtos.ToList();
                            nudTOTAL.Value       = _comprobante.ComprobanteDeliveryDetalleDtos.Sum(x => x.SubTotal);
                        }
                    }
                    else
                    {
                        Mensaje.Mostrar(" Elija un empleado", Mensaje.Tipo.Informacion);
                    }
                }
                else
                {
                    Mensaje.Mostrar(" Elija un cliente", Mensaje.Tipo.Informacion);
                }
            }
            else
            {
                var lookUpProducto = new Producto_LookUp(listaId);
                lookUpProducto.ShowDialog();
                if (lookUpProducto.Entidad != null)
                {
                    if (_clienteId != 0)
                    {
                        if (!string.IsNullOrEmpty(txtCodigoCadete.Text))
                        {
                            var productoSeleccionado = (ProductoDto)lookUpProducto.Entidad;
                            txtDescripcion.Text = productoSeleccionado.Codigo.ToString();
                            nudPrecio.Value     = productoSeleccionado.PrecioPublico;
                            //comprobante null
                            if (_comprobante != null)
                            {
                                _comprobanteDelivery.AgregarItem(_comprobante.Id, 1, productoSeleccionado, listaId);
                                _comprobante = _comprobanteDelivery.ObtenerComprobantePorCliente(_clienteId);

                                dgvGrilla.DataSource = _comprobante.ComprobanteDeliveryDetalleDtos.ToList();
                                nudTOTAL.Value       = _comprobante.ComprobanteDeliveryDetalleDtos.Sum(x => x.SubTotal);
                                nudCantidad.Enabled  = true;
                            }
                        }
                        else
                        {
                            Mensaje.Mostrar(" Elija un empleado", Mensaje.Tipo.Informacion);
                        }
                    }
                    else
                    {
                        Mensaje.Mostrar(" Elija un cliente", Mensaje.Tipo.Informacion);
                    }
                }
            }
        }
Esempio n. 4
0
        private void txtDescripcion_KeyPress(object sender, KeyPressEventArgs e)
        {
            if ((char)Keys.Enter != e.KeyChar)
            {
                return;
            }

            if (cmbListaPrecio.SelectedValue != null)
            {
                var listaId = (long)cmbListaPrecio.SelectedValue;

                var listaProducto = BuscarProducto(txtDescripcion.Text, listaId);

                {
                    if (listaProducto.Count() == 1)
                    {
                        var producto = new ProductoDto();

                        foreach (var item in listaProducto)
                        {
                            producto.Id                 = item.Id;
                            producto.Codigo             = item.Codigo;
                            producto.CodigoBarra        = item.CodigoBarra;
                            producto.Descripcion        = item.Descripcion;
                            producto.Stock              = item.Stock;
                            producto.ListaPrecioId      = listaId;
                            producto.PrecioPublico      = item.PrecioPublico;
                            producto.FechaActualizacion = item.FechaActualizacion;
                        }
                        ;

                        // Cargar Datos

                        var cantidad = nudCantidad.Value;

                        if (_productoServicio.Stock(producto, (int)cantidad))
                        {
                            nudPrecio.Value = producto.PrecioPublico;
                            _comprobanteDelivery.AgregarItem(_comprobante.Id, (int)cantidad, producto, _empleadoSeleccionadoId);
                            _comprobanteDelivery.obtenerDescuento(nudDescuento.Value, _clienteSeleccionado.Id);
                            ActualizarGrilla();
                            txtDescripcion.Focus();

                            ActualizarTotalizadores();
                        }

                        else
                        {
                            Mensaje.Mostrar("No hay stock suficiente.", Mensaje.Tipo.Informacion);
                        }
                    }

                    else
                    {
                        var lookUpProducto = new Producto_LookUp(listaId);
                        lookUpProducto.ShowDialog();

                        var prod = (ProductoDto)lookUpProducto.elementoSeleccionado;

                        var cantidad = nudCantidad.Value;

                        if (lookUpProducto.Entidad != null)
                        {
                            if (_productoServicio.Stock(prod, (int)cantidad))
                            {
                                var productoSeleccionado = (ProductoDto)lookUpProducto.Entidad;
                                txtDescripcion.Text = productoSeleccionado.Descripcion;
                                nudPrecio.Value     = productoSeleccionado.PrecioPublico;
                                _comprobanteDelivery.AgregarItem(_comprobante.Id, (int)cantidad, productoSeleccionado, _empleadoSeleccionadoId);
                                _comprobanteDelivery.obtenerDescuento(nudDescuento.Value, _clienteSeleccionado.Id);
                                ActualizarGrilla();

                                ActualizarTotalizadores();
                            }

                            else
                            {
                                Mensaje.Mostrar("No hay stock suficiente", Mensaje.Tipo.Informacion);
                            }
                        }

                        ActualizarTotalizadores(); // aqui llamo este metodo para que en tiempo real actualize el nud total
                    }
                }
            }

            else
            {
                Mensaje.Mostrar("No hay una lista de precio seleecionada.", Mensaje.Tipo.Informacion);
            }
        }