Exemple #1
0
        private void InsertarDetalle(Int32 FacturaID)
        {
            //Obtenemos el % de Comision del vendedor
            VendedorBL ObjetoVendedor = new VendedorBL();
            Decimal    Comision       = ObjetoVendedor.BuscarPorID(ObtenerVendedor()).Comision;

            //Obtenemos el detalle de las facturas creadas.

            List <cDetalleFactura> ListaDetalleFactura = new List <cDetalleFactura>();

            foreach (DataGridViewRow row in dgvDetalleFactura.Rows)
            {
                cDetalleFactura Detalle = new cDetalleFactura();
                Detalle.FacturaID      = FacturaID;
                Detalle.TipoDocumento  = "C";
                Detalle.ArticuloID     = Convert.ToInt32(row.Cells[0].Value);
                Detalle.Precio         = Convert.ToDecimal(row.Cells[4].Value);
                Detalle.Cantidad       = Convert.ToDecimal(row.Cells[3].Value);
                Detalle.Costo          = Convert.ToDecimal(row.Cells[10].Value);
                Detalle.ImpuestoValor  = Convert.ToDecimal(row.Cells[5].Value);
                Detalle.DescuentoValor = Convert.ToDecimal(row.Cells[7].Value);
                Detalle.UnidadVentaID  = Convert.ToInt32(row.Cells[11].Value);
                Detalle.TipoProducto   = row.Cells[12].Value.ToString();
                Detalle.ValorComision  = (Convert.ToDecimal(Comision) * (Convert.ToDecimal(row.Cells[4].Value)));
                Detalle.ComisionVenta  = Comision;
                ListaDetalleFactura.Add(Detalle);
            }
            DetalleFacturaBL ObjetoDetalleFactura = new DetalleFacturaBL();

            ObjetoDetalleFactura.Crear(ListaDetalleFactura);
        }
Exemple #2
0
        private void btnInsertar_Click(object sender, EventArgs e)
        {
            DetalleFacturaBL ObjetoDetalle = new DetalleFacturaBL();

            List <cDetalleFactura> ListaDetalle = ObjetoDetalle.ListarDetalleDevolucion(txtCodigo.Text, ObtenerDocumentoReferencia());

            //Asignamos los valores a partir del codigo del articulo proporcionado
            AsignarValores(ListaDetalle.FirstOrDefault());
            if (_Codigo > 0)
            {
                //Insertamos el articulo seleccionado, cantidad, precio, costo y demas en el DataGrid
                InsertarDetalle();
            }
            else
            {
                MessageBox.Show("Error, debe proporcionar un articulo para ser incluido en la factura", "Error insertando articulo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                LimpiarCampos();
            }
        }
Exemple #3
0
        public void BuscarArticulo(Int64 Codigo)
        {
            //Buscamos el articulo en inventario
            cInventario Articulo = ObjetoInventario.BuscarPorID(Codigo);

            //Detalle de Factura
            DetalleFacturaBL ObjetoDetalle = new DetalleFacturaBL();

            //Buscamos el articulo en la factura seleccionada
            List <cDetalleFactura> ListaArticulos = ObjetoDetalle.ListarDetalleDevolucion(Articulo.CodigoArticulo, ObtenerDocumentoReferencia());
            //Verificamos el resultado de la busqueda
            Int32 IX;

            if (ListaArticulos.Count > 0)
            {
                //Mostramos los valores del resultado a los controles indicador en el formulario
                MostrarResultados(ListaArticulos);
                txtCantidad.Focus();
            }
        }
Exemple #4
0
        private Boolean ValidacionCantidad()
        {
            //Valida si la cantidad introducida es mayor a la cantidad disponible para devolucion
            cDetalleFactura  DetalleFactura;
            DetalleFacturaBL ObjetoDetalle = new DetalleFacturaBL();

            //Lista de Articulos Asociados a la factura
            DetalleFactura = ObjetoDetalle.ListarDetalleDevolucion(txtCodigo.Text, ObtenerDocumentoReferencia()).FirstOrDefault();

            //Cantidad de Articulos a devolver
            Int32 CantidadDevuelta = ObtenerCantidad();

            if (CantidadDevuelta > DetalleFactura.Cantidad)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
Exemple #5
0
        private void BuscarArticulo(String CodigoArticulo)
        {
            DetalleFacturaBL ObjetoDetalle = new DetalleFacturaBL();

            //Buscamos el articulo en el inventario por su codigo de articulo
            List <cDetalleFactura> ListaArticulos = ObjetoDetalle.ListarDetalleDevolucion(CodigoArticulo, ObtenerDocumentoReferencia());
            //Verificamos el resultado de la busqueda
            Int32 IX;

            if (ListaArticulos.Count > 0)
            {
                //Mostramos los valores del resultado a los controles indicador en el formulario
                MostrarResultados(ListaArticulos);
            }
            else
            {
                //Si el resultado es nulo entonces arrojamos el mensaje de error y limpiamos los campos
                MessageBox.Show("El articulo digitado no puedo se encontrado, vuelva a intentarlo", "Error en busqueda", MessageBoxButtons.OK, MessageBoxIcon.Error);
                LimpiarCampos();
                txtCodigo.Focus();
            }
        }
Exemple #6
0
 public DetalleFacturaController(DetalleFacturaBL detalleFacturaBL, IMapper mapper)
 {
     this.detalleFacturaBL = detalleFacturaBL;
     this.mapper           = mapper;
 }
Exemple #7
0
        private void BuscarFactura()
        {
            DetalleFacturaBL ObjetoDetalle = new DetalleFacturaBL();
            FacturaBL        ObjetoFactura = new FacturaBL();
            Int64            ID;

            if (txtReferencia.Text != String.Empty)
            {
                //Obtenemos el ID del Documento por medio del numero de documento
                ID = Convert.ToInt64(txtReferencia.Text);

                //Buscamos la cotizacion que tiene este numero de documento
                cFactura Factura = ObjetoFactura.BuscarPorID(ID, "F");
                //Verificamos que obtuvimos algun resultado
                if (Int64.TryParse(Factura.ID.ToString(), out ID))
                {
                    //Verificamos que la factura no este cancelada ni se encuentre devuelta
                    if (Factura.EstatusID.ToString() != "C" && Factura.EstatusID.ToString() != "D")
                    {
                        //Guardamos el ID de la FacturA
                        Int64 FacturaID = Factura.ID;
                        Int32 ClienteID = Convert.ToInt32(Factura.ClienteID);

                        //Asignamos los datos del cliente que se encuentra en la cotizacion
                        AsignarDatosCliente(ObjetoCliente.BuscarPorID(ClienteID));

                        //Buscamos la lista de Articulos que se encuentran en la cotizacion
                        List <cDetalleFactura> ListaDetalle = ObjetoDetalle.ListarDetalle(FacturaID, "F");

                        //Objeto Inventario para realizar operaciones
                        InventarioBL ObjetoInventario = new InventarioBL();
                        foreach (cDetalleFactura Detalle in ListaDetalle)
                        {
                            cInventario Articulo = ObjetoInventario.BuscarPorID(Detalle.ArticuloID);

                            //Insertamos los articulos en el DataGrid
                            InsertarLineaGrid(Detalle.ArticuloID,
                                              Articulo.CodigoArticulo,
                                              Articulo.Descripcion,
                                              Detalle.Cantidad,
                                              Detalle.Precio,
                                              Detalle.ImpuestoValor,
                                              (Detalle.ImpuestoValor / 100) * Detalle.Precio,
                                              Detalle.DescuentoValor,
                                              (Detalle.DescuentoValor / 100) * Detalle.Precio,
                                              (((Detalle.Cantidad * Detalle.Precio) - ((Detalle.DescuentoValor / 100) * Detalle.Precio)) + ((Detalle.ImpuestoValor / 100) * Detalle.Precio)),
                                              Detalle.Costo,
                                              Detalle.UnidadVentaID,
                                              Detalle.TipoProducto);
                        }
                    }
                    else
                    {
                        throw new Exception("La factura se encuentra cancelada o devuelta y no puede ser procesada");
                    }
                }
                else
                {
                    throw new Exception("La factura solicitada no se encuentra en la lista");
                }
            }
        }