From 8be89b5c60331836865afe8ed3133d9a8635b42b Mon Sep 17 00:00:00 2001
From: shanj <18996038927@163.com>
Date: Fri, 27 Oct 2023 09:25:03 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E5=93=81360=E6=8E=A8=E5=B9=BF?=
=?UTF-8?q?=E5=88=86=E6=9E=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
SiNan.API/Controllers/GOIController.cs | 13 ++++-
SiNan.Business/GOIBusiness.cs | 31 ++++++++++-
.../Product360PopularizeAnalysisRequest.cs | 2 +
...uct360PopularizeAnalysisAdGroupResponse.cs | 49 +++++++++++++++++
...ct360PopularizeAnalysisCampaginRepsonse.cs | 54 ++++++++++++++++++-
5 files changed, 145 insertions(+), 4 deletions(-)
diff --git a/SiNan.API/Controllers/GOIController.cs b/SiNan.API/Controllers/GOIController.cs
index 81726dd..84ef0c8 100644
--- a/SiNan.API/Controllers/GOIController.cs
+++ b/SiNan.API/Controllers/GOIController.cs
@@ -19,9 +19,20 @@ namespace SiNan.API.Controllers
///
///
[HttpPost]
- public ListResponse QueryProductGOI([FromBody]QueryProductGOIRequest request)
+ public ListResponse QueryProductGOI([FromBody] QueryProductGOIRequest request)
{
return goiBusiness.QueryProductGOI(request);
}
+
+ ///
+ /// 产品360推广分析
+ ///
+ ///
+ ///
+ [HttpPost]
+ public ListResponse QueryProduct360PopularizeGOI(Product360PopularizeAnalysisRequest request)
+ {
+ return goiBusiness.QueryProduct360PopularizeGOI(request);
+ }
}
}
diff --git a/SiNan.Business/GOIBusiness.cs b/SiNan.Business/GOIBusiness.cs
index 8502d23..85d3213 100644
--- a/SiNan.Business/GOIBusiness.cs
+++ b/SiNan.Business/GOIBusiness.cs
@@ -244,6 +244,35 @@ namespace SiNan.Business
};
}
-
+ public ListResponse QueryProduct360PopularizeGOI(Product360PopularizeAnalysisRequest request)
+ {
+ if (request.SkuIdList == null || request.SkuIdList.Count() == 0)
+ throw new BusinessException("缺少sku");
+ List list = new List();
+
+ var sourcePopularizeAdSkuList = fsql.Select()
+ .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()
+ {
+ ItemList = list,
+ Count = list.Count
+ };
+ }
}
}
diff --git a/SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs b/SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs
index 6b58c3f..526938a 100644
--- a/SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs
+++ b/SiNan.Model/Dto/Request/GOI/Product360PopularizeAnalysisRequest.cs
@@ -2,6 +2,8 @@
{
public class Product360PopularizeAnalysisRequest
{
+ public long ShopId { get; set; }
+
public IList SkuIdList { get; set; }
public DateTime StartDate { get; set; }
diff --git a/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs b/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs
index 3c388ef..0f708e5 100644
--- a/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs
+++ b/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisAdGroupResponse.cs
@@ -2,5 +2,54 @@
{
public class Product360PopularizeAnalysisAdGroupResponse
{
+ ///
+ /// 业务渠道 快车=2 智能推广= 134217728
+ ///
+ public int BusinessType { get; set; }
+
+ ///
+ /// 计划Id
+ ///
+ public long CampaignId { get; set; }
+
+ ///
+ /// 单元Id
+ ///
+ public long AdGroupId { get; set; }
+
+ ///
+ /// 单元名称
+ ///
+ public string AdGroupName { get; set; }
+
+ ///
+ /// 最近7天的计划GOI
+ ///
+ public GOIResponse AdGroupGOI_Recent7Day { get; set; }
+
+ ///
+ /// 最近30天的计划GOI
+ ///
+ public GOIResponse AdGroupGOI_Recent30Day { get; set; }
+
+ ///
+ /// 花费
+ ///
+ public decimal Cost { get; set; }
+
+ ///
+ /// 订单行
+ ///
+ public int OrderCnt { get; set; }
+
+ ///
+ /// 展现次数
+ ///
+ public int Impressions { get; set; }
+
+ ///
+ /// 点击次数
+ ///
+ public int Clicks { get; set; }
}
}
diff --git a/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs b/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs
index 4f5aae4..771785b 100644
--- a/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs
+++ b/SiNan.Model/Dto/Response/GOI/Product360PopularizeAnalysisCampaginRepsonse.cs
@@ -3,8 +3,58 @@
public class Product360PopularizeAnalysisCampaginRepsonse
{
///
- /// 业务渠道 快车=2 智能推广=134217728
+ /// 业务渠道 快车=2 智能推广= 134217728
///
- public int BusinessType { get; set; }
+ public int BusinessType { get; set; }
+
+ ///
+ /// 计划Id
+ ///
+ public long CampaignId { get; set; }
+
+ ///
+ /// 计划名称
+ ///
+ public string CampaignName { get; set; }
+
+ ///
+ /// 计划场景
+ ///
+ public string CampaginScenarios { get; set; }
+
+ ///
+ /// 最近7天的计划GOI
+ ///
+ public GOIResponse CampaignGOI_Recent7Day { get; set; }
+
+ ///
+ /// 最近30天的计划GOI
+ ///
+ public GOIResponse CampaignGOI_Recent30Day { get; set; }
+
+ ///
+ /// 花费
+ ///
+ public decimal Cost { get; set; }
+
+ ///
+ /// 订单行
+ ///
+ public int OrderCnt { get; set; }
+
+ ///
+ /// 展现次数
+ ///
+ public int Impressions { get; set; }
+
+ ///
+ /// 点击次数
+ ///
+ public int Clicks { get; set; }
+
+ ///
+ /// 单元列表 (仅BusinessType=2时具备该列表)
+ ///
+ public List AdGroupList { get; set; }
}
}