public ActionResult GuardarVenta(string Fecha, string modoPago, string IdCliente, string Total, string usuario, List <DetalleVenta> ListadoDetalle)
        {
            string mensaje       = "";
            double iva           = 18;
            string idVendedor    = "321";
            int    codigoPago    = 0;
            long   codigoCliente = 0;
            double total         = 0;


            if (Fecha == "" || modoPago == "" || IdCliente == "" || Total == "")
            {
                if (Fecha == "")
                {
                    mensaje = "ERROR EN EL CAMPO FECHA";
                }
                if (modoPago == "")
                {
                    mensaje = "SELECCIONE UN MODO DE PAGO";
                }
                if (IdCliente == "")
                {
                    mensaje = "ERROR CON EL CODIGO DEL CLIENTE";
                }
                if (Total == "")
                {
                    mensaje = "ERROR EN EL CAMPO TOTAL";
                }
            }
            else
            {
                codigoPago    = Convert.ToInt32(modoPago);
                codigoCliente = Convert.ToInt64(IdCliente);
                total         = Convert.ToDouble(Total);

                //REGISTRO DE VENTA
                Venta  objVenta    = new Venta(total, codigoCliente, idVendedor, Fecha, iva);
                string codigoVenta = objVentaNeg.create(objVenta);
                if (codigoVenta == "" || codigoVenta == null)
                {
                    mensaje = "ERROR AL REGISTRAR LA VENTA";
                }
                else
                {
                    Session["idVenta"] = codigoVenta;
                    //REGISTRO DE FACTURA
                    Factura objFactura    = new Factura(Fecha, iva, total, codigoPago, usuario);
                    string  codigoFactura = objFacturaNeg.create(objFactura);
                    if (codigoFactura == "" || codigoFactura == null)
                    {
                        mensaje = "ERROR AL REGISTRAR LA FACTURA";
                    }
                    else
                    {
                        foreach (var data in ListadoDetalle)
                        {
                            string idProducto = data.IdProducto.ToString();
                            int    cantidad   = Convert.ToInt32(data.Cantidad.ToString());

                            if (objProductoNeg.ReduceInventario(int.Parse(data.IdProducto), cantidad))
                            {
                                double       descuento       = Convert.ToDouble(data.Descuento.ToString());
                                double       subtotal        = Convert.ToDouble(data.SubTotal.ToString());
                                DetalleVenta objDetalleVenta = new DetalleVenta(Convert.ToInt64(codigoFactura), Convert.ToInt64(codigoVenta), idProducto, subtotal, descuento, cantidad);
                                objDetalleVentaNeg.create(objDetalleVenta);
                            }
                            else
                            {
                                mensaje = "ERROR AL REGISTRAR LA FACTURA | REBAJAR PRODUCTO";
                                return(Json(mensaje));
                            }
                        }
                        mensaje = "VENTA GUARDADA CON EXITO...";
                    }
                }
            }

            return(Json(mensaje));
        }