示例#1
0
 /// <summary>
 /// Obtener color a partir del id del producto y su talla
 /// </summary>
 /// <param name="_datos">Objeto con datos de conexión y parámetros (Id y talla del producto)</param>
 /// <returns></returns>
 public List <CH_Color> ObtenerColoresXIDProductoIDTalla(CH_Producto _datos)
 {
     try
     {
         List <CH_Color> dataResult = new List <CH_Color>();
         object[]        parametros = { _datos.IdProducto, _datos.Talla.IdTalla };
         SqlDataReader   dr         = SqlHelper.ExecuteReader(_datos.Conexion, "CH_spCSLDB_get_ColorProductoXIDTalla", parametros);
         CH_Color        itemColor;
         while (dr.Read())
         {
             itemColor             = new CH_Color();
             itemColor.IdColor     = dr.GetInt32(dr.GetOrdinal("IDColor"));
             itemColor.Descripcion = dr.GetString(dr.GetOrdinal("Descripcion"));
             dataResult.Add(itemColor);
         }
         return(dataResult);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#2
0
        /// <summary>
        /// Obtener datos para mostrar en la página productos
        /// </summary>
        /// <param name="_datos">Objeto con datos de conexión y parámetros</param>
        /// <returns></returns>
        public CH_Busqueda ObtenerDatosProductos(CH_Busqueda _datos)
        {
            try
            {
                CH_Busqueda dataResult = new CH_Busqueda {
                    TipoOrden   = _datos.TipoOrden, IdTipoBusqueda = _datos.IdTipoBusqueda, NumPagina = _datos.NumPagina, MaxRows = _datos.MaxRows,
                    BandFamilia = _datos.BandFamilia, Familia = new CH_Familia {
                        IdFamilia = _datos.Familia.IdFamilia
                    }, Hombre = _datos.Hombre,
                    Mujer = _datos.Mujer, Accesorio = _datos.Accesorio, BandTalla = _datos.BandTalla, Talla = new CH_Talla {
                        IdTalla = _datos.Talla.IdTalla
                    },
                    BandColor = _datos.BandColor, Color = new CH_Color {
                        IdColor = _datos.Color.IdColor
                    }, BandRangoPrecios = _datos.BandRangoPrecios,
                    PrecioFinal = _datos.PrecioFinal, PrecioInicial = _datos.PrecioInicial
                };
                object[] parametros = { _datos.TipoOrden,        _datos.IdTipoBusqueda,    _datos.NumPagina,     _datos.MaxRows,
                                        _datos.BandFamilia,      _datos.Familia.IdFamilia, _datos.Hombre,
                                        _datos.Mujer,            _datos.Accesorio,         _datos.BandTalla,
                                        _datos.Talla.IdTalla,    _datos.BandColor,         _datos.Color.IdColor,
                                        _datos.BandRangoPrecios, _datos.PrecioFinal,       _datos.PrecioInicial };
                DataSet  ds = SqlHelper.ExecuteDataset(_datos.Conexion, "CH_spCSLDB_get_DatosProductos", parametros);
                if (ds.Tables.Count == 8)
                {
                    //Textos
                    DataTableReader  dr          = ds.Tables[0].CreateDataReader();
                    List <CH_Textos> listaTextos = new List <CH_Textos>();
                    CH_Textos        itemTexto;
                    while (dr.Read())
                    {
                        itemTexto             = new CH_Textos();
                        itemTexto.Texto       = dr.GetString(dr.GetOrdinal("Texto"));
                        itemTexto.NumPosition = dr.GetInt32(dr.GetOrdinal("NumPosition"));
                        listaTextos.Add(itemTexto);
                    }
                    dataResult.ListaTextos = listaTextos;
                    //Imagenes
                    DataTableReader  drImg         = ds.Tables[1].CreateDataReader();
                    List <CH_Imagen> listaImagenes = new List <CH_Imagen>();
                    CH_Imagen        itemImagen;
                    while (drImg.Read())
                    {
                        itemImagen             = new CH_Imagen();
                        itemImagen.Alt         = drImg.GetString(drImg.GetOrdinal("TextoAlternativo"));
                        itemImagen.Title       = drImg.GetString(drImg.GetOrdinal("TituloImagen"));
                        itemImagen.UrlImagen   = drImg.GetString(drImg.GetOrdinal("UrlImagen"));
                        itemImagen.NumPosition = drImg.GetInt32(drImg.GetOrdinal("NumPosition"));
                        listaImagenes.Add(itemImagen);
                    }
                    dataResult.ListaImagenes = listaImagenes;

                    //Familias de producto
                    DataTableReader   drFamilia     = ds.Tables[2].CreateDataReader();
                    List <CH_Familia> listaFamilias = new List <CH_Familia>();
                    CH_Familia        itemFamilia;
                    while (drFamilia.Read())
                    {
                        itemFamilia                   = new CH_Familia();
                        itemFamilia.IdFamilia         = drFamilia.GetInt32(drFamilia.GetOrdinal("IDFamilia"));
                        itemFamilia.Descripcion       = drFamilia.GetString(drFamilia.GetOrdinal("Descripcion"));
                        itemFamilia.CantidadProductos = drFamilia.GetInt32(drFamilia.GetOrdinal("Total"));
                        listaFamilias.Add(itemFamilia);
                    }
                    dataResult.ListaFamilias = listaFamilias;

                    //Colores
                    DataTableReader drColor      = ds.Tables[3].CreateDataReader();
                    List <CH_Color> listaColores = new List <CH_Color>();
                    CH_Color        itemColor;
                    while (drColor.Read())
                    {
                        itemColor             = new CH_Color();
                        itemColor.IdColor     = drColor.GetInt32(drColor.GetOrdinal("id_colorRopa"));
                        itemColor.Descripcion = drColor.GetString(drColor.GetOrdinal("descripcion"));
                        listaColores.Add(itemColor);
                    }
                    dataResult.ListaColor = listaColores;

                    //Tallas
                    DataTableReader drTallas    = ds.Tables[4].CreateDataReader();
                    List <CH_Talla> listaTallas = new List <CH_Talla>();
                    CH_Talla        itemTalla;
                    while (drTallas.Read())
                    {
                        itemTalla             = new CH_Talla();
                        itemTalla.IdTalla     = drTallas.GetInt32(drTallas.GetOrdinal("id_tallaRopa"));
                        itemTalla.Descripcion = drTallas.GetString(drTallas.GetOrdinal("descripcion"));
                        itemTalla.Descripcion = itemTalla.Descripcion.ToUpper().Replace("TALLA", "").Trim();
                        listaTallas.Add(itemTalla);
                    }
                    dataResult.ListaTallas = listaTallas;

                    // Cantidad total de registros del resultado de búsqueda
                    DataTableReader drDesc = ds.Tables[5].CreateDataReader();
                    while (drDesc.Read())
                    {
                        dataResult.Talla.Descripcion   = drDesc.GetString(drDesc.GetOrdinal("Talla"));
                        dataResult.Color.Descripcion   = drDesc.GetString(drDesc.GetOrdinal("Color"));
                        dataResult.Familia.Descripcion = drDesc.GetString(drDesc.GetOrdinal("Familia"));
                        dataResult.Completado          = true;
                        break;
                    }

                    // Cantidad total de registros del resultado de búsqueda
                    DataTableReader drTP = ds.Tables[6].CreateDataReader();
                    while (drTP.Read())
                    {
                        dataResult.TotalRegistros = drTP.GetInt32(drTP.GetOrdinal("Registros"));
                        dataResult.MinPrice       = drTP.GetDecimal(drTP.GetOrdinal("PrecioMinimo"));
                        dataResult.MaxPrice       = drTP.GetDecimal(drTP.GetOrdinal("PrecioMaximo"));
                        dataResult.Completado     = true;
                        break;
                    }
                    // Resultado de la búsqueda
                    DataTableReader    drProductos    = ds.Tables[7].CreateDataReader();
                    List <CH_Producto> listaProductos = new List <CH_Producto>();
                    CH_Producto        itemProducto;
                    while (drProductos.Read())
                    {
                        CH_Imagen imgProducto = new CH_Imagen();
                        itemProducto                 = new CH_Producto();
                        itemProducto.IdProducto      = drProductos.GetString(drProductos.GetOrdinal("IDProducto"));
                        imgProducto.UrlImagen        = drProductos.GetString(drProductos.GetOrdinal("UrlImagen"));
                        itemProducto.ImagenPrincipal = imgProducto;
                        itemProducto.NombreProducto  = drProductos.GetString(drProductos.GetOrdinal("Producto"));
                        itemProducto.MinPrecio       = drProductos.GetDecimal(drProductos.GetOrdinal("MinPrecio"));
                        //itemProducto.MinPrecioMayoreo = drProductos.GetDecimal(drProductos.GetOrdinal("Descripcion"));
                        listaProductos.Add(itemProducto);
                    }
                    dataResult.ListaProductosResultado = listaProductos;
                    dataResult.TotalPaginas            = (dataResult.TotalRegistros / _datos.MaxRows) + (dataResult.TotalRegistros % _datos.MaxRows > 0 ? 1 : 0);
                    dataResult.RegistroInicial         = dataResult.TotalRegistros > 0 ? ((dataResult.NumPagina - 1) * dataResult.MaxRows) + 1 : 0;
                    dataResult.RegistroFinal           = (dataResult.NumPagina * dataResult.MaxRows) > dataResult.TotalRegistros ? dataResult.TotalRegistros : (dataResult.NumPagina * dataResult.MaxRows);
                }
                return(dataResult);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#3
0
        /// <summary>
        /// Obtener detalle de un producto para mostrar en página Producto.aspx
        /// </summary>
        /// <param name="_datos">Objeto con datos de conexión y parámetros (Id del producto)</param>
        /// <returns></returns>
        public CH_PaginaProducto ObtenerDetalleProductoXID(CH_Producto _datos)
        {
            try
            {
                CH_PaginaProducto dataPageResult = new CH_PaginaProducto();

                CH_Producto dataResult = new CH_Producto();
                object[]    parametros = { _datos.IdProducto };
                DataSet     ds         = SqlHelper.ExecuteDataset(_datos.Conexion, "CH_spCSLDB_get_DetalleProductoXID", parametros);
                if (ds != null)
                {
                    if (ds.Tables.Count == 6)
                    {
                        //Textos
                        DataTableReader  dr          = ds.Tables[0].CreateDataReader();
                        List <CH_Textos> listaTextos = new List <CH_Textos>();
                        CH_Textos        itemTexto;
                        while (dr.Read())
                        {
                            itemTexto             = new CH_Textos();
                            itemTexto.Texto       = dr.GetString(dr.GetOrdinal("Texto"));
                            itemTexto.NumPosition = dr.GetInt32(dr.GetOrdinal("NumPosition"));
                            listaTextos.Add(itemTexto);
                        }
                        dataPageResult.ListaTextos = listaTextos;
                        //Imagenes
                        DataTableReader  drImg         = ds.Tables[1].CreateDataReader();
                        List <CH_Imagen> listaImagenes = new List <CH_Imagen>();
                        CH_Imagen        itemImagen;
                        while (drImg.Read())
                        {
                            itemImagen             = new CH_Imagen();
                            itemImagen.Alt         = drImg.GetString(drImg.GetOrdinal("TextoAlternativo"));
                            itemImagen.Title       = drImg.GetString(drImg.GetOrdinal("TituloImagen"));
                            itemImagen.UrlImagen   = drImg.GetString(drImg.GetOrdinal("UrlImagen"));
                            itemImagen.NumPosition = drImg.GetInt32(drImg.GetOrdinal("NumPosition"));
                            listaImagenes.Add(itemImagen);
                        }
                        dataPageResult.ListaImagenes = listaImagenes;

                        DataTableReader drDetalle = ds.Tables[2].CreateDataReader();
                        while (drDetalle.Read())
                        {
                            dataResult.IdProducto     = drDetalle.GetString(drDetalle.GetOrdinal("IDProducto"));
                            dataResult.NombreProducto = drDetalle.GetString(drDetalle.GetOrdinal("NombreProducto"));
                            dataResult.Observaciones  = drDetalle.GetString(drDetalle.GetOrdinal("Observaciones"));
                            dataResult.Valoracion     = drDetalle.GetInt32(drDetalle.GetOrdinal("Valoracion"));
                            dataResult.MinPrecio      = drDetalle.GetDecimal(drDetalle.GetOrdinal("PrecioMenor"));
                            dataResult.EsRopa         = drDetalle.GetBoolean(drDetalle.GetOrdinal("EsRopa"));
                            dataResult.Completado     = true;
                            break;
                        }

                        DataTableReader drColor      = ds.Tables[3].CreateDataReader();
                        List <CH_Color> listaColores = new List <CH_Color>();
                        CH_Color        itemColor;
                        while (drColor.Read())
                        {
                            itemColor             = new CH_Color();
                            itemColor.IdColor     = drColor.GetInt32(drColor.GetOrdinal("IDColor"));
                            itemColor.Descripcion = drColor.GetString(drColor.GetOrdinal("Descripcion"));
                            listaColores.Add(itemColor);
                        }
                        dataResult.ListaColores = listaColores;

                        DataTableReader  drImagenes             = ds.Tables[4].CreateDataReader();
                        List <CH_Imagen> listaImagenesProd      = new List <CH_Imagen>();
                        List <CH_Imagen> listaImagenesProdThumb = new List <CH_Imagen>();
                        CH_Imagen        itemImagenProd;
                        CH_Imagen        itemImagenProdThumb;
                        while (drImagenes.Read())
                        {
                            itemImagenProd           = new CH_Imagen();
                            itemImagenProd.UrlImagen = drImagenes.GetString(drImagenes.GetOrdinal("UrlImagen"));
                            itemImagenProd.Title     = drImagenes.GetString(drImagenes.GetOrdinal("Title"));
                            itemImagenProd.Alt       = drImagenes.GetString(drImagenes.GetOrdinal("Alt"));
                            itemImagenProdThumb      = new CH_Imagen {
                                Title = itemImagenProd.Title, Alt = itemImagenProd.Alt
                            };
                            itemImagenProdThumb.UrlImagen = drImagenes.GetString(drImagenes.GetOrdinal("UrlImagenThumb"));
                            listaImagenesProd.Add(itemImagenProd);
                            listaImagenesProdThumb.Add(itemImagenProdThumb);
                        }
                        dataResult.ListaImagenes      = listaImagenesProd;
                        dataResult.ListaImagenesThumb = listaImagenesProdThumb;

                        DataTableReader    drProductos    = ds.Tables[5].CreateDataReader();
                        List <CH_Producto> listaProductos = new List <CH_Producto>();
                        CH_Producto        itemProducto;
                        while (drProductos.Read())
                        {
                            CH_Imagen imgProducto = new CH_Imagen();
                            itemProducto                  = new CH_Producto();
                            itemProducto.IdProducto       = drProductos.GetString(drProductos.GetOrdinal("IDProducto"));
                            imgProducto.UrlImagen         = drProductos.GetString(drProductos.GetOrdinal("UrlImagen"));
                            imgProducto.Alt               = drProductos.GetString(drProductos.GetOrdinal("Alt"));
                            imgProducto.Title             = drProductos.GetString(drProductos.GetOrdinal("Title"));
                            itemProducto.ImagenPrincipal  = imgProducto;
                            itemProducto.NombreProducto   = drProductos.GetString(drProductos.GetOrdinal("Producto"));
                            itemProducto.MinPrecio        = drProductos.GetDecimal(drProductos.GetOrdinal("MinPrecio"));
                            itemProducto.MinPrecioMayoreo = drProductos.GetDecimal(drProductos.GetOrdinal("MinPrecioMayoreo"));
                            listaProductos.Add(itemProducto);
                        }
                        dataResult.ListaProductosRelacionados = listaProductos;

                        dataPageResult.Producto   = dataResult;
                        dataPageResult.Completado = true;
                        //dataPageResult.Producto.ListaImagenes.Add(new CH_Imagen { UrlImagen = "../assets/images/product/01.jpg", Alt = "Img01" });
                        //dataPageResult.Producto.ListaImagenes.Add(new CH_Imagen { UrlImagen = "../assets/images/product/02.jpg", Alt = "Img02" });
                        //dataPageResult.Producto.ListaImagenes.Add(new CH_Imagen { UrlImagen = "../assets/images/product/03.jpg", Alt = "Img03" });
                        //dataPageResult.Producto.ListaImagenes.Add(new CH_Imagen { UrlImagen = "../assets/images/product/04.jpg", Alt = "Img04" });

                        //dataPageResult.Producto.ListaImagenesThumb.Add(new CH_Imagen { UrlImagen = "../assets/images/product/01.jpg", Alt = "Img01" });
                        //dataPageResult.Producto.ListaImagenesThumb.Add(new CH_Imagen { UrlImagen = "../assets/images/product/02.jpg", Alt = "Img02" });
                        //dataPageResult.Producto.ListaImagenesThumb.Add(new CH_Imagen { UrlImagen = "../assets/images/product/03.jpg", Alt = "Img03" });
                        //dataPageResult.Producto.ListaImagenesThumb.Add(new CH_Imagen { UrlImagen = "../assets/images/product/04.jpg", Alt = "Img04" });
                        //dataPageResult.Producto.Valoracion = 4;
                        //dataPageResult.Producto.NombreProducto = "Pantalón Niño Preescolar";
                        //dataPageResult.Producto.MinPrecio = 280;
                        //dataPageResult.Producto.Observaciones = "Uniforme UPGCH para niños de preescolar.";
                    }
                }
                return(dataPageResult);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }