shanji 2 years ago
parent
commit
1a16c61e71
  1. 57
      BBWY.Server.Business/PlatformSDK/JDBusiness.cs
  2. 2
      BBWY.Server.Business/PlatformSDK/PDDBusiness.cs
  3. 4
      BBWY.Server.Business/PlatformSDK/PlatformSDKBusiness.cs
  4. 6
      BBWY.Server.Business/PlatformSDK/TaoBaoBusiness.cs
  5. 2
      BBWY.Server.Business/PlatformSDK/_1688Business.cs
  6. 4
      BBWY.Server.Business/TaskSchedulerManager.cs
  7. 1
      JD.API/Startup.cs

57
BBWY.Server.Business/PlatformSDK/JDBusiness.cs

@ -16,6 +16,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks;
namespace BBWY.Server.Business namespace BBWY.Server.Business
{ {
@ -36,7 +37,7 @@ namespace BBWY.Server.Business
}; };
public JDBusiness(IMemoryCache memoryCache, NLogManager nLogManager) : base(memoryCache, nLogManager) { } public JDBusiness(IMemoryCache memoryCache, NLogManager nLogManager, TaskSchedulerManager taskSchedulerManager) : base(memoryCache, nLogManager, taskSchedulerManager) { }
private IJdClient GetJdClient(string appKey, string appSecret) private IJdClient GetJdClient(string appKey, string appSecret)
{ {
@ -700,6 +701,9 @@ namespace BBWY.Server.Business
{ {
var jdClient = GetJdClient(deleteSkuRequest.AppKey, deleteSkuRequest.AppSecret); var jdClient = GetJdClient(deleteSkuRequest.AppKey, deleteSkuRequest.AppSecret);
if (haveGiftTemplateSku)
DeleteSkuList(deleteSkuRequest);
#region 设置完整标题 #region 设置完整标题
{ {
var req = new WareWriteUpdateWareTitleRequest(); var req = new WareWriteUpdateWareTitleRequest();
@ -713,9 +717,6 @@ namespace BBWY.Server.Business
throw new BusinessException($"设置完整标题出错-{(string.IsNullOrEmpty(response.ErrorMsg) ? response.ErrMsg : response.ErrorMsg)}"); throw new BusinessException($"设置完整标题出错-{(string.IsNullOrEmpty(response.ErrorMsg) ? response.ErrMsg : response.ErrorMsg)}");
} }
#endregion #endregion
if (haveGiftTemplateSku)
DeleteSkuList(deleteSkuRequest);
} }
/// <summary> /// <summary>
@ -1172,26 +1173,28 @@ namespace BBWY.Server.Business
} }
#endregion #endregion
#region 下架赠品sku Task.Factory.StartNew(() => StartJDPromotionTaskDelay(deleteGiftSkuRequest, request, brandName), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.JDPromotionDelayTaskScheduler);
stepText = "下架赠品sku";
Thread.Sleep(5000); //#region 下架赠品sku
DeleteSkuList(deleteGiftSkuRequest); //stepText = "下架赠品sku";
#endregion //Thread.Sleep(5000);
//DeleteSkuList(deleteGiftSkuRequest);
#region 设置完整标题 //#endregion
{
stepText = "设置完整标题"; //#region 设置完整标题
var req = new WareWriteUpdateWareTitleRequest(); //{
req.wareId = long.Parse(request.MainProductSpu); // stepText = "设置完整标题";
if (!request.FullTitle.StartsWith(brandName)) // var req = new WareWriteUpdateWareTitleRequest();
req.title = $"{brandName}{request.FullTitle}"; // req.wareId = long.Parse(request.MainProductSpu);
else // if (!request.FullTitle.StartsWith(brandName))
req.title = request.FullTitle; // req.title = $"{brandName}{request.FullTitle}";
var response = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime()); // else
if (response.IsError) // req.title = request.FullTitle;
throw new BusinessException($"设置完整标题出错-{(string.IsNullOrEmpty(response.ErrorMsg) ? response.ErrMsg : response.ErrorMsg)}"); // var response = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime());
} // if (response.IsError)
#endregion // throw new BusinessException($"设置完整标题出错-{(string.IsNullOrEmpty(response.ErrorMsg) ? response.ErrMsg : response.ErrorMsg)}");
//}
//#endregion
return promotionId; return promotionId;
} }
@ -1254,5 +1257,11 @@ namespace BBWY.Server.Business
}).ToList(); }).ToList();
} }
private void StartJDPromotionTaskDelay(DeleteSkuListRequest deleteSkuRequest, StartPromotionTaskRequest2 startRequest, string brandName)
{
Thread.Sleep(20 * 1000);
RollBackWhenStartPromotionError(deleteSkuRequest, startRequest, brandName, true);
}
} }
} }

2
BBWY.Server.Business/PlatformSDK/PDDBusiness.cs

@ -10,7 +10,7 @@ namespace BBWY.Server.Business
public class PDDBusiness : PlatformSDKBusiness public class PDDBusiness : PlatformSDKBusiness
{ {
public override Enums.Platform Platform => Enums.Platform.; public override Enums.Platform Platform => Enums.Platform.;
public PDDBusiness(IMemoryCache memoryCache, NLogManager nLogManager) : base(memoryCache, nLogManager) public PDDBusiness(IMemoryCache memoryCache, NLogManager nLogManager, TaskSchedulerManager taskSchedulerManager) : base(memoryCache, nLogManager, taskSchedulerManager)
{ {
} }
} }

4
BBWY.Server.Business/PlatformSDK/PlatformSDKBusiness.cs

@ -20,11 +20,13 @@ namespace BBWY.Server.Business
public virtual Enums.Platform Platform { get; } public virtual Enums.Platform Platform { get; }
protected NLogManager nLogManager; protected NLogManager nLogManager;
protected TaskSchedulerManager taskSchedulerManager;
public PlatformSDKBusiness(IMemoryCache memoryCache, NLogManager nLogManager) public PlatformSDKBusiness(IMemoryCache memoryCache, NLogManager nLogManager, TaskSchedulerManager taskSchedulerManager)
{ {
this.memoryCache = memoryCache; this.memoryCache = memoryCache;
this.nLogManager = nLogManager; this.nLogManager = nLogManager;
this.taskSchedulerManager = taskSchedulerManager;
this.expirationTimeSpan = TimeSpan.FromMinutes(60); this.expirationTimeSpan = TimeSpan.FromMinutes(60);
} }

6
BBWY.Server.Business/PlatformSDK/TaoBaoBusiness.cs

@ -1,15 +1,11 @@
using BBWY.Server.Model; using BBWY.Server.Model;
using Microsoft.Extensions.Caching.Memory; using Microsoft.Extensions.Caching.Memory;
using NLog;
using System;
using System.Collections.Generic;
using System.Text;
namespace BBWY.Server.Business namespace BBWY.Server.Business
{ {
public class TaoBaoBusiness : PlatformSDKBusiness public class TaoBaoBusiness : PlatformSDKBusiness
{ {
public TaoBaoBusiness(IMemoryCache memoryCache, NLogManager nLogManager) : base(memoryCache, nLogManager) public TaoBaoBusiness(IMemoryCache memoryCache, NLogManager nLogManager, TaskSchedulerManager taskSchedulerManager) : base(memoryCache, nLogManager, taskSchedulerManager)
{ {
} }

2
BBWY.Server.Business/PlatformSDK/_1688Business.cs

@ -23,7 +23,7 @@ namespace BBWY.Server.Business
private RestApiService restApiService; private RestApiService restApiService;
private _1688TradeTypeCompare _1688TradeTypeCompare; private _1688TradeTypeCompare _1688TradeTypeCompare;
public _1688Business(IMemoryCache memoryCache, NLogManager nLogManager, RestApiService restApiService) : base(memoryCache, nLogManager) public _1688Business(IMemoryCache memoryCache, NLogManager nLogManager, RestApiService restApiService, TaskSchedulerManager taskSchedulerManager) : base(memoryCache, nLogManager,taskSchedulerManager)
{ {
this.restApiService = restApiService; this.restApiService = restApiService;
_1688TradeTypeCompare = new _1688TradeTypeCompare(); _1688TradeTypeCompare = new _1688TradeTypeCompare();

4
BBWY.Server.Business/TaskSchedulerManager.cs

@ -22,6 +22,8 @@ namespace BBWY.Server.Business
public LimitedConcurrencyLevelTaskScheduler GOIWarningTaskScheduler { get; private set; } public LimitedConcurrencyLevelTaskScheduler GOIWarningTaskScheduler { get; private set; }
public LimitedConcurrencyLevelTaskScheduler JDPromotionDelayTaskScheduler { get; private set; }
public TaskSchedulerManager() public TaskSchedulerManager()
{ {
SyncOrderTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); SyncOrderTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10);
@ -35,6 +37,8 @@ namespace BBWY.Server.Business
StockNumWarningTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); StockNumWarningTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10);
GOIWarningTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10); GOIWarningTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10);
JDPromotionDelayTaskScheduler = new LimitedConcurrencyLevelTaskScheduler(10);
} }
} }
} }

1
JD.API/Startup.cs

@ -41,6 +41,7 @@ namespace JD.API
services.AddMemoryCache(); services.AddMemoryCache();
services.AddSingleton<NLogManager>(); services.AddSingleton<NLogManager>();
services.AddSingleton<TaskSchedulerManager>();
//services.AddSingleton(typeof(NLog.ILogger), NLog.LogManager.GetCurrentClassLogger()); //services.AddSingleton(typeof(NLog.ILogger), NLog.LogManager.GetCurrentClassLogger());
var fsql = new FreeSql.FreeSqlBuilder().UseConnectionString(FreeSql.DataType.MySql, Configuration.GetConnectionString("DB")).Build(); var fsql = new FreeSql.FreeSqlBuilder().UseConnectionString(FreeSql.DataType.MySql, Configuration.GetConnectionString("DB")).Build();

Loading…
Cancel
Save