/// <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 })); }
/// <summary> /// 加载门店编辑商品列表 /// </summary> /// <param name="ids"></param> /// <param name="shopbranchId"></param> /// <returns></returns> public JsonResult GetProductsByIds(string ids, long shopbranchId) { if (string.IsNullOrWhiteSpace(ids)) { return(Json(new { success = false, msg = "参数传递错误" })); } var pIds = ConvertToIEnumerable(ids); var products = ProductManagerApplication.GetAllProductByIds(pIds); //查询门店SKU库存 var allSKU = ProductManagerApplication.GetSKUByProducts(products.Select(p => p.Id)); List <string> skuids = allSKU.Select(p => p.Id).ToList(); var shopBranchSkus = ShopBranchApplication.GetSkusByIds(shopbranchId, skuids); List <ProductModel> productlist = new List <ProductModel>(); foreach (var item in products) { var skus = ProductManagerApplication.GetSKUs(item.Id); ProductModel product = new ProductModel() { Name = item.ProductName, Id = item.Id, Image = item.GetImage(ImageSize.Size_50), Price = item.MinSalePrice }; List <SKuModel> skulist = new List <SKuModel>(); foreach (var skuInfo in skus) { var shopbranckSku = shopBranchSkus.Where(s => s.SkuId == skuInfo.Id).FirstOrDefault(); var str = string.Empty; if (!string.IsNullOrWhiteSpace(skuInfo.Color)) { str += item.ColorAlias + ":" + skuInfo.Color; } else { str += " " + item.ColorAlias + ";"; } if (!string.IsNullOrWhiteSpace(skuInfo.Size)) { str += " " + item.SizeAlias + ":" + skuInfo.Size; } else { str += " " + item.SizeAlias + ";"; } if (!string.IsNullOrWhiteSpace(skuInfo.Version)) { str += " " + item.VersionAlias + ":" + skuInfo.Version; } else { str += " " + item.VersionAlias + ";"; } var model = new SKuModel() { ProductName = (item.HasSKU ? str.TrimEnd(';') : ""), Sku = item.HasSKU ? (skuInfo.Sku ?? string.Empty) : item.ProductCode, Id = skuInfo.Id, AutoId = shopbranckSku.Id, Stock = shopbranckSku.Stock, MarketPrice = item.MarketPrice, SalePrice = item.HasSKU ? skuInfo.SalePrice : item.MinSalePrice,//有规格则取规格商城价,否则取商品本身商城价 ProductId = item.Id, HasSKU = item.HasSKU ? 1 : 0 }; if (skus.IndexOf(skuInfo) == 0) { model.IsFirst = 1; } skulist.Add(model); } product.Skus = skulist; productlist.Add(product); } return(Json(new { success = true, model = productlist })); }