コード例 #1
0
        public override bool EjecutarComandoModificar()
        {
            if (!VerificarDatosObligatorios())
            {
                MessageBox.Show(@"Por favor ingrese los campos Obligatorios.", @"Atención", MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                return(false);
            }

            var articuloModificar = new ArticuloDto
            {
                Id                   = EntidadId.Value,
                Codigo               = txtCodigo.Text,
                CodigoBarra          = txtCodigoBarra.Text,
                Abreviatura          = txtAbreviatura.Text,
                Descripcion          = txtDescripcion.Text,
                Detalle              = txtDetalle.Text,
                Foto                 = ImagenDb.Convertir_Imagen_Bytes(imgFotoArticulo.Image),
                ActivarLimiteVenta   = Convert.ToBoolean(checkBoxLimiteVenta.CheckState),
                LimiteVenta          = nudLimiteVenta.Value,
                PermiteStockNegativo = Convert.ToBoolean(checkBoxStockNegativo.CheckState),
                EstaDiscontinuado    = Convert.ToBoolean(checkBoxDiscontinuado.CheckState),
                StockMaximo          = nudStockMax.Value,
                StockMinimo          = nudStockMin.Value,
                DescuentaStockl      = Convert.ToBoolean(checkBoxDescuentaStock.CheckState),
                MarcaId              = ((MarcaDto)cmbMarca.SelectedItem).Id,
                RubroId              = ((RubroDto)cmbRubro.SelectedItem).Id,
                Stock                = nudStock.Value
            };

            var codigoArticulo = _articuloServicio.ObtenerPorCodigo(txtCodigo.Text);

            if (_articuloServicio.VerificarSiExisteCodigo(txtCodigo.Text) && codigoArticulo.Id != articuloModificar.Id)
            {
                MessageBox.Show(@"El código que desea utilizar ya está en uso");
                return(false);
            }
            else
            {
                _articuloServicio.Modificar(articuloModificar);
                return(true);
            }
        }
コード例 #2
0
        private void txtCodigo_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!string.IsNullOrEmpty(txtCodigo.Text))
            {
                if (e.KeyChar == (char)Keys.Enter)
                {
                    if (txtCodigo.Text.Contains("*"))
                    {
                        if (AsignarArticuloAlternativo(txtCodigo.Text))
                        {
                            btn_Agregar.PerformClick();
                            return;
                        }
                    }

                    if (txtCodigo.Text.Length == 13)
                    {
                        if (_configuracion.ActivarBascula &&
                            _configuracion.CodigoBascula == txtCodigo.Text.Substring(0, 4))
                        {
                            if (AsignarArticuloPorBascula(txtCodigo.Text))
                            {
                                btn_Agregar.PerformClick();
                                return;
                            }
                        }
                        else
                        {
                            _articuloSeleccionado = _articuloServicio.ObtenerPorCodigo(txtCodigo.Text,
                                                                                       (long)cmbListaPrecio.SelectedValue,
                                                                                       _configuracion.DepositoVentaId);
                        }
                    }
                    else
                    {
                        _articuloSeleccionado = _articuloServicio.ObtenerPorCodigo(txtCodigo.Text,
                                                                                   (long)cmbListaPrecio.SelectedValue,
                                                                                   _configuracion.DepositoVentaId);
                    }

                    if (_articuloSeleccionado != null)
                    {
                        if (_permiteAgregarPorCantidad)
                        {
                            txtCodigo.Text         = _articuloSeleccionado.CodigoBarra;
                            txtDescripcion.Text    = _articuloSeleccionado.Descripcion;
                            txtPrecioUnitario.Text = _articuloSeleccionado.PrecioStr;
                            nudCantidad.Focus();
                            nudCantidad.Select(0, nudCantidad.Text.Length);
                            return;
                        }
                        else
                        {
                            btn_Agregar.PerformClick();
                        }
                    }
                    else
                    {
                        LimpiarParaNuevoItem();
                    }
                }
            }

            e.Handled = false;
        }
コード例 #3
0
        private void AgregarArticulo()
        {
            var articulo = _articuloServicio.ObtenerPorCodigo(_mesaId, txtCodigos.Text);

            if (articulo != null)
            {
                if (articulo.Precio != null)
                {
                    var precio = _precioServicio.Obtener(_mesaId, articulo.Id);

                    if (!precio.ActivarHoraVenta || (precio.ActivarHoraVenta && (precio.FechaActualizacion.TimeOfDay >= DateTime.Now.TimeOfDay)))
                    {
                        if (!articulo.EstaDiscontinuado && !articulo.EstaEliminado)
                        {
                            if (!articulo.ActivarLimiteVenta || articulo.LimiteVenta >= nudCantidad.Value)
                            {
                                if (articulo.Stock >= nudCantidad.Value || articulo.PermiteStockNegativo ||
                                    !articulo.DescuentaStock)
                                {
                                    _mesaServicio.AgregarArticulo(_mesaId, articulo, nudCantidad.Value);

                                    ActualizarGrilla(_mesaId);
                                    if (articulo.StockMinimo >= articulo.Stock)
                                    {
                                        MessageBox.Show(
                                            $"Debe recargar el Stock de {articulo.Descripcion}! (Stock inferior al Stock Minimo)",
                                            $"Recarga de Stock de {articulo.Descripcion}", MessageBoxButtons.OK,
                                            MessageBoxIcon.Exclamation);
                                    }
                                }
                                else
                                {
                                    MessageBox.Show(@"No se pudo realizar la operacion por falta de Stock", "Atencion",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                }
                            }
                            else
                            {
                                MessageBox.Show(@"No se pudo realizar la operacion por limite de venta", "Atencion",
                                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            }
                        }
                        else
                        {
                            MessageBox.Show(
                                @"No se pudo realizar la operacion el articulo esta eliminado/descontinuado.",
                                "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                    }
                    else
                    {
                        MessageBox.Show(
                            $"No se pudo agregar el producto: '{articulo.Descripcion} ya que termino la hora de venta.",
                            "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                }
                else
                {
                    MessageBox.Show(
                        $"No se pudo agregar el producto: '{articulo.Descripcion} ya que carece de precio en este salon.",
                        "Atencion", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            else
            {
                var fBuscar = new _00044_BuscarProducto(_mesaId);
                fBuscar.ShowDialog();
                if (fBuscar.RealizoOperacion)
                {
                    txtDescripcion.Text = fBuscar.Descripcion;
                    txtCodigos.Text     = fBuscar.Codigo;
                    txtPrecio.Text      = fBuscar.Precio;
                }
            }
        }