Пример #1
0
        //Método que llama al método que buscar un articulo en stock usando el codigo de barras
        public static DataTable BuscarStockCodigo(string textoBuscar)
        {
            DStock Obj = new DStock();

            Obj.TextoBuscar = textoBuscar;
            return(Obj.BuscarStockCodigo(Obj));
        }
Пример #2
0
        //Método que llama al método que busca la lista de ingresos con sus cantidades para disminuir el stock por cada venta
        public static DataTable BuscarArticuloStock(string textoBuscar)
        {
            DStock Obj = new DStock();

            Obj.TextoBuscar = textoBuscar;
            return(Obj.BuscarArticuloStock(Obj));
        }
Пример #3
0
 private void SelectNombresStockConMarcaAsociadaByCodProveedor(int codProveedor)
 {
     stock = new DStock();
     ProductoComboBox.DataSource =
         stock.SelectNombresStockConMarcaAsociadaByCodProveedor(codProveedor);
     ProductoComboBox.DisplayMember = "Nombre";
     ProductoComboBox.ValueMember   = "CodStock";
 }
Пример #4
0
        private void GenerarPedidosAutoButton_Click_1(object sender, EventArgs e)
        {
            if (ProveedorComboBox.SelectedIndex == -1)
            {
                errorProvider1.SetError(ProveedorComboBox, "Seleccione un proveedor");
                ProveedorComboBox.Focus();
                return;
            }

            var rta = MessageBox.Show("¿Está seguro de generar un pedido automatizado?", "Confirmación",
                                      MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (rta == DialogResult.No)
            {
                return;
            }

            var codProv = (int)ProveedorComboBox.SelectedValue;

            stock = new DStock();
            List <DStockParaPedidosAuto> valoresStock = stock.SelectListadoStockActualMenorAlCritico(codProv);

            if (valoresStock == null)
            {
                MessageBox.Show("No se generó el pedido, no hay productos cuyo stock actual sea menor al crítico", "Atención",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);
                return;
            }


            int codPedido = InsertPedido(DateTime.Now, false, true, codProv);


            foreach (var stock in valoresStock)
            {
                InsertStockPedido(codPedido, stock.CodStock, stock.StockCritico - stock.StockActual, 1, 1);
            }

            var popup1 = new PopupNotifier()
            {
                Image        = Properties.Resources.sql_success1,
                TitleText    = "Mensaje",
                ContentText  = $"El pedido automatizado con código:{codPedido} fue grabado de forma exitosa",
                ContentFont  = new Font("Segoe UI Bold", 11F),
                TitleFont    = new Font("Segoe UI Bold", 10F),
                ImagePadding = new Padding(8)
            };

            popup1.Popup();

            misDetalles.Clear();
            ActualizarGrid();
            LimpiarCampos();
            DeshabilitarCampos();
            SelectPedidosReaprov();
            ProductoComboBox.Focus();
        }
Пример #5
0
        private void AgregaStock()
        {
            var dStock = new DStock();

            StockComboBox.DataSource    = null;
            StockComboBox.DataSource    = dStock.SelectStockSinProveedoresAsociados((int)DgvProveedores.SelectedRows[0].Cells[0].Value);
            StockComboBox.DisplayMember = "Nombre";
            StockComboBox.ValueMember   = "CodStock";
        }
Пример #6
0
 private void FiltrarStockTextBox_TextChanged(object sender, EventArgs e)
 {
     if (FiltrarStockTextBox.Text.Trim() != string.Empty)
     {
         stock = new DStock();
         DgvStock.DataSource = stock.SelectStockByNombre(FiltrarStockTextBox.Text.Trim());
         DgvStock.Refresh();
     }
     else
     {
         SelectStock();
     }
 }
Пример #7
0
        private void CrearRegistracionButton_Click(object sender, EventArgs e)
        {
            if (DgvInformes.RowCount == 0)
            {
                MessageBox.Show("No hay informe de recepción", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            var rta = MessageBox.Show("¿Registrar informe de recepción y sus productos?", "Confirmación"
                                      , MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (rta == DialogResult.No)
            {
                return;
            }

            // 0. Insertar registración

            dRegistracion = new DRegistracion();
            var codInforme = (int)DgvInformes.SelectedRows[0].Cells[0].Value;

            dRegistracion.InsertRegistracionCompra(codInforme, DateTime.Now);


            // 1. Obtener la orden de compra del informe

            var codOrdenCompra = (int)DgvInformes.SelectedRows[0].Cells[1].Value;

            // 2. Obtener pedido reaprov. o solicitud

            pedidoReaprov = new DPedidoReaprov();

            var codPR = pedidoReaprov.GetCodPedidoReaprovByCodOrdenCompra(codOrdenCompra);

            // 3. Obtener productos del pedido

            dStockPedido = new DStockPedidoReaprov();
            var dt2 = dStockPedido.GetStockEnPedidoReaprov(codPR);

            // 4. Modificar stock


            try
            {
                dStock = new DStock();

                for (int i = 0; i < dt2.Rows.Count; i++)
                {
                    dStock.UpdateStockActualRegis(
                        (int)dt2.Rows[i]["CodStock"],
                        (int)dt2.Rows[i]["Cantidad"]);
                }

                var popup1 = new PopupNotifier()
                {
                    Image        = Properties.Resources.sql_success1,
                    TitleText    = "Mensaje",
                    ContentText  = "Se registró el informe con éxito",
                    ContentFont  = new Font("Segoe UI Bold", 11F),
                    TitleFont    = new Font("Segoe UI Bold", 10F),
                    ImagePadding = new Padding(10)
                };
                popup1.Popup();
            }
            catch (Exception ex)
            {
                MessageBox.Show($"ERROR: {ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            SelectInformes();
            SelectRegistraciones();
        }
Пример #8
0
        private void CotizarProductoButton_Click(object sender, EventArgs e)
        {
            int codProducto = (int)DgvProductosPorCotizar.SelectedRows[0].Cells[0].Value;

            if (isPedido)
            {
                var stock = new DStock();
                if (!stock.StockTieneProveedorAsociado(codProducto))
                {
                    MessageBox.Show("El producto no tiene un proveedor asociado. Asígnele uno para seguir cotizando",
                                    "Mensaje",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }
            else
            {
                var bienUso = new DBienUso();
                if (!bienUso.BienUsoTieneProveedorAsociado(codProducto))
                {
                    MessageBox.Show("El bien de uso no tiene un proveedor asociado. Asígnele uno para seguir cotizando",
                                    "Mensaje",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
            }



            var rta = MessageBox.Show("¿Está seguro de cotizar el producto?", "Confirmación",
                                      MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (rta == DialogResult.No)
            {
                return;
            }

            int codCotizacion;

            try
            {
                if (isPedido)
                {
                    codCotizacion = dCotizacionPR.InsertCotizacionPR(codProducto,
                                                                     (int)DgvPedidos.SelectedRows[0].Cells[0].Value, "1 Semana", DateTime.Now, 0);

                    //dCotizacionPR.InsertCotizacionPRProveedor(codCotizacion, (int)ProveedorComboBox.SelectedValue);
                }
                else
                {
                    codCotizacion = dCotizacionSC.InsertCotizacionSC(codProducto,
                                                                     (int)DgvSolicitudes.SelectedRows[0].Cells[0].Value, "1 Semana", DateTime.Now, 0);

                    //dCotizacionSC.InsertCotizacionSCProveedor(codCotizacion, (int)ProveedorComboBox.SelectedValue);
                }


                MessageBox.Show("Cotización realizada con éxito", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show($"Error al insertar la cotización: {ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            //DeshabilitarCampos();

            DgvProductosPorCotizar.Rows.RemoveAt(DgvProductosPorCotizar.CurrentRow.Index);
            if (DgvProductosPorCotizar.RowCount == 0)
            {
                if (isPedido)
                {
                    CargarPedidos();
                    CargarCotizacionesPedido();
                }
                else
                {
                    CargarSolicitudes();
                    CargarCotizacionesSolicitud();
                }

                DeshabilitarCampos();
            }
        }
Пример #9
0
 private void SelectStock()
 {
     stock = new DStock();
     DgvStock.DataSource = stock.SelectStock();
     DgvStock.Refresh();
 }
Пример #10
0
 private void ActualizarListadoStock_Click_1(object sender, EventArgs e)
 {
     stock = new DStock();
     DgvStock.DataSource = stock.SelectStock();
     DgvStock.Refresh();
 }