diff --git a/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs b/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs index f846559..4deb6ae 100644 --- a/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs +++ b/BBWYB.Server.Business/Purchaser/PurchaserBusiness.cs @@ -148,16 +148,21 @@ namespace BBWYB.Server.Business #endregion #region 查询SPU采购数/SKU采购数 - var purchasedList = fsql.Select() - .InnerJoin((spr, ps) => spr.SkuId == ps.Id) - .WhereIf(request.ShopId != null && request.ShopId > 0, (spr, ps) => spr.ShopId == request.ShopId) - .Where((spr, ps) => purchaserIdList.Contains(spr.PurchaserId)) - .GroupBy((spr, ps) => new { spr.PurchaserId, spr.SkuId, ps.ProductId }) + var purchasedList = fsql.Select() + .InnerJoin((ps, ori, opi, o) => ps.Id == ori.BelongSkuId) + .InnerJoin((ps, ori, opi, o) => ori.PurchaseOrderId == opi.PurchaseOrderId && + ori.OrderId == opi.OrderId) + .InnerJoin((ps, ori, opi, o) => opi.OrderId == o.Id) + .WhereIf(request.ShopId != null && request.ShopId > 0, (ps, ori, opi, o) => o.ShopId == request.ShopId) + .Where((ps, ori, opi, o) => o.OrderState != Enums.OrderState.已取消 && + opi.IsEnabled == true && + purchaserIdList.Contains(opi.PurchaserId)) + .GroupBy((ps, ori, opi, o) => new { opi.PurchaserId, ps.Id, ps.ProductId }) .ToList(g => new { g.Key.PurchaserId, g.Key.ProductId, - g.Key.SkuId + SkuId = g.Key.Id }); #endregion