Browse Source

bbwy spu查询

qianyi
shanji 3 years ago
parent
commit
9b049e38ed
  1. 19
      BBWY.Server.Business/Statistics/StatisticsBusiness.cs
  2. 3
      BBWY.Server.Model/Dto/Request/Order/XingXiangSearchOrderRequest.cs

19
BBWY.Server.Business/Statistics/StatisticsBusiness.cs

@ -47,12 +47,10 @@ namespace BBWY.Server.Business
IList<XingXinagSearchResponse> list = null;
//查询订单
var select = fsql.Select<Order>().Where(o => o.ShopId == xingXiangSearchOrderRequest.ShopId)
.Where(o => o.StartTime >= beginTime && o.StartTime <= endTime);
var childSelect = fsql.Select<OrderSku>().As("osku")
.Where(osku => xingXiangSearchOrderRequest.SpuList.Contains(osku.ProductId));
select = select.Where(o => childSelect.Where(osku => osku.OrderId == o.Id).Any());
var orderList = select.ToList();
var orderList = fsql.Select<Order>().Where(o => o.ShopId == xingXiangSearchOrderRequest.ShopId)
.Where(o => o.StartTime >= beginTime && o.StartTime <= endTime)
.Where(o => !invalidOrderStateList.Contains(o.OrderState.Value))
.ToList();
if (orderList.Count() == 0)
return null;
@ -68,8 +66,10 @@ namespace BBWY.Server.Business
foreach (var order in orderList)
{
var skuCount = orderSkuList.Count(osku => osku.OrderId == order.Id);
var currentOrderSkuGroups = orderSkuList.Where(osku => osku.OrderId == order.Id &&
xingXiangSearchOrderRequest.SpuList.Contains(osku.ProductId)).GroupBy(osku => osku.ProductId);
var currentOrderSkuGroupsSelect = orderSkuList.Where(osku => osku.OrderId == order.Id);
if (xingXiangSearchOrderRequest.SpuList != null && xingXiangSearchOrderRequest.SpuList.Count() > 0)
currentOrderSkuGroupsSelect = orderSkuList.Where(osku => xingXiangSearchOrderRequest.SpuList.Contains(osku.ProductId));
var currentOrderSkuGroups = currentOrderSkuGroupsSelect.GroupBy(osku => osku.ProductId);
foreach (var group in currentOrderSkuGroups)
{
var spuId = group.Key;
@ -84,7 +84,10 @@ namespace BBWY.Server.Business
var profit = procutAmount + freightPriceByUser - purchaseAmount - deliveryFreight - commissionAmount;
var xxRespose = list.FirstOrDefault(xx => xx.Spu == spuId);
if (xxRespose == null)
{
xxRespose = new XingXinagSearchResponse() { Spu = spuId, Profit = 0M };
list.Add(xxRespose);
}
xxRespose.Profit += profit;
}
}

3
BBWY.Server.Model/Dto/Request/Order/XingXiangSearchOrderRequest.cs

@ -6,6 +6,9 @@ namespace BBWY.Server.Model.Dto
{
public class XingXiangSearchOrderRequest
{
/// <summary>
/// 不传默认全店查询
/// </summary>
public IList<string> SpuList { get; set; }
public DateTime SearchDate { get; set; }

Loading…
Cancel
Save