|
|
@ -91,6 +91,14 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Profit = g.Sum(g.Value.Item2.Profit) |
|
|
|
}); |
|
|
|
|
|
|
|
var totalCampaginCosts = fsql.Select<JDPopularizeCampaign>().Where(x => gOIRequest.LevelIdList.Contains(x.CampaignId.Value)) |
|
|
|
.GroupBy(x => x.CampaignId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
CampaignId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDMultiLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -107,6 +115,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = customDaysCampaignCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = customDaysCampaignProfits.FirstOrDefault(x => x.CampaignId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = totalCampaginCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -187,6 +197,14 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Profit = g.Sum(g.Value.Item2.Profit) |
|
|
|
}); |
|
|
|
|
|
|
|
var totalAdGroupCosts = fsql.Select<JDPopularizeAdGroup>().Where(x => gOIRequest.LevelIdList.Contains(x.AdGroupId.Value)) |
|
|
|
.GroupBy(x => x.AdGroupId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDMultiLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -203,6 +221,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = customDaysAdGroupCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = customDaysAdGroupProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = totalAdGroupCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -283,6 +303,14 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Profit = g.Sum(g.Value.Item2.Profit) |
|
|
|
}); |
|
|
|
|
|
|
|
var totalAdCosts = fsql.Select<JDPopularizeAdSku>().Where(x => gOIRequest.LevelIdList.Contains(x.AdId.Value)) |
|
|
|
.GroupBy(x => x.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDMultiLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -299,6 +327,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = customDaysAdCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = customDaysAdProfits.FirstOrDefault(x => x.AdId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = totalAdCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -385,6 +415,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Profit = g.Sum(g.Value.Item2.Profit) |
|
|
|
}); |
|
|
|
|
|
|
|
var skuTotalCosts = fsql.Select<JDPopularizeAdSku>().Where(x => gOIRequest.LevelIdList.Contains(x.Sku) && |
|
|
|
x.BusinessType == 134217728) |
|
|
|
.GroupBy(x => x.Sku) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
Sku = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
var list = new List<JDSkuLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -401,6 +441,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = customDaysSkuCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = customDaysSkuProfits.FirstOrDefault(x => x.Sku == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = skuTotalCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -491,6 +533,17 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
CampaignId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalCampaignCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.CampaignId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.CampaignId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
CampaignId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -506,6 +559,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCampaignCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customCampaignProfits.FirstOrDefault(x => x.CampaignId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _totalCampaignCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -596,6 +651,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
AdGroupId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalAdGroupCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdGroupId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdGroupId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -611,6 +676,7 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
goiResponse.TotalCost = _totalAdGroupCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -701,6 +767,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var totalAdCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -716,6 +792,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.AdId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = totalAdCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -803,6 +881,15 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Sku = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalSkuCosts = fsql.Select<JDPopularizeAdSku>() |
|
|
|
.Where(jas => gOIRequest.LevelIdList.Contains(jas.Sku)) |
|
|
|
.GroupBy(jas => jas.Sku) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
Sku = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDSkuLevelProductAndPopularizeGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -818,6 +905,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.Sku == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _totalSkuCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -909,6 +998,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
CampaignId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalCampaignCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.CampaignId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.CampaignId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
CampaignId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -924,6 +1023,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.CampaignId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _totalCampaignCosts.FirstOrDefault(x => x.CampaignId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -1014,6 +1115,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
AdGroupId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _taotalAdGroupCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdGroupId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdGroupId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -1029,6 +1140,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _taotalAdGroupCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -1054,7 +1167,7 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _7dProfits = fsql.Select<JDPopularizeAdSku, JDOrderPopularizeRelation, OrderCostDetail>() |
|
|
@ -1063,61 +1176,71 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
.Where((jad, jr, ocd) => gOIRequest.LevelIdList.Contains(jad.AdId.Value) && |
|
|
|
jr.CookieTime >= _7dStartDate && jr.CookieTime <= _7dEndDate && |
|
|
|
ocd.IsEnabled == true) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdGroupId) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Profit = g.Sum(g.Value.Item3.SkuGrossProfit), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _30dCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdGroupId.Value) && |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdId.Value) && |
|
|
|
jas2.Date >= _30dStartDate && jas2.Date <= _30dEndDate) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdGroupId) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _30dProfits = fsql.Select<JDPopularizeAdSku, JDOrderPopularizeRelation, OrderCostDetail>() |
|
|
|
.InnerJoin((jad, jr, ocd) => jad.Sku == jr.PopularizeSku) |
|
|
|
.InnerJoin((jad, jr, ocd) => jr.OrderId == ocd.OrderId) |
|
|
|
.Where((jad, jr, ocd) => gOIRequest.LevelIdList.Contains(jad.AdGroupId.Value) && |
|
|
|
.Where((jad, jr, ocd) => gOIRequest.LevelIdList.Contains(jad.AdId.Value) && |
|
|
|
jr.CookieTime >= _30dStartDate && jr.CookieTime <= _30dEndDate && |
|
|
|
ocd.IsEnabled == true) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdGroupId) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Profit = g.Sum(g.Value.Item3.SkuGrossProfit), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _customCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdGroupId.Value) && |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdId.Value) && |
|
|
|
jas2.Date >= gOIRequest.StartDate && jas2.Date <= gOIRequest.EndDate) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdGroupId) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _customProfits = fsql.Select<JDPopularizeAdSku, JDOrderPopularizeRelation, OrderCostDetail>() |
|
|
|
.InnerJoin((jad, jr, ocd) => jad.Sku == jr.PopularizeSku) |
|
|
|
.InnerJoin((jad, jr, ocd) => jr.OrderId == ocd.OrderId) |
|
|
|
.Where((jad, jr, ocd) => gOIRequest.LevelIdList.Contains(jad.AdGroupId.Value) && |
|
|
|
.Where((jad, jr, ocd) => gOIRequest.LevelIdList.Contains(jad.AdId.Value) && |
|
|
|
jr.CookieTime >= gOIRequest.StartDate && jr.CookieTime <= customEndTime && |
|
|
|
ocd.IsEnabled == true) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdGroupId) |
|
|
|
.GroupBy((jad, jr, ocd) => jad.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Profit = g.Sum(g.Value.Item3.SkuGrossProfit), |
|
|
|
AdGroupId = g.Key |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalAdCosts = fsql.Select<JDPopularizeAdSku, JDPopularizeAdSku>() |
|
|
|
.InnerJoin((jas1, jas2) => jas1.Sku == jas2.Sku) |
|
|
|
.Where((jas1, jas2) => gOIRequest.LevelIdList.Contains(jas1.AdId.Value)) |
|
|
|
.GroupBy((jas1, jas2) => jas1.AdId) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Item2.Cost), |
|
|
|
AdId = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDProductAndPopularizeLevelGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -1125,14 +1248,16 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
{ |
|
|
|
LevelId = levelId |
|
|
|
}; |
|
|
|
goiResponse._7GOI.Cost = _7dCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse._7GOI.Profit = _7dProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
goiResponse._7GOI.Cost = _7dCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse._7GOI.Profit = _7dProfits.FirstOrDefault(x => x.AdId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse._30GOI.Cost = _30dCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse._30GOI.Profit = _30dProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
goiResponse._30GOI.Cost = _30dCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse._30GOI.Profit = _30dProfits.FirstOrDefault(x => x.AdId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.AdGroupId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.AdGroupId == levelId)?.Profit ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.AdId == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _totalAdCosts.FirstOrDefault(x => x.AdId == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
@ -1220,6 +1345,15 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
Sku = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var _totalSkuCosts = fsql.Select<JDPopularizeAdSku>() |
|
|
|
.Where(jas => gOIRequest.LevelIdList.Contains(jas.Sku)) |
|
|
|
.GroupBy(jas => jas.Sku) |
|
|
|
.ToList(g => new |
|
|
|
{ |
|
|
|
Cost = g.Sum(g.Value.Cost), |
|
|
|
Sku = g.Key |
|
|
|
}); |
|
|
|
|
|
|
|
var list = new List<JDSkuLevelProductAndPopularizeGOIResponse>(); |
|
|
|
foreach (var levelId in gOIRequest.LevelIdList) |
|
|
|
{ |
|
|
@ -1235,6 +1369,8 @@ namespace BBWY.Server.Business.Statistics |
|
|
|
|
|
|
|
goiResponse.CustomDaysGOI.Cost = _customCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
goiResponse.CustomDaysGOI.Profit = _customProfits.FirstOrDefault(x => x.Sku == levelId)?.Profit ?? 0M; |
|
|
|
|
|
|
|
goiResponse.TotalCost = _totalSkuCosts.FirstOrDefault(x => x.Sku == levelId)?.Cost ?? 0M; |
|
|
|
list.Add(goiResponse); |
|
|
|
} |
|
|
|
return list; |
|
|
|