public static string ImprimirInventarioActualSucursalProducto(string pTemplate, string pFechaInicial, string pFechaFinal, int pIdSucursal, int pIdProducto, int pTipoImpresion)
    {
        CConexion  ConexionBaseDatos = new CConexion();
        string     respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();
        JObject    oRespuesta        = new JObject();
        JObject    oPermisos         = new JObject();
        CUtilerias Util = new CUtilerias();

        int    idUsuario;
        int    idSucursal;
        int    idEmpresa;
        int    idProducto;
        string logoEmpresa;

        CUsuario Usuario = new CUsuario();

        Usuario.LlenaObjeto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), ConexionBaseDatos);

        CSucursal Sucursal = new CSucursal();

        Sucursal.LlenaObjeto(Usuario.IdSucursalActual, ConexionBaseDatos);

        CEmpresa Empresa = new CEmpresa();

        Empresa.LlenaObjeto(Sucursal.IdEmpresa, ConexionBaseDatos);

        CProducto Producto = new CProducto();

        Producto.LlenaObjeto(pIdProducto, ConexionBaseDatos);

        idUsuario   = Usuario.IdUsuario;
        idSucursal  = Sucursal.IdSucursal;
        idProducto  = Producto.IdProducto;
        idEmpresa   = Empresa.IdEmpresa;
        logoEmpresa = Empresa.Logo;

        Dictionary <string, object> Parametros = new Dictionary <string, object>();

        Parametros.Add("ImpresionDocumento", pTemplate);

        CImpresionDocumento ImpresionDocumento = new CImpresionDocumento();

        ImpresionDocumento.LlenaObjetoFiltros(Parametros, ConexionBaseDatos);

        Dictionary <string, object> ParametrosTempl = new Dictionary <string, object>();

        //ParametrosTempl.Add("IdEmpresa", idEmpresa);
        ParametrosTempl.Add("Baja", 0);
        ParametrosTempl.Add("IdImpresionDocumento", ImpresionDocumento.IdImpresionDocumento);

        CImpresionTemplate ImpresionTemplate = new CImpresionTemplate();

        ImpresionTemplate.LlenaObjetoFiltros(ParametrosTempl, ConexionBaseDatos);

        JObject datos = CReportesKeep.obtenerDatosImpresionInventarioActualSucursalProducto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), pFechaInicial, pFechaFinal, pIdSucursal, pIdProducto);

        string rutaPDF      = HttpContext.Current.Server.MapPath("~/Archivos/Impresiones/") + "InventarioActualSucursalProducto_" + DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + ".pdf";
        string rutaTemplate = HttpContext.Current.Server.MapPath("~/Archivos/TemplatesImpresion/" + ImpresionTemplate.RutaTemplate);
        string rutaCSS      = HttpContext.Current.Server.MapPath("~/Archivos/TemplatesImpresion/" + ImpresionTemplate.RutaCSS);
        string imagenLogo   = HttpContext.Current.Server.MapPath("~/Archivos/EmpresaLogo/") + logoEmpresa;

        if (!File.Exists(rutaTemplate))
        {
            oRespuesta.Add(new JProperty("Error", 1));
            oRespuesta.Add(new JProperty("Descripcion", "No hay un template válido para esta empresa."));
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(oRespuesta.ToString());
        }

        if (respuesta == "Conexion Establecida")
        {
            try
            {
                JObject Modelo = new JObject();

                Modelo.Add(new JProperty("Archivo", Util.ReportePDFTemplateConceptos(rutaPDF, rutaTemplate, rutaCSS, imagenLogo, ImpresionTemplate.IdImpresionTemplate, datos, ConexionBaseDatos, pTipoImpresion)));
                Modelo.Add(new JProperty("Permisos", oPermisos));
                oRespuesta.Add(new JProperty("Error", 0));
                oRespuesta.Add(new JProperty("Modelo", Modelo));

                HttpContext.Current.Application.Set("PDFDescargar", Path.GetFileName(rutaPDF));
            }
            catch (Exception ex) { }
        }
        else
        {
            oRespuesta.Add(new JProperty("Error", 1));
            oRespuesta.Add(new JProperty("Descripcion", "No hay conexion a Base de Datos"));
        }
        ConexionBaseDatos.CerrarBaseDatosSqlServer();
        return(oRespuesta.ToString());
    }
示例#2
0
    //Constructores

    //Metodos Especiales
    public static JObject ObtenerJsonProducto(JObject pModelo, int pIdProducto, CConexion pConexion)
    {
        CProducto Producto = new CProducto();

        Producto.LlenaObjeto(pIdProducto, pConexion);
        pModelo.Add("IdProducto", Producto.IdProducto);
        pModelo.Add("Producto", Producto.Producto);
        pModelo.Add("Clave", Producto.Clave);
        pModelo.Add("NumeroParte", Producto.NumeroParte);
        pModelo.Add("Modelo", Producto.Modelo);
        pModelo.Add("CodigoBarra", Producto.CodigoBarra);
        pModelo.Add("Descripcion", Producto.Descripcion);
        pModelo.Add("Costo", Producto.Costo);
        pModelo.Add("MargenUtilidad", Producto.MargenUtilidad);
        pModelo.Add("IdTipoIVA", Producto.IdTipoIVA);
        pModelo.Add("Precio", Producto.Precio);
        pModelo.Add("ValorMedida", Producto.ValorMedida);
        pModelo.Add("Imagen", Producto.Imagen);
        pModelo.Add("ClaveProdServ", Producto.ClaveProdServ);
        pModelo.Add("CodigoInterno", Producto.ClaveInterna);

        CDivision division = new CDivision();

        division.LlenaObjeto(Producto.IdDivision, pConexion);
        pModelo.Add("IdDivision", division.IdDivision);
        pModelo.Add("Division", division.Division);

        CLinea linea = new CLinea();

        linea.LlenaObjeto(Producto.idLinea, pConexion);
        pModelo.Add("IdLinea", linea.IdLinea);
        pModelo.Add("Linea", linea.Descripcion);

        CEstante estante = new CEstante();

        estante.LlenaObjeto(Producto.idEstante, pConexion);
        pModelo.Add("IdEstante", estante.IdEstante);
        pModelo.Add("Estante", estante.Descripcion);

        CRepisa repisa = new CRepisa();

        repisa.LlenaObjeto(Producto.IdRepisa, pConexion);
        pModelo.Add("IdRepisa", repisa.IdRepisa);
        pModelo.Add("Repisa", repisa.Descripcion);

        if (Producto.IdTipoIVA == 1)
        {
            CUsuario Usuario = new CUsuario();
            Usuario.LlenaObjeto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), pConexion);
            CSucursal Sucursal = new CSucursal();
            Sucursal.LlenaObjeto(Usuario.IdSucursalActual, pConexion);
            pModelo.Add("IVA", Sucursal.IVAActual);
            pModelo.Add("PrecioIVAIncluido", (Convert.ToDecimal(Producto.Precio)) + (((Convert.ToDecimal(Producto.Precio)) * (Convert.ToDecimal(Sucursal.IVAActual))) / 100));
        }
        else
        {
            pModelo.Add("IVA", 0);
            pModelo.Add("PrecioIVAIncluido", Producto.Precio);
        }

        CMarca Marca = new CMarca();

        Marca.LlenaObjeto(Producto.IdMarca, pConexion);
        pModelo.Add("IdMarca", Marca.IdMarca);
        pModelo.Add("Marca", Marca.Marca);

        CGrupo Grupo = new CGrupo();

        Grupo.LlenaObjeto(Producto.IdGrupo, pConexion);
        pModelo.Add("IdGrupo", Grupo.IdGrupo);
        pModelo.Add("Grupo", Grupo.Grupo);

        CCategoria Categoria = new CCategoria();

        Categoria.LlenaObjeto(Producto.IdCategoria, pConexion);
        pModelo.Add("IdCategoria", Categoria.IdCategoria);
        pModelo.Add("Categoria", Categoria.Categoria);

        CSubCategoria SubCategoria = new CSubCategoria();

        SubCategoria.LlenaObjeto(Producto.IdSubCategoria, pConexion);
        pModelo.Add("IdSubCategoria", SubCategoria.IdSubCategoria);
        pModelo.Add("SubCategoria", SubCategoria.SubCategoria);

        CTipoMoneda TipoMoneda = new CTipoMoneda();

        TipoMoneda.LlenaObjeto(Producto.IdTipoMoneda, pConexion);
        pModelo.Add("IdTipoMoneda", TipoMoneda.IdTipoMoneda);
        pModelo.Add("TipoMoneda", TipoMoneda.TipoMoneda);

        CTipoVenta TipoVenta = new CTipoVenta();

        TipoVenta.LlenaObjeto(Producto.IdTipoVenta, pConexion);
        pModelo.Add("IdTipoVenta", TipoVenta.IdTipoVenta);
        pModelo.Add("TipoVenta", TipoVenta.TipoVenta);

        CUnidadCompraVenta UnidadCompraVenta = new CUnidadCompraVenta();

        UnidadCompraVenta.LlenaObjeto(Producto.IdUnidadCompraVenta, pConexion);
        pModelo.Add("IdUnidadCompraVenta", UnidadCompraVenta.IdUnidadCompraVenta);
        pModelo.Add("UnidadCompraVenta", UnidadCompraVenta.UnidadCompraVenta);

        CTipoIVA TipoIVA = new CTipoIVA();

        TipoIVA.LlenaObjeto(Producto.IdTipoIVA, pConexion);
        pModelo.Add("TipoIVA", TipoIVA.TipoIVA);

        return(pModelo);
    }