protected void btnModCompra_Click(object sender, EventArgs e)
        {
            int                  id          = Convert.ToInt32(Session["idCompraMod"]);
            CompraNegocio        CompraNeg   = new CompraNegocio();
            Compra               compra      = new Compra();
            DetalleCompraNegocio detallesNeg = new DetalleCompraNegocio();

            compra.id           = id;
            compra.fechaCompra  = Convert.ToDateTime(txbPedido.Text);
            compra.formaPago    = ddlPago.SelectedValue;
            compra.proveedor    = new Proveedor();
            compra.proveedor.id = Convert.ToInt64(ddlProveedores.SelectedValue);
            compra.estadoCompra = ddlEstados.SelectedValue;
            compra.total        = Convert.ToDouble(txbTotal.Text.ToString());
            compra.detalle      = detallesNeg.Listar(id);
            if (compra.estadoCompra.Equals("Devolucion"))
            {
                txbDescripcion.Visible = true;
                btnAgregarDesc.Visible = true;
                CompraNeg.Modificar(compra);
            }
            else if (compra.estadoCompra.Equals("Entregado"))
            {
                foreach (Detallecompra item in compra.detalle)
                {
                    detallesNeg.AgregarStock(item.insumo.id, item.cantidad);
                }
                CompraNeg.Modificar(compra);
                Response.Redirect("compras.aspx");
            }
        }
Пример #2
0
        private void BtnMod_Click(object sender, EventArgs e)
        {
            CompraNegocio negC = new CompraNegocio();
            LoteNegocio   negL = new LoteNegocio();

            try
            {
                if (c.IdCompra == 0)
                {
                    c.Proveedor = new Proveedor();
                }
                c.Proveedor   = (Proveedor)BoxProveedor.SelectedItem;
                c.FechaCompra = DateCompra.Value;
                if (c.IdCompra != 0)
                {
                    negC.Modificar(c);
                    negL.EliminarLotesDeCompra(c.IdCompra);
                }
                else
                {
                    c.IdCompra = Convert.ToInt32(negC.Agregar(c));
                }
                foreach (Lote l in c.LstLotes)
                {
                    l.IdCompra = c.IdCompra;
                    negL.Agregar(l);
                    negL.ActualizarStock(l.Producto.IdProducto);
                }
                this.Close();
            }
            catch (Exception ex)
            {
                Mensaje m = new Mensaje(ex.ToString()); m.ShowDialog();
            }
        }
Пример #3
0
        protected void dgvDetalles_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                if (e.CommandName.Equals("AddNew"))
                {
                    DetalleCompraNegocio detNeg = new DetalleCompraNegocio();
                    Detallecompra        det    = new Detallecompra();
                    CompraNegocio        cn     = new CompraNegocio();
                    det.insumo         = new Insumo();
                    det.insumo.id      = Convert.ToInt64((dgvDetalles.FooterRow.FindControl("ddlInsumosFooter") as DropDownList).Text);
                    det.insumo.nombre  = (dgvDetalles.FooterRow.FindControl("ddlInsumosFooter") as DropDownList).SelectedItem.ToString();                    det.cantidad = Convert.ToInt32((dgvDetalles.FooterRow.FindControl("txbCantidadFooter") as TextBox).Text);
                    det.precioUnitario = Convert.ToDouble((dgvDetalles.FooterRow.FindControl("txbPrecioFooter") as TextBox).Text);
                    det.cantidad       = Convert.ToInt32((dgvDetalles.FooterRow.FindControl("txbCantidadFooter") as TextBox).Text);
                    det.totalProducto  = det.precioUnitario * det.cantidad;
                    det.compra         = new Compra();
                    det.compra.id      = Convert.ToInt64(Session["idCompra"].ToString());
                    detNeg.Agregar(det);
                    detNeg.AgregarStock(det.insumo.id, det.cantidad);
                    cn.ModificarTotal(det.compra.id, det.totalProducto);
                    lblCorrecto.Text   = "Agregado correctamente.";
                    lblIncorrecto.Text = "";

                    CargarDetalle(Convert.ToInt32(det.compra.id));
                }
            }
            catch (Exception ex)
            {
                lblCorrecto.Text   = "";
                lblIncorrecto.Text = ex.Message;
            }
        }
Пример #4
0
        protected void btnGuardarFactura_Click(object sender, EventArgs e)
        {
            Compra        compra        = new Compra();
            CompraNegocio compraNegocio = new CompraNegocio();

            compra.proveedor    = new Proveedor();
            compra.proveedor.id = Convert.ToInt64(ddlProveedores.SelectedValue);
            compra.fechaCompra  = Convert.ToDateTime(txbFecha.Text);
            compra.estadoCompra = (ddlEstados.SelectedValue).ToString();
            compra.formaPago    = (ddlFormaPago.SelectedValue).ToString();
            compra.detalle      = (Session["DetalleCompra"] as List <Detallecompra>);
            compra.total        = Convert.ToDouble(txbTotal.Text);
            DetalleCompraNegocio det = new DetalleCompraNegocio();

            compraNegocio.agregar(compra);
            if (compra.estadoCompra.Equals("Entregado"))
            {
                foreach (Detallecompra item in compra.detalle)
                {
                    compraNegocio.agregarProductosXCompra(compraNegocio.BuscarIDCompra(), item.insumo.id, item.cantidad, item.precioUnitario);
                    compraNegocio.AgregarStock(item.insumo.id, item.cantidad);
                }
            }
            else
            {
                foreach (Detallecompra item in compra.detalle)
                {
                    compraNegocio.agregarProductosXCompra(compraNegocio.BuscarIDCompra(), item.insumo.id, item.cantidad, item.precioUnitario);
                }
            }

            Session["DetalleCompra"] = null;
            Session["Total"]         = null;
            Response.Redirect("DetallesCompra.aspx");
        }
        protected void btnAgregarDesc_Click(object sender, EventArgs e)
        {
            DetalleCompraNegocio detNeg       = new DetalleCompraNegocio();
            Detallecompra        detalle      = new Detallecompra();
            CompraNegocio        comNeg       = new CompraNegocio();
            List <Detallecompra> listaDetalle = new List <Detallecompra>();
            string descripcion = txbDescripcion.Text;

            if (descripcion != "")
            {
                long idCompra = Convert.ToInt64(Session["idCompraMod"]);
                listaDetalle = detNeg.Listar(Convert.ToInt32(idCompra));
                detNeg.AgregarComentario(idCompra, descripcion);
                foreach (Detallecompra item in listaDetalle)
                {
                    detNeg.ModificarEstado(item.id);
                    detalle = detNeg.BuscarDetalle(Convert.ToInt32(item.id));
                    detNeg.EliminarStock(detalle);
                }

                lblCorrecto.Text   = "Elminado correctamente.";
                lblIncorrecto.Text = "";
                Response.Redirect("compras.aspx");
            }
        }
        public void GuardarCompra(object sender, EventArgs e)
        {
            CompraNegocio    negocioCompra    = new CompraNegocio();
            ProveedorNegocio negocioProveedor = new ProveedorNegocio();
            List <Detalle>   listaDetalle     = new List <Detalle>();
            string           response;

            listaDetalle = Session["listaDetalle"] != null? (List <Detalle>)Session["listaDetalle"] : null;
            if (listaDetalle != null)
            {
                compraLocal           = new Compra();
                compraLocal.Proveedor = negocioProveedor.traerProveedor(ddlProveedores.SelectedItem.Value);
                compraLocal.Detalle   = listaDetalle;
                compraLocal.Fecha     = DateTime.Now;
                response = negocioCompra.agregarCompraYDetalle(compraLocal);
                if (response == "")
                {
                    Session["Exito"] = "Venta generada exitosamente!";
                    Response.Redirect("Exito.aspx");
                }
                else
                {
                    Session["Error"] = response;
                    Response.Redirect("Error.aspx");
                }
            }
            else
            {
                Alerta("Oops! No tienes ningun producto en tu lista de compra!");
            }
        }
Пример #7
0
        protected void BindearListaVentas()
        {
            CompraNegocio negocio = new CompraNegocio();

            listaCompras         = negocio.listar();
            dgvVentas.DataSource = listaCompras;
            dgvVentas.DataBind();
        }
        void cargar()
        {
            CompraNegocio compraNegocio = new CompraNegocio();

            listaCompras     = compraNegocio.listarComprasEliminadas();
            tabla.DataSource = listaCompras;
            tabla.DataBind();
        }
Пример #9
0
        protected void FiltrarGridProductos(object sender, EventArgs e)
        {
            CompraNegocio negocioCompra = new CompraNegocio();

            listaCompras = negocioCompra.listar();

            if (dtpFecha.Text != "")
            {
                switch (ddlFechaFiltro.Text)
                {
                case "mayor que":
                    listaCompras = listaCompras.FindAll(X => X.Fecha.Date.CompareTo(DateTime.Parse(dtpFecha.Text)) > 0);
                    break;

                case "menor que":
                    listaCompras = listaCompras.FindAll(X => X.Fecha.Date.CompareTo(DateTime.Parse(dtpFecha.Text)) < 0);
                    break;

                case "igual a":
                    listaCompras = listaCompras.FindAll(X => X.Fecha.Date.Equals(DateTime.Parse(dtpFecha.Text)));
                    break;
                }
            }
            if (txtClienteDNI.Text != "")
            {
                listaCompras = listaCompras.FindAll(X => X.Proveedor.CUIT == txtClienteDNI.Text);
            }
            if (txtImporte.Text != "")
            {
                switch (ddlImporteFiltro.Text)
                {
                case "mayor que":
                    listaCompras = listaCompras.FindAll(X => X.Total > float.Parse(txtImporte.Text));
                    break;

                case "menor que":
                    listaCompras = listaCompras.FindAll(X => X.Total < float.Parse(txtImporte.Text));
                    break;

                case "igual a":
                    listaCompras = listaCompras.FindAll(X => X.Total == float.Parse(txtImporte.Text));
                    break;
                }
            }
            Session["listaVentas"] = listaCompras;
            dgvVentas.DataSource   = listaCompras;
            dgvVentas.DataBind();
        }
Пример #10
0
        protected void agregar_Click(object sender, EventArgs e)
        {
            ProductoNegocio prodNegocio = new ProductoNegocio();
            Producto        prod        = new Producto();
            Compra          compra      = new Compra();
            CompraNegocio   compneg     = new CompraNegocio();

            if (cantidad.Text == "")
            {
                Session["Error" + Session.SessionID] = "Verifique que todos los campos esten completos.";
                Response.Redirect("PaginaError.aspx");
            }

            int stock = Convert.ToInt32(cantidad.Text);

            try
            {
                listadoDeCompras               = new List <Producto>();
                compra                         = new Compra();
                compra.numeroCompra            = Convert.ToInt32(numero.Text);
                compra.Fecha                   = System.DateTime.Now;
                compra.Cantidad                = stock;
                compra.precio                  = Convert.ToDecimal(precio.Text);
                compra.producto                = prodNegocio.buscarObjeto(producto.SelectedValue);
                compra.producto.Codigo         = prodNegocio.buscarCodigo(producto.SelectedValue);
                compra.producto.StockActual    = compra.producto.StockActual + compra.Cantidad;
                compra.producto.PrecioUnitario = compra.precio;
                compra.producto.proveedor      = new Proveedor();
                ProveedorNegocio pnegocio = new ProveedorNegocio();
                compra.producto.proveedor.DNI = pnegocio.Buscar(producto.SelectedValue);

                prodNegocio.ActualizarStock(compra.producto);
                compneg.Comprar(compra);
                Response.Write("<script>alert('La compra se ha realizado correctamente.');</script>");
            }
            catch (Exception)
            {
                Session["Error" + Session.SessionID] = "Verifique que todos los campos esten completos.";
                Response.Redirect("PaginaError.aspx");
            }
            finally
            {
                listarCompras(stock);
            }
        }
Пример #11
0
        protected void dgvCompras_RowEditing(object sender, GridViewEditEventArgs e)
        {
            dgvCompras.EditIndex = e.NewEditIndex;
            CompraNegocio compraNegocio = new CompraNegocio();
            long          idCompra      = Convert.ToInt64((dgvCompras.Rows[e.NewEditIndex].FindControl("lblID") as Label).Text);
            Compra        compra        = compraNegocio.listar(Convert.ToInt32(idCompra))[0];
            string        estado        = compra.estadoCompra;

            if (estado != "Devolucion")
            {
                Session["idCompraMod"] = idCompra;
                Response.Redirect("ModificarCompra.aspx");
            }
            else
            {
                lblIncorrecto.Text = "No se puede editar.";
            }
        }
Пример #12
0
        private void LlenarTabla()
        {
            CompraNegocio neg = new CompraNegocio();

            try
            {
                dgvCompras.DataSource = neg.Listar(activo);
                dgvCompras.Columns["IdCompra"].HeaderText    = "ID";
                dgvCompras.Columns["FechaCompra"].HeaderText = "Fecha de Compra";
                dgvCompras.Columns["FechaRegistro"].Visible  = false;
                dgvCompras.Columns["Activo"].Visible         = false;
                dgvCompras.Update();
                dgvCompras.Refresh();
            }
            catch (Exception ex)
            {
                Mensaje m = new Mensaje(ex.ToString()); m.ShowDialog();
            }
        }
Пример #13
0
        protected void eliminar_Click(object sender, EventArgs e)
        {
            try
            {
                CompraNegocio   compraneg   = new CompraNegocio();
                ProductoNegocio prodNegocio = new ProductoNegocio();
                Compra          compra      = new Compra();
                compra = compraneg.BuscarxNumCompra(Convert.ToInt32(numero.Text));
                compra.producto.StockActual = compra.producto.StockActual - compra.Cantidad;
                prodNegocio.RestarStock(compra.producto.Nombre, compra.producto.StockActual);
                compraneg.eliminarCompra(Convert.ToInt32(numero.Text), motivo.Text);

                cargar();
            }
            catch (Exception)
            {
                Session["Error" + Session.SessionID] = "Para realizar una eliminación es obligatorio escribir el el número de compra.";
                Response.Redirect("PaginaError.aspx");
            }
        }
        protected void CargarCombos()
        {
            long          id        = Convert.ToInt64(Session["idCompraMod"]);
            CompraNegocio compraNeg = new CompraNegocio();
            Compra        compra    = compraNeg.listar(Convert.ToInt32(id))[0];

            ddlProveedores.DataSource     = new ProveedorNegocio().listar();
            ddlProveedores.DataTextField  = "Nombre";
            ddlProveedores.DataValueField = "id";
            ddlProveedores.SelectedValue  = compra.proveedor.id.ToString();
            ddlProveedores.DataBind();
            ddlEstados.SelectedValue = compra.estadoCompra.ToString();
            ddlPago.SelectedValue    = compra.formaPago;
            txbTotal.Text            = compra.total.ToString();
            txbPedido.Text           = compra.fechaCompra.ToString("yyyy-MM-dd");
            DetalleCompraNegocio detNeg = new DetalleCompraNegocio();

            Session["DetalleCompra"] = detNeg.Listar(Convert.ToInt32(id));
            dgvDetalles.DataSource   = detNeg.Listar(Convert.ToInt32(id));
            dgvDetalles.DataBind();
        }
Пример #15
0
 private void BtnAnular_Click(object sender, EventArgs e)
 {
     if (dgvCompras.SelectedCells.Count > 0)
     {
         CompraNegocio neg = new CompraNegocio();
         Compra        c   = (Compra)dgvCompras.CurrentRow.DataBoundItem;
         try
         {
             using (var popup = new Confirmacion(@"anular la compra """ + c.ToString() + @""""))
             {
                 var R = popup.ShowDialog();
                 if (R == DialogResult.OK)
                 {
                     bool conf = popup.R;
                     if (c != null && conf == true)
                     {
                         if (neg.AnularCompra(c))
                         {
                             LlenarTabla();
                         }
                         else
                         {
                             Mensaje me = new Mensaje("No se puede anular compra con productos faltantes."); me.ShowDialog();
                         }
                     }
                 }
             }
         }
         catch (Exception ex)
         {
             Mensaje mex = new Mensaje(ex.ToString()); mex.ShowDialog();
         }
     }
     else
     {
         Mensaje m = new Mensaje("Ningun item seleccionado.");
         m.ShowDialog();
     }
 }
Пример #16
0
 protected void dgvCompras_RowUpdating(object sender, GridViewUpdateEventArgs e)
 {
     try
     {
         CompraNegocio        ComprasNeg  = new CompraNegocio();
         DetalleCompraNegocio detallesNeg = new DetalleCompraNegocio();
         Compra compra = new Compra();
         compra.proveedor    = new Proveedor();
         compra.id           = Convert.ToInt64(dgvCompras.DataKeys[e.RowIndex].Value.ToString());
         compra.proveedor.id = Convert.ToInt64((dgvCompras.Rows[e.RowIndex].FindControl("ddlProveedor") as DropDownList).Text);
         compra.estadoCompra = (dgvCompras.Rows[e.RowIndex].FindControl("ddlEstado") as DropDownList).Text;
         compra.formaPago    = (dgvCompras.Rows[e.RowIndex].FindControl("ddlPago") as DropDownList).Text;
         compra.total        = Convert.ToDouble((dgvCompras.Rows[e.RowIndex].FindControl("txbTotal") as TextBox).Text);
         compra.detalle      = detallesNeg.Listar(Convert.ToInt32(compra.id));
         if (compra.estadoCompra.Equals("Devolucion"))
         {
             foreach (Detallecompra item in compra.detalle)
             {
                 detallesNeg.EliminarStock(item);
             }
         }
         else if (compra.estadoCompra.Equals("Entregado"))
         {
             foreach (Detallecompra item in compra.detalle)
             {
                 detallesNeg.AgregarStock(item.insumo.id, item.cantidad);
             }
         }
         ComprasNeg.Modificar(compra);
         lblCorrecto.Text   = "Modificado correctamente.";
         lblIncorrecto.Text = "";
         Response.Redirect("compras.aspx");
     }
     catch (Exception ex)
     {
         lblCorrecto.Text   = "";
         lblIncorrecto.Text = ex.Message;
     }
 }
Пример #17
0
        protected void dgvCompras_SelectedIndexChanged(object sender, EventArgs e)
        {
            GridViewRow          gr         = dgvCompras.SelectedRow;
            DetalleCompraNegocio detNegocio = new DetalleCompraNegocio();
            CompraNegocio        comNeg     = new CompraNegocio();
            int id;

            id = Convert.ToInt32(dgvCompras.SelectedDataKey.Value.ToString());
            dgvDetalles.DataSource = detNegocio.Listar(id);
            dgvDetalles.DataBind();
            dgvDetalles.Visible   = true;
            dgvCompras.DataSource = comNeg.listar(id);
            dgvCompras.DataBind();
            Session["idCompra"] = id;
            CargarDetalle(id);
            btnAtras.Visible = true;
            if (comNeg.listar(id)[0].estadoCompra.Equals("Devolucion"))
            {
                txbDesc.Visible = true;
                lblDesc.Visible = true;
                txbDesc.Text    = comNeg.BuscarMotivo(id);
            }
        }
Пример #18
0
        private void btnFinalizar_Click(object sender, EventArgs e)
        {
            Cursor.Current = Cursors.WaitCursor;
            if (cmbProveedores.SelectedItem != null)
            {
                if (Detalle.Count > 0)
                {
                    CompraNegocio   negocioCom  = new CompraNegocio();
                    ProductoNegocio negocioProd = new ProductoNegocio();
                    Compra          nuevaCompra = new Compra();
                    nuevaCompra.Proveedor = new Proveedor();
                    nuevaCompra.Detalle   = new List <DetalleCompra>();

                    nuevaCompra.Proveedor = (Proveedor)cmbProveedores.SelectedItem;
                    nuevaCompra.Detalle   = Detalle.ToList();
                    nuevaCompra.Importe   = Convert.ToDecimal(lblPrecioTotal.Text);

                    nuevaCompra.ID = negocioCom.agregarCompra(nuevaCompra);
                    foreach (DetalleCompra item in nuevaCompra.Detalle)
                    {
                        negocioCom.agregarProductosXCompra(nuevaCompra.ID, item.Producto.ID, item.Cantidad);
                        negocioProd.aumentarStock(item.Producto, item.Cantidad);
                    }
                    restablecerControles();
                    Detalle.Clear();
                }
                else
                {
                    MessageBox.Show("No hay productos en la compra actual", "Cuidado!");
                }
            }
            else
            {
                MessageBox.Show("No hay proveedor asignado", "Cuidado!");
            }
            Cursor.Current = Cursors.Default;
        }