Beispiel #1
0
        /// <summary>
        /// 获取评价
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public JsonResult <Result <dynamic> > GetComments([FromUri] ProductCommentQuery query)
        {
            if (query.PageNo == 0)
            {
                query.PageNo = 1;
            }
            if (query.PageSize == 0)
            {
                query.PageSize = 5;
            }
            var data = CommentApplication.GetProductComments(query);

            AutoMapper.Mapper.CreateMap <ProductComment, HomeGetCommentListModel>();
            var datalist = Mapper.Map <List <ProductComment>, List <HomeGetCommentListModel> >(data.Models);
            var users    = MemberApplication.GetMembers(datalist.Select(d => d.UserId).ToList());
            var products = ProductManagerApplication.GetAllProductByIds(datalist.Select(d => d.ProductId).ToList());

            //补充数据信息
            foreach (var item in datalist)
            {
                var u       = users.FirstOrDefault(d => d.Id == item.UserId);
                var product = products.FirstOrDefault(d => d.Id == item.ProductId);
                if (u != null)
                {
                    item.UserPhoto = Himall.Core.HimallIO.GetRomoteImagePath(u.Photo);
                }
                if (product != null)
                {
                    item.ProductName = product.ProductName;
                }
                //规格
                var sku = ProductManagerApplication.GetSKU(item.SkuId);
                if (sku != null)
                {
                    List <string> skucs = new List <string>();
                    if (!string.IsNullOrWhiteSpace(sku.Color))
                    {
                        skucs.Add(sku.Color);
                    }
                    if (!string.IsNullOrWhiteSpace(sku.Size))
                    {
                        skucs.Add(sku.Size);
                    }
                    if (!string.IsNullOrWhiteSpace(sku.Version))
                    {
                        skucs.Add(sku.Version);
                    }
                    item.SKU = string.Join("+", skucs);
                }
                foreach (var pitem in item.Images)
                {
                    pitem.CommentImage = HimallIO.GetRomoteImagePath(pitem.CommentImage);
                }
            }
            return(JsonResult <dynamic>(new { total = data.Total, rows = datalist }));
        }