Exemple #1
0
        /// <summary>
        /// Lấy danh sách thông tin so sánh dưới dạng Tr
        /// </summary>
        /// <param name="ListProduct"></param>
        /// <param name="ListPropertyGroup"></param>
        /// <param name="ListProperty"></param>
        /// <returns></returns>
        private string Data_Compare(List <ModProduct_InfoEntity> ListProduct, List <ModProduct_PropertiesGroupsEntity> ListPropertyGroup, List <ModProduct_PropertiesListEntity> ListProperty, List <ModProduct_Info_DetailsEntity> ListPropertyValue_Product)
        {
            string sData     = string.Empty;
            string sUrl      = string.Empty;
            string sUrlImage = string.Empty;
            string sPrice    = string.Empty;
            string sValue    = string.Empty;

            int iTd_Add  = 0;
            int iColspan = 5;

            #region Tạo hàng tên sản phẩm
            sData = "<tr class='tr-product-compare-title'>";

            // Ô trống
            sData += "<td nowrap='nowrap'>";
            sData += "</td>";

            // Duyệt hiển thị tên sản phẩm
            foreach (var itemProduct in ListProduct)
            {
                // Lấy đường dẫn link
                sUrl = "/" + ViewPage.CurrentLang.Code + "/" + ViewPage.GetURL(itemProduct.MenuID, itemProduct.Code);

                sData += "<td class='td-product-compare-title'>";
                sData += "<img class='td-product-compare-title-image-delete' alt='Xóa sản phẩm khỏi danh sách so sánh' title='Xóa sản phẩm khỏi danh sách so sánh' productid='" + itemProduct.ID + "' onclick='return Product_Compare_Delete_ReloadForm(this);' />";
                sData += "<a href='" + sUrl + "' alt='" + itemProduct.Name + "' title='" + itemProduct.Name + "'>";
                sData += "<span>" + itemProduct.Name + "</span>";
                sData += "</a></td>";
            }

            // Ko đủ 4 sản phẩm
            if (ListProduct.Count < 4)
            {
                iTd_Add = 4 - ListProduct.Count;
                for (int iadd_td = 0; iadd_td < iTd_Add; iadd_td++)
                {
                    sData += "<td class='td-product-compare-title'><span></span></td>";
                }
            }

            sData += "</tr>";
            #endregion

            #region Tạo hàng ảnh sản phẩm
            sData += "<tr class='tr-product-compare-image'>";

            // Ô trống
            sData += "<td nowrap='nowrap' class='key'>";
            sData += "<span>Ảnh sản phẩm:</span></td>";

            // Duyệt hiển thị tên sản phẩm
            foreach (var itemProduct in ListProduct)
            {
                // Lấy đường dẫn link
                sUrl = "/" + ViewPage.CurrentLang.Code + "/" + ViewPage.GetURL(itemProduct.MenuID, itemProduct.Code);

                // Đường dẫn ảnh
                sUrlImage = Utils.GetResizeFile(itemProduct.File, 2, 130, 110);

                sData += "<td class='td-product-compare-image'>";
                sData += "<a href='" + sUrl + "' alt='" + itemProduct.Name + "' title='" + itemProduct.Name + "'>";
                sData += "<img src='" + sUrlImage + "' />";
                sData += "</a></td>";
            }

            // Nếu Ko đủ 4 sản phẩm
            for (int iadd_td = 0; iadd_td < iTd_Add; iadd_td++)
            {
                sData += "<td class='td-product-compare-image'></td>";
            }

            sData += "</tr>";
            #endregion

            #region Tạo hàng giá sản phẩm
            sData += "<tr class='tr-product-compare-price'>";

            // Ô trống
            sData += "<td nowrap='nowrap' class='key'>";
            sData += "<span>Giá:</span></td>";

            // Duyệt hiển thị giá sản phẩm
            foreach (var itemProduct in ListProduct)
            {
                sPrice = string.Empty;

                // Có hiển thị giá hay không
                if (itemProduct.ShowPrice)
                {
                    if (itemProduct.PriceSale > 0 && itemProduct.Price > itemProduct.PriceSale)
                    {
                        sPrice  = "<span class='span-price-new'>" + ConvertTool.ConvertToMoney(itemProduct.PriceSale) + "</span>";
                        sPrice += "&nbsp;(<span class='span-price-old'>" + ConvertTool.ConvertToMoney(itemProduct.Price) + "</span>)";
                    }
                    else
                    {
                        sPrice = "<span class='span-price-new'>" + ConvertTool.ConvertToMoney(itemProduct.Price) + "</span>";
                    }
                }
                // Hiển thị thông tin liên hệ
                else
                {
                    sPrice += "<p class='current_price_notshow'></p>";
                }

                sData += "<td class='td-product-compare-price'>";
                sData += sPrice;
                sData += "</td>";
            }

            // Nếu Ko đủ 4 sản phẩm

            for (int iadd_td = 0; iadd_td < iTd_Add; iadd_td++)
            {
                sData += "<td class='td-product-compare-price'></td>";
            }

            sData += "</tr>";
            #endregion

            #region Tạo các thông tin thuộc tính

            foreach (var itemPropertyGroup in ListPropertyGroup)
            {
                sData += "<tr class='tr-product-compare-group'>";
                sData += "<td colspan='" + iColspan + "'><span>" + itemPropertyGroup.Name + "</span></td></tr>";

                #region Duyệt tiếp các dòng tiếp theo tương ứng với thuộc tính
                var ListProductGroup_Property = ListProperty.Where(o => o.PropertiesGroupsId == itemPropertyGroup.ID).OrderBy(o => o.Order).ToList();
                if (ListProductGroup_Property == null || ListProductGroup_Property.Count <= 0)
                {
                    continue;
                }

                foreach (var itemProperty in ListProductGroup_Property)
                {
                    sData += "<tr class='tr-product-compare-group-property'>";

                    // Tên thuộc tính
                    sData += "<td class='key' nowrap='nowrap'><span>" + itemProperty.Name + "</span></td>";

                    foreach (var itemProduct in ListProduct)
                    {
                        var objProduct_Detail = ListPropertyValue_Product.Where(o => o.ProductInfoId == itemProduct.ID && o.PropertiesListId == itemProperty.ID).FirstOrDefault();
                        if (objProduct_Detail == null)
                        {
                            sValue = string.Empty;
                        }
                        else
                        {
                            sValue = objProduct_Detail.Content;
                        }

                        // Giá trị thuộc tính
                        sData += "<td><span>" + sValue + "</span></td>";
                    }

                    // Xem có đủ số sản phẩm ko (4), Nếu ko đủ, đổ các td trống
                    for (int iadd_td = 0; iadd_td < iTd_Add; iadd_td++)
                    {
                        sData += "<td></td>";
                    }

                    sData += "</tr>";
                }
                #endregion
            }

            //ListPropertyValue_Product
            #endregion

            return(sData);
        }