Browse Source

产品360推广分析

GOIAggregation
shanji 2 years ago
parent
commit
8be89b5c60
  1. 11
      SiNan.API/Controllers/GOIController.cs
  2. 29
      SiNan.Business/GOIBusiness.cs
  3. 2
      SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs
  4. 49
      SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs
  5. 50
      SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs

11
SiNan.API/Controllers/GOIController.cs

@ -23,5 +23,16 @@ namespace SiNan.API.Controllers
{ {
return goiBusiness.QueryProductGOI(request); return goiBusiness.QueryProductGOI(request);
} }
/// <summary>
/// 产品360推广分析
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost]
public ListResponse<Product360PopularizeAnalysisCampaginRepsonse> QueryProduct360PopularizeGOI(Product360PopularizeAnalysisRequest request)
{
return goiBusiness.QueryProduct360PopularizeGOI(request);
}
} }
} }

29
SiNan.Business/GOIBusiness.cs

@ -244,6 +244,35 @@ namespace SiNan.Business
}; };
} }
public ListResponse<Product360PopularizeAnalysisCampaginRepsonse> QueryProduct360PopularizeGOI(Product360PopularizeAnalysisRequest request)
{
if (request.SkuIdList == null || request.SkuIdList.Count() == 0)
throw new BusinessException("缺少sku");
List<Product360PopularizeAnalysisCampaginRepsonse> list = new List<Product360PopularizeAnalysisCampaginRepsonse>();
var sourcePopularizeAdSkuList = fsql.Select<JDPopularizeAdSku>()
.Where(x => x.ShopId == request.ShopId)
.Where(x => x.Date >= request.StartDate && x.Date <= request.EndDate)
.WhereIf(request.SkuIdList.Count() == 1, x => x.Sku == request.SkuIdList[0])
.WhereIf(request.SkuIdList.Count() > 1, x => request.SkuIdList.Contains(x.Sku))
.ToList();
var kuaicheCampaignList = sourcePopularizeAdSkuList.Where(x => x.BusinessType == 2).ToList();
var jstCampaignList = sourcePopularizeAdSkuList.Where(x => x.BusinessType == 134217728).ToList();
#region 处理快车
#endregion
#region 处理京速推
#endregion
return new ListResponse<Product360PopularizeAnalysisCampaginRepsonse>()
{
ItemList = list,
Count = list.Count
};
}
} }
} }

2
SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs

@ -2,6 +2,8 @@
{ {
public class Product360PopularizeAnalysisRequest public class Product360PopularizeAnalysisRequest
{ {
public long ShopId { get; set; }
public IList<string> SkuIdList { get; set; } public IList<string> SkuIdList { get; set; }
public DateTime StartDate { get; set; } public DateTime StartDate { get; set; }

49
SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs

@ -2,5 +2,54 @@
{ {
public class Product360PopularizeAnalysisAdGroupResponse public class Product360PopularizeAnalysisAdGroupResponse
{ {
/// <summary>
/// 业务渠道 快车=2 智能推广= 134217728
/// </summary>
public int BusinessType { get; set; }
/// <summary>
/// 计划Id
/// </summary>
public long CampaignId { get; set; }
/// <summary>
/// 单元Id
/// </summary>
public long AdGroupId { get; set; }
/// <summary>
/// 单元名称
/// </summary>
public string AdGroupName { get; set; }
/// <summary>
/// 最近7天的计划GOI
/// </summary>
public GOIResponse AdGroupGOI_Recent7Day { get; set; }
/// <summary>
/// 最近30天的计划GOI
/// </summary>
public GOIResponse AdGroupGOI_Recent30Day { get; set; }
/// <summary>
/// 花费
/// </summary>
public decimal Cost { get; set; }
/// <summary>
/// 订单行
/// </summary>
public int OrderCnt { get; set; }
/// <summary>
/// 展现次数
/// </summary>
public int Impressions { get; set; }
/// <summary>
/// 点击次数
/// </summary>
public int Clicks { get; set; }
} }
} }

50
SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs

@ -6,5 +6,55 @@
/// 业务渠道 快车=2 智能推广= 134217728 /// 业务渠道 快车=2 智能推广= 134217728
/// </summary> /// </summary>
public int BusinessType { get; set; } public int BusinessType { get; set; }
/// <summary>
/// 计划Id
/// </summary>
public long CampaignId { get; set; }
/// <summary>
/// 计划名称
/// </summary>
public string CampaignName { get; set; }
/// <summary>
/// 计划场景
/// </summary>
public string CampaginScenarios { get; set; }
/// <summary>
/// 最近7天的计划GOI
/// </summary>
public GOIResponse CampaignGOI_Recent7Day { get; set; }
/// <summary>
/// 最近30天的计划GOI
/// </summary>
public GOIResponse CampaignGOI_Recent30Day { get; set; }
/// <summary>
/// 花费
/// </summary>
public decimal Cost { get; set; }
/// <summary>
/// 订单行
/// </summary>
public int OrderCnt { get; set; }
/// <summary>
/// 展现次数
/// </summary>
public int Impressions { get; set; }
/// <summary>
/// 点击次数
/// </summary>
public int Clicks { get; set; }
/// <summary>
/// 单元列表 (仅BusinessType=2时具备该列表)
/// </summary>
public List<Product360PopularizeAnalysisAdGroupResponse> AdGroupList { get; set; }
} }
} }

Loading…
Cancel
Save