|
@ -39,7 +39,7 @@ namespace BBWYB.Server.Business |
|
|
request.ShopId = null; |
|
|
request.ShopId = null; |
|
|
|
|
|
|
|
|
#region 数据验证
|
|
|
#region 数据验证
|
|
|
if (request.RecentDayCondition != null && request.RecentDayCondition.RecentDay > 0) |
|
|
if (request.RecentDayCondition != null) // && request.RecentDayCondition.RecentDay > 0
|
|
|
{ |
|
|
{ |
|
|
if (request.RecentDayCondition.PurchasedCountComparisonOperator != null) |
|
|
if (request.RecentDayCondition.PurchasedCountComparisonOperator != null) |
|
|
{ |
|
|
{ |
|
@ -78,44 +78,42 @@ namespace BBWYB.Server.Business |
|
|
.WhereIf(request.LocationList != null && request.LocationList.Count() > 0, p => request.LocationList.Contains(p.Location)) |
|
|
.WhereIf(request.LocationList != null && request.LocationList.Count() > 0, p => request.LocationList.Contains(p.Location)) |
|
|
.WhereIf(request.ManagmentMode != null, p => p.ManagmentMode == request.ManagmentMode); |
|
|
.WhereIf(request.ManagmentMode != null, p => p.ManagmentMode == request.ManagmentMode); |
|
|
|
|
|
|
|
|
if (request.RecentDayCondition != null && request.RecentDayCondition.RecentDay > 0) |
|
|
if (request.RecentDayCondition != null) // && request.RecentDayCondition.RecentDay > 0
|
|
|
{ |
|
|
{ |
|
|
var recentStartDay = DateTime.Now.Date.AddDays(request.RecentDayCondition.RecentDay.Value * -1); |
|
|
//var recentStartDay = DateTime.Now.Date.AddDays(request.RecentDayCondition.RecentDay.Value * -1);
|
|
|
if (request.RecentDayCondition.PurchasedCountComparisonOperator != null && |
|
|
if (request.RecentDayCondition.PurchasedCountComparisonOperator != null && |
|
|
request.RecentDayCondition.PurchasedCountComparisonOperator != 0 && |
|
|
|
|
|
request.RecentDayCondition.PurchasedCount != null && |
|
|
request.RecentDayCondition.PurchasedCount != null && |
|
|
request.RecentDayCondition.PurchasedCount != 0) |
|
|
request.RecentDayCondition.PurchasedCount != 0) |
|
|
{ |
|
|
{ |
|
|
select = select.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.等于, |
|
|
select = select.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.等于, |
|
|
p => p.Recent90dPurchasedCount == request.RecentDayCondition.PurchasedCount) |
|
|
p => p.Recent90dPurchasedCount != null && p.Recent90dPurchasedCount == request.RecentDayCondition.PurchasedCount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.小于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.小于, |
|
|
p => p.Recent90dPurchasedCount <= request.RecentDayCondition.PurchasedCount) |
|
|
p => p.Recent90dPurchasedCount != null && p.Recent90dPurchasedCount <= request.RecentDayCondition.PurchasedCount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.大于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.大于, |
|
|
p => p.Recent90dPurchasedCount >= request.RecentDayCondition.PurchasedCount) |
|
|
p => p.Recent90dPurchasedCount != null && p.Recent90dPurchasedCount >= request.RecentDayCondition.PurchasedCount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.介于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.介于, |
|
|
p => p.Recent90dPurchasedCount >= request.RecentDayCondition.PurchasedCount && |
|
|
p => p.Recent90dPurchasedCount != null && p.Recent90dPurchasedCount >= request.RecentDayCondition.PurchasedCount && |
|
|
p.Recent90dPurchasedCount <= request.RecentDayCondition.PurchasedCount2); |
|
|
p.Recent90dPurchasedCount <= request.RecentDayCondition.PurchasedCount2); |
|
|
} |
|
|
} |
|
|
if (request.RecentDayCondition.PurchasedAmountComparisonOperator != null && |
|
|
if (request.RecentDayCondition.PurchasedAmountComparisonOperator != null && |
|
|
request.RecentDayCondition.PurchasedAmountComparisonOperator != 0 && |
|
|
|
|
|
request.RecentDayCondition.PurchasedAmount != null && |
|
|
request.RecentDayCondition.PurchasedAmount != null && |
|
|
request.RecentDayCondition.PurchasedAmount != 0) |
|
|
request.RecentDayCondition.PurchasedAmount != 0) |
|
|
{ |
|
|
{ |
|
|
select = select.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.等于, |
|
|
select = select.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.等于, |
|
|
p => p.Recent90dPurchasedAmount == request.RecentDayCondition.PurchasedAmount) |
|
|
p => p.Recent90dPurchasedAmount != null && p.Recent90dPurchasedAmount == request.RecentDayCondition.PurchasedAmount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.小于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.小于, |
|
|
p => p.Recent90dPurchasedAmount <= request.RecentDayCondition.PurchasedAmount) |
|
|
p => p.Recent90dPurchasedAmount != null && p.Recent90dPurchasedAmount <= request.RecentDayCondition.PurchasedAmount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.大于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.大于, |
|
|
p => p.Recent90dPurchasedAmount >= request.RecentDayCondition.PurchasedAmount) |
|
|
p => p.Recent90dPurchasedAmount != null && p.Recent90dPurchasedAmount >= request.RecentDayCondition.PurchasedAmount) |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.介于, |
|
|
.WhereIf(request.RecentDayCondition.PurchasedCountComparisonOperator == Enums.ComparisonOperator.介于, |
|
|
p => p.Recent90dPurchasedAmount >= request.RecentDayCondition.PurchasedAmount && |
|
|
p => p.Recent90dPurchasedAmount != null && p.Recent90dPurchasedAmount >= request.RecentDayCondition.PurchasedAmount && |
|
|
p.Recent90dPurchasedAmount <= request.RecentDayCondition.PurchasedAmount2); |
|
|
p.Recent90dPurchasedAmount <= request.RecentDayCondition.PurchasedAmount2); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
select = select.Page(request.PageIndex, request.PageSize) |
|
|
select = select.Page(request.PageIndex, request.PageSize) |
|
|
.OrderByPropertyNameIf(!string.IsNullOrEmpty(request.SortColumn), request.SortColumn, request.SortType == 0); |
|
|
.OrderByPropertyNameIf(!string.IsNullOrEmpty(request.SortColumn), request.SortColumn, request.SortType == 0); |
|
|
//var sql = pageSelect.ToSql();
|
|
|
var sql = select.ToSql(); |
|
|
var purchaserList = select.Count(out var count).ToList<PurchaserResponse>(); |
|
|
var purchaserList = select.Count(out var count).ToList<PurchaserResponse>(); |
|
|
if (purchaserList.Count() > 0) |
|
|
if (purchaserList.Count() > 0) |
|
|
{ |
|
|
{ |
|
@ -160,7 +158,8 @@ namespace BBWYB.Server.Business |
|
|
g.Key.PurchaserId, |
|
|
g.Key.PurchaserId, |
|
|
g.Key.Logo, |
|
|
g.Key.Logo, |
|
|
g.Key.SkuName, |
|
|
g.Key.SkuName, |
|
|
g.Key.SourceSkuId |
|
|
g.Key.SourceSkuId, |
|
|
|
|
|
MaxPurchasedTime = g.Max(g.Value.Item1.CreateTime) |
|
|
}); |
|
|
}); |
|
|
var belongSkuIdList = bePurchasedProductSkuList.Select(x => x.SourceSkuId).Distinct().ToList(); |
|
|
var belongSkuIdList = bePurchasedProductSkuList.Select(x => x.SourceSkuId).Distinct().ToList(); |
|
|
var belongSkuList = _freeSqlMultiDBManager.BBWYCfsql.Select<BBWYB.Server.Model.Db.BBWY.ProductSku>(belongSkuIdList).ToList(ps => new { ps.Id, ps.Logo }); |
|
|
var belongSkuList = _freeSqlMultiDBManager.BBWYCfsql.Select<BBWYB.Server.Model.Db.BBWY.ProductSku>(belongSkuIdList).ToList(ps => new { ps.Id, ps.Logo }); |
|
@ -192,7 +191,10 @@ namespace BBWYB.Server.Business |
|
|
#endregion
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 最近采购店铺商品
|
|
|
#region 最近采购店铺商品
|
|
|
purchaser.Recent30dProductSku = bePurchasedProductSkuList.Where(x => x.PurchaserId == purchaser.Id).Take(10).Select(x => |
|
|
purchaser.Recent30dProductSku = bePurchasedProductSkuList.Where(x => x.PurchaserId == purchaser.Id) |
|
|
|
|
|
.OrderByDescending(x => x.MaxPurchasedTime) |
|
|
|
|
|
.Take(10) |
|
|
|
|
|
.Select(x => |
|
|
{ |
|
|
{ |
|
|
var belongSku = belongSkuList.FirstOrDefault(b => b.Id == x.SourceSkuId); |
|
|
var belongSku = belongSkuList.FirstOrDefault(b => b.Id == x.SourceSkuId); |
|
|
return new RecentPurchasedSkuResponse() |
|
|
return new RecentPurchasedSkuResponse() |
|
@ -200,7 +202,8 @@ namespace BBWYB.Server.Business |
|
|
Id = x.Id, |
|
|
Id = x.Id, |
|
|
Logo = belongSku?.Logo ?? x.Logo, |
|
|
Logo = belongSku?.Logo ?? x.Logo, |
|
|
SkuName = x.SkuName, |
|
|
SkuName = x.SkuName, |
|
|
BelongSku = x.SourceSkuId |
|
|
BelongSku = x.SourceSkuId, |
|
|
|
|
|
MaxPurchasedTime = x.MaxPurchasedTime |
|
|
}; |
|
|
}; |
|
|
}).ToList(); |
|
|
}).ToList(); |
|
|
#endregion
|
|
|
#endregion
|
|
|