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()); }
//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); }