|
|
@ -115,18 +115,45 @@ namespace SiNan.Business |
|
|
|
var startDate_aggregationDate = aggregationDate; |
|
|
|
var endDate_aggregationDate = aggregationDate.AddDays(1).AddSeconds(-1); |
|
|
|
var IsAggregationDateEqualsYesterDay = (DateTime.Now.Date - aggregationDate).TotalDays == 1; |
|
|
|
var spuIdList = fsql.Select<Product>().Where(p => p.ShopId == shopId && p.State == 8) |
|
|
|
.WhereIf(!string.IsNullOrEmpty(querySpu), p => p.Id == querySpu) |
|
|
|
.OrderBy(p => p.CreateTime) |
|
|
|
.ToList(p => p.Id); |
|
|
|
var skuList = fsql.Select<ProductSku>().Where(ps => ps.ShopId == shopId && ps.State == 1 && ps.Price > 0) |
|
|
|
.WhereIf(!string.IsNullOrEmpty(querySpu), ps => ps.ProductId == querySpu) |
|
|
|
.OrderBy(ps => ps.CreateTime) |
|
|
|
.ToList(ps => new |
|
|
|
{ |
|
|
|
ps.ProductId, |
|
|
|
ps.Id |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
var spuQueryStartTime = DateTime.Now.Date.AddDays(-30); |
|
|
|
|
|
|
|
//查询最近30天有销量的spu
|
|
|
|
var saleSpuList = fsql.Select<OrderSku>().Where(osku => osku.ShopId == shopId && !string.IsNullOrEmpty(osku.ProductId)) |
|
|
|
.WhereIf(!string.IsNullOrEmpty(querySpu), osku => osku.ProductId == querySpu) |
|
|
|
.WhereIf(string.IsNullOrEmpty(querySpu), osku => osku.CreateTime >= spuQueryStartTime) |
|
|
|
.OrderByDescending(osku => osku.CreateTime) |
|
|
|
.Distinct() |
|
|
|
.ToList(osku => osku.ProductId); |
|
|
|
//查询最近30天有推广的spu
|
|
|
|
var popularizeSpuList = fsql.Select<JDPopularizeAdSku, ProductSku>() |
|
|
|
.InnerJoin((jas, ps) => jas.Sku == ps.Id) |
|
|
|
.Where((jas, ps) => jas.ShopId == shopId && jas.Date >= spuQueryStartTime) |
|
|
|
.WhereIf(!string.IsNullOrEmpty(querySpu), (jas, ps) => ps.ProductId == querySpu) |
|
|
|
.OrderByDescending((jas, ps) => jas.Date) |
|
|
|
.Distinct() |
|
|
|
.ToList((jas, ps) => ps.ProductId); |
|
|
|
|
|
|
|
var spuIdList = saleSpuList.Union(popularizeSpuList).Distinct().ToList(); |
|
|
|
var skuList = fsql.Select<ProductSku>() |
|
|
|
.Where(ps => spuIdList.Contains(ps.ProductId) && ps.Price > 0 && ps.State == 1) |
|
|
|
.ToList(ps => new { ps.ProductId, ps.Id }); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//var spuIdList = fsql.Select<Product>().Where(p => p.ShopId == shopId && p.State == 8)
|
|
|
|
// .WhereIf(!string.IsNullOrEmpty(querySpu), p => p.Id == querySpu)
|
|
|
|
// .OrderBy(p => p.CreateTime)
|
|
|
|
// .ToList(p => p.Id);
|
|
|
|
//var skuList = fsql.Select<ProductSku>().Where(ps => ps.ShopId == shopId && ps.State == 1 && ps.Price > 0)
|
|
|
|
// .WhereIf(!string.IsNullOrEmpty(querySpu), ps => ps.ProductId == querySpu)
|
|
|
|
// .OrderBy(ps => ps.CreateTime)
|
|
|
|
// .ToList(ps => new
|
|
|
|
// {
|
|
|
|
// ps.ProductId,
|
|
|
|
// ps.Id
|
|
|
|
// });
|
|
|
|
|
|
|
|
var dbAggregationJDPopularizeSpuList = fsql.Select<AggregationJDPopularizeSpu, Product>() |
|
|
|
.InnerJoin((aspu, p) => aspu.Id == p.Id) |
|
|
|