diff --git a/BBWY.Server.Business/Statistics/JDReportFormStatisticsBusiness.cs b/BBWY.Server.Business/Statistics/JDReportFormStatisticsBusiness.cs index 4a241666..2da20eab 100644 --- a/BBWY.Server.Business/Statistics/JDReportFormStatisticsBusiness.cs +++ b/BBWY.Server.Business/Statistics/JDReportFormStatisticsBusiness.cs @@ -40,8 +40,8 @@ namespace BBWY.Server.Business.Statistics var _7dCampaignProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.CampaignId.Value) && - jr.OrderTime >= _7dStartDate && - jr.OrderTime <= _7dEndTime) + jr.CookieTime >= _7dStartDate && + jr.CookieTime <= _7dEndTime) .GroupBy((jr, oc) => jr.CampaignId) .ToList(g => new { @@ -61,8 +61,8 @@ namespace BBWY.Server.Business.Statistics var _30dCampaignProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.CampaignId.Value) && - jr.OrderTime >= _30dStartDate && - jr.OrderTime <= _30dEndTime) + jr.CookieTime >= _30dStartDate && + jr.CookieTime <= _30dEndTime) .GroupBy((jr, oc) => jr.CampaignId) .ToList(g => new { @@ -82,8 +82,8 @@ namespace BBWY.Server.Business.Statistics var customDaysCampaignProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.CampaignId.Value) && - jr.OrderTime >= gOIRequest.StartDate && - jr.OrderTime <= customEndTime) + jr.CookieTime >= gOIRequest.StartDate && + jr.CookieTime <= customEndTime) .GroupBy((jr, oc) => jr.CampaignId) .ToList(g => new { @@ -136,8 +136,8 @@ namespace BBWY.Server.Business.Statistics var _7dAdGroupProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdGroupId.Value) && - jr.OrderTime >= _7dStartDate && - jr.OrderTime <= _7dEndTime) + jr.CookieTime >= _7dStartDate && + jr.CookieTime <= _7dEndTime) .GroupBy((jr, oc) => jr.AdGroupId) .ToList(g => new { @@ -157,8 +157,8 @@ namespace BBWY.Server.Business.Statistics var _30dAdGroupProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdGroupId.Value) && - jr.OrderTime >= _30dStartDate && - jr.OrderTime <= _30dEndTime) + jr.CookieTime >= _30dStartDate && + jr.CookieTime <= _30dEndTime) .GroupBy((jr, oc) => jr.AdGroupId) .ToList(g => new { @@ -178,8 +178,8 @@ namespace BBWY.Server.Business.Statistics var customDaysAdGroupProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdGroupId.Value) && - jr.OrderTime >= gOIRequest.StartDate && - jr.OrderTime <= customEndTime) + jr.CookieTime >= gOIRequest.StartDate && + jr.CookieTime <= customEndTime) .GroupBy((jr, oc) => jr.AdGroupId) .ToList(g => new { @@ -232,8 +232,8 @@ namespace BBWY.Server.Business.Statistics var _7dAdProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdId.Value) && - jr.OrderTime >= _7dStartDate && - jr.OrderTime <= _7dEndTime) + jr.CookieTime >= _7dStartDate && + jr.CookieTime <= _7dEndTime) .GroupBy((jr, oc) => jr.AdId) .ToList(g => new { @@ -253,8 +253,8 @@ namespace BBWY.Server.Business.Statistics var _30dAdProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdId.Value) && - jr.OrderTime >= _30dStartDate && - jr.OrderTime <= _30dEndTime) + jr.CookieTime >= _30dStartDate && + jr.CookieTime <= _30dEndTime) .GroupBy((jr, oc) => jr.AdId) .ToList(g => new { @@ -274,8 +274,8 @@ namespace BBWY.Server.Business.Statistics var customDaysAdProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.AdId.Value) && - jr.OrderTime >= gOIRequest.StartDate && - jr.OrderTime <= customEndTime) + jr.CookieTime >= gOIRequest.StartDate && + jr.CookieTime <= customEndTime) .GroupBy((jr, oc) => jr.AdId) .ToList(g => new { @@ -330,8 +330,8 @@ namespace BBWY.Server.Business.Statistics var _7dSkuProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.PopularizeSku) && jr.BusinessType == 134217728 && - jr.OrderTime >= _7dStartDate && - jr.OrderTime <= _7dEndTime) + jr.CookieTime >= _7dStartDate && + jr.CookieTime <= _7dEndTime) .GroupBy((jr, oc) => jr.PopularizeSku) .ToList(g => new { @@ -353,8 +353,8 @@ namespace BBWY.Server.Business.Statistics var _30dSkuProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.PopularizeSku) && jr.BusinessType == 134217728 && - jr.OrderTime >= _30dStartDate && - jr.OrderTime <= _30dEndTime) + jr.CookieTime >= _30dStartDate && + jr.CookieTime <= _30dEndTime) .GroupBy((jr, oc) => jr.PopularizeSku) .ToList(g => new { @@ -376,8 +376,8 @@ namespace BBWY.Server.Business.Statistics var customDaysSkuProfits = fsql.Select().InnerJoin((jr, oc) => jr.OrderId == oc.OrderId) .Where((jr, oc) => gOIRequest.LevelIdList.Contains(jr.PopularizeSku) && jr.BusinessType == 134217728 && - jr.OrderTime >= gOIRequest.StartDate && - jr.OrderTime <= customEndTime) + jr.CookieTime >= gOIRequest.StartDate && + jr.CookieTime <= customEndTime) .GroupBy((jr, oc) => jr.PopularizeSku) .ToList(g => new { diff --git a/BBWY.Server.Business/Sync/JD/JDPopularizeReportFormOrderLevelSyncBusiness.cs b/BBWY.Server.Business/Sync/JD/JDPopularizeReportFormOrderLevelSyncBusiness.cs index b8a830da..d78ac40c 100644 --- a/BBWY.Server.Business/Sync/JD/JDPopularizeReportFormOrderLevelSyncBusiness.cs +++ b/BBWY.Server.Business/Sync/JD/JDPopularizeReportFormOrderLevelSyncBusiness.cs @@ -43,22 +43,23 @@ namespace BBWY.Server.Business.Sync { var shopIds = shops.Select(s => Convert.ToInt64(s.ShopId)).ToList(); fsql.Delete().Where(s => shopIds.Contains(s.ShopId.Value) && - s.OrderTime >= startDate && s.OrderTime <= endDate).ExecuteAffrows(); + s.CookieTime >= startDate && s.CookieTime <= endDate).ExecuteAffrows(); } public void SyncAllShopPopularizeReportFormOrderLevel() { var shopList = venderBusiness.GetShopList(shopId: null, Enums.Platform.京东); - var date = DateTime.Now.Date.AddDays(-1); - DeleteOldData(shopList, date, date); + var startDate = DateTime.Now.Date.AddDays(-15); + var endDate = DateTime.Now; + DeleteOldData(shopList, startDate, endDate); foreach (var shop in shopList) { - Task.Factory.StartNew(() => SyncShopPopularizeReportFormOrderLevelByDate(shop, date, date, 2), + Task.Factory.StartNew(() => SyncShopPopularizeReportFormOrderLevelByDate(shop, startDate, endDate, 2), System.Threading.CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.JDPopularizeTaskScheduler); - Task.Factory.StartNew(() => SyncShopPopularizeReportFormOrderLevelByDate(shop, date, date, 134217728), + Task.Factory.StartNew(() => SyncShopPopularizeReportFormOrderLevelByDate(shop, startDate, endDate, 134217728), System.Threading.CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.JDPopularizeTaskScheduler); @@ -157,15 +158,15 @@ namespace BBWY.Server.Business.Sync var ads = fsql.Select() .Where(c => c.ShopId == shopId && adNames.Contains(c.AdName)) - .GroupBy(c => new { c.AdId, c.AdName, c.AdGroupId }) - .ToList(g => new { g.Key.AdId, g.Key.AdName, g.Key.AdGroupId }); + .GroupBy(c => new { c.AdId, c.AdName }) + .ToList(g => new { g.Key.AdId, g.Key.AdName }); var insertList = new List(); foreach (var j in jArray) { var campaign = campaigns.FirstOrDefault(c => c.CampaignName == j.Value("campaignName")); var adGroup = adGroups.FirstOrDefault(g => g.AdGroupName == j.Value("adGroupName")); - var ad = ads.FirstOrDefault(a => a.AdName == j.Value("adName") && adGroup != null && adGroup.AdGroupId == a.AdGroupId); + var ad = ads.FirstOrDefault(a => a.AdName == j.Value("adName")); var popularizeSku = string.Empty; if (ad != null) @@ -188,6 +189,7 @@ namespace BBWY.Server.Business.Sync AdId = ad?.AdId, OrderId = j.Value("orderId"), OrderTime = DateTime.ParseExact(j.Value("orderTime"), "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture), + CookieTime = DateTime.ParseExact(j.Value("cookieTime"), "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture), PlaceOrderSku = j.Value("skuId"), PopularizeSku = popularizeSku }); @@ -218,6 +220,7 @@ namespace BBWY.Server.Business.Sync CreateTime = DateTime.Now, CampaignId = campaigns.FirstOrDefault(c => c.CampaignName == j.Value("campaignName"))?.CampaignId, OrderTime = DateTime.ParseExact(j.Value("orderTime"), "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture), + CookieTime = DateTime.ParseExact(j.Value("cookieTime"), "yyyyMMddHHmmss", System.Globalization.CultureInfo.CurrentCulture), OrderId = j.Value("orderId"), PlaceOrderSku = j.Value("skuId"), PopularizeSku = j.Value("clickSkuId") diff --git a/BBWY.Server.Model/Db/JD/JDOrderPopularizeRelation.cs b/BBWY.Server.Model/Db/JD/JDOrderPopularizeRelation.cs index ede7019f..de6778d7 100644 --- a/BBWY.Server.Model/Db/JD/JDOrderPopularizeRelation.cs +++ b/BBWY.Server.Model/Db/JD/JDOrderPopularizeRelation.cs @@ -43,6 +43,12 @@ namespace BBWY.Server.Model.Db [Column(DbType = "datetime")] public DateTime? OrderTime { get; set; } + /// + /// 点击时间 + /// + [Column(DbType = "datetime")] + public DateTime? CookieTime { get; set; } + /// /// 订单Id /// diff --git a/BBWY.Test/JDBaoBiaoAPITest.cs b/BBWY.Test/JDBaoBiaoAPITest.cs index 34b3f458..40876c4e 100644 --- a/BBWY.Test/JDBaoBiaoAPITest.cs +++ b/BBWY.Test/JDBaoBiaoAPITest.cs @@ -566,27 +566,7 @@ namespace BBWY.Test Console.WriteLine(JsonConvert.SerializeObject(res)); } - public void Test_订单维度_快车(IJdClient client, string token) - { - - var req = new AdsIbgUniversalJosServiceOrderQueryRequest(); - req.businessType = "2"; - req.clickOrOrderDay = "0"; - req.pageSize = "100"; - req.clickOrOrderCaliber = "1"; - req.orderStartDay = "2022-10-01"; - req.orderEndDay = "2022-10-29"; - req.clickStartDay = "2022-10-01"; - req.clickEndDay = "2022-10-29"; - req.giftFlag = "0"; - //req.orderStatus = "2,4"; - req.page = "1"; - req.myself = "1,3"; - var res = client.Execute(req, token, DateTime.Now.ToLocalTime()); - Console.WriteLine(JsonConvert.SerializeObject(res)); - - Console.WriteLine(); - } + public void Test_创意维度_ShopId_11611866(IJdClient client, string token) @@ -605,5 +585,47 @@ namespace BBWY.Test var res = client.Execute(req, token, DateTime.Now.ToLocalTime()); Console.WriteLine(JsonConvert.SerializeObject(res)); } + + public void Test_订单维度_快车(IJdClient client, string token) + { + var req13 = new AdsIbgUniversalJosServiceOrderQueryRequest(); + req13.businessType = "2"; + //req13.isDaily = "true"; + req13.clickOrOrderDay = "0"; + req13.pageSize = "100"; + req13.clickOrOrderCaliber = "1"; + req13.orderStartDay = "2022-10-01"; + req13.orderEndDay = "2022-10-30"; + req13.clickStartDay = "2022-10-01"; + req13.clickEndDay = "2022-10-30"; + req13.giftFlag = "0"; + req13.orderStatus = "4"; + req13.myself = "1,3"; //直接订单 + var res13 = client.Execute(req13, token, DateTime.Now.ToLocalTime()); + Console.WriteLine(JsonConvert.SerializeObject(res13)); + Console.WriteLine(); + Console.WriteLine(); + } + + public void Test_订单维度_京速推(IJdClient client, string token) + { + var req13 = new AdsIbgUniversalJosServiceOrderQueryRequest(); + req13.businessType = "134217728"; + //req13.isDaily = "true"; + req13.clickOrOrderDay = "0"; + req13.pageSize = "100"; + req13.clickOrOrderCaliber = "1"; + req13.orderStartDay = "2022-10-01"; + req13.orderEndDay = "2022-10-30"; + req13.clickStartDay = "2022-10-01"; + req13.clickEndDay = "2022-10-30"; + req13.giftFlag = "0"; + req13.orderStatus = "4"; + req13.myself = "1,3"; //直接订单 + var res4 = client.Execute(req13, token, DateTime.Now.ToLocalTime()); + Console.WriteLine(JsonConvert.SerializeObject(res4)); + Console.WriteLine(); + Console.WriteLine(); + } } } diff --git a/BBWY.Test/Program.cs b/BBWY.Test/Program.cs index 68d4a0ee..dd22b616 100644 --- a/BBWY.Test/Program.cs +++ b/BBWY.Test/Program.cs @@ -26,12 +26,12 @@ namespace BBWY.Test { var appkey = "120EA9EC65AB017567D78CC1139EEEA5"; var appSecret = "8a42bc2301e8439b896e99f5475e0a9b"; - var token = "e3bb89d1dcf6461fae2f197dfc5d6d68niyj"; //"b46065ef5b894f2297686e28d39cb37a2mdy";//"2ace3023200c4ea9aa682bbf8bffee18jztm"; + var token = "b46065ef5b894f2297686e28d39cb37a2mdy"; //"b46065ef5b894f2297686e28d39cb37a2mdy";//"2ace3023200c4ea9aa682bbf8bffee18jztm"; IJdClient client = GetJdClient(appkey, appSecret); var test1 = new JDBaoBiaoAPITest(); - test1.Test_创意维度_ShopId_11611866(client, token); - + test1.Test_订单维度_快车(client, token); + test1.Test_订单维度_京速推(client, token); Console.WriteLine(); Console.WriteLine();