6 changed files with 139 additions and 2 deletions
@ -0,0 +1,87 @@ |
|||
using BBWY.Common.Http; |
|||
using BBWY.Common.Models; |
|||
using BBWY.Server.Model; |
|||
using BBWY.Server.Model.Dto; |
|||
using Microsoft.Extensions.Options; |
|||
using Newtonsoft.Json; |
|||
using Newtonsoft.Json.Linq; |
|||
using NLog; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Net.Http; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Yitter.IdGenerator; |
|||
|
|||
namespace BBWY.Server.Business.Sync |
|||
{ |
|||
public class JDPopularizeSyncBusiness : BaseSyncBusiness, IDenpendency |
|||
{ |
|||
public JDPopularizeSyncBusiness(RestApiService restApiService, |
|||
IOptions<GlobalConfig> options, |
|||
ILogger logger, |
|||
IFreeSql fsql, |
|||
IIdGenerator idGenerator, |
|||
TaskSchedulerManager taskSchedulerManager, |
|||
VenderBusiness venderBusiness) : base(restApiService, |
|||
options, |
|||
logger, |
|||
fsql, |
|||
idGenerator, |
|||
taskSchedulerManager, |
|||
venderBusiness) |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void SyncShopPopularizeRecord(long shopId, JArray jArray) |
|||
{ |
|||
|
|||
} |
|||
|
|||
private void SyncShopPopularizeRecord(ShopResponse shop, DateTime startDate, DateTime endDate) |
|||
{ |
|||
try |
|||
{ |
|||
var relayAPIHost = GetPlatformRelayAPIHost(shop.PlatformId); |
|||
var httpResult = restApiService.SendRequest(relayAPIHost, "Api/PlatformSDK/GetJDShopSopularizeRecordList", new SyncShopPopularizeRequest() |
|||
{ |
|||
AppKey = shop.AppKey, |
|||
AppSecret = shop.AppSecret, |
|||
AppToken = shop.AppToken, |
|||
EndDate = endDate, |
|||
StartDate = startDate, |
|||
Platform = shop.PlatformId, |
|||
}, null, HttpMethod.Post); |
|||
if (httpResult.StatusCode != System.Net.HttpStatusCode.OK) |
|||
throw new Exception($"获取JD推广费用失败 {httpResult.Content}"); |
|||
|
|||
var presponse = JsonConvert.DeserializeObject<ApiResponse<JArray>>(httpResult.Content); |
|||
if (!presponse.Success) |
|||
throw new Exception($"获取JD推广费用失败 {presponse.Msg}"); |
|||
|
|||
SyncShopPopularizeRecord(long.Parse(shop.ShopId), presponse.Data); |
|||
} |
|||
catch (Exception ex) |
|||
{ |
|||
var shopData = JsonConvert.SerializeObject(shop); |
|||
logger.Error(ex, $"SyncOrder ShopData:{shopData}"); |
|||
} |
|||
} |
|||
|
|||
|
|||
public void SyncAllShopPopularizeRecord() |
|||
{ |
|||
var shopList = venderBusiness.GetShopList(); |
|||
foreach (var shop in shopList) |
|||
{ |
|||
Task.Factory.StartNew(() => SyncShopPopularizeRecord(shop, |
|||
DateTime.Now.Date.AddDays(-1), |
|||
DateTime.Now.Date.AddDays(-1)), |
|||
System.Threading.CancellationToken.None, |
|||
TaskCreationOptions.LongRunning, |
|||
taskSchedulerManager.JDPopularizeTaskScheduler); |
|||
} |
|||
} |
|||
} |
|||
} |
@ -0,0 +1,13 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace BBWY.Server.Model.Dto |
|||
{ |
|||
public class SyncShopPopularizeRequest:PlatformRequest |
|||
{ |
|||
public DateTime StartDate { get; set; } |
|||
|
|||
public DateTime EndDate { get; set; } |
|||
} |
|||
} |
Loading…
Reference in new issue