Browse Source

Merge branch 'master' of http://code.qiyue666.com/pengcong001/bbwy

AddValidOverTime
506583276@qq.com 2 years ago
parent
commit
13ff18f6b4
  1. 5
      BBWY.Client/Converters/InputNumberConverter.cs
  2. 2
      BBWY.Client/GlobalContext.cs
  3. 62
      BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs
  4. 4
      BBWY.Server.Business/DingDingBusiness.cs
  5. 113
      BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs
  6. 52
      BBWY.Server.Business/PlatformSDK/JDBusiness.cs
  7. 6
      BBWY.Server.Business/Sync/ProductSyncBusiness.cs
  8. 14
      BBWY.Server.Model/Dto/Request/PromotionTask/StartPromotionTaskRequest.cs
  9. 40
      BBWY.Test/Program.cs
  10. 1
      JD.API/Startup.cs

5
BBWY.Client/Converters/InputNumberConverter.cs

@ -18,7 +18,10 @@ namespace BBWY.Client.Converters
if (string.IsNullOrEmpty(strValue))
return null;
decimal result;
if (strValue.IndexOf('.') == strValue.Length - 1 || !decimal.TryParse(strValue, out result))
var dotIndex = strValue.IndexOf('.');
if (dotIndex == strValue.Length - 1 ||
(dotIndex != -1 && strValue.EndsWith("0")) ||
!decimal.TryParse(strValue, out result))
return DependencyProperty.UnsetValue;
return result;
}

2
BBWY.Client/GlobalContext.cs

@ -13,7 +13,7 @@ namespace BBWY.Client
{
ShopServiceGroupList = new List<string>();
ShopServiceGroupLowerList = new List<string>();
ClientVersion = "10185";
ClientVersion = "10186";
}
private User user;

62
BBWY.Server.Business/BillCorrection/BillCorrectionBusiness.cs

@ -36,31 +36,55 @@ namespace BBWY.Server.Business
var orderIds = orderList.Select(o => o.OrderId).ToList();
var sdOrderIds = orderList.Where(o => o.StorageType == Model.Enums.StorageType.SD).Select(o => o.OrderId).ToArray();
var orderCostDetailList = fsql.Select<OrderCostDetail>()
.Where(ocd => orderIds.Contains(ocd.OrderId) && ocd.IsEnabled == true)
.GroupBy(ocd => ocd.OrderId)
.ToList(g => new
{
OrderId = g.Key,
DeliveryExpressFreight = g.Sum(g.Value.DeliveryExpressFreight),
SkuAmount = g.Sum(g.Value.SkuAmount),
PurchaseFreight = g.Sum(g.Value.PurchaseFreight),
FirstFreight = g.Sum(g.Value.FirstFreight),
InStorageAmount = g.Sum(g.Value.InStorageAmount),
OutStorageAmount = g.Sum(g.Value.OutStorageAmount),
ConsumableAmount = g.Sum(g.Value.ConsumableAmount),
StorageAmount = g.Sum(g.Value.StorageAmount)
});
//var orderCostDetailList = fsql.Select<OrderCostDetail>()
// .Where(ocd => orderIds.Contains(ocd.OrderId) && ocd.IsEnabled == true)
// .GroupBy(ocd => ocd.OrderId)
// .ToList(g => new
// {
// OrderId = g.Key,
// DeliveryExpressFreight = g.Sum(g.Value.DeliveryExpressFreight),
// SkuAmount = g.Sum(g.Value.SkuAmount),
// PurchaseFreight = g.Sum(g.Value.PurchaseFreight),
// FirstFreight = g.Sum(g.Value.FirstFreight),
// InStorageAmount = g.Sum(g.Value.InStorageAmount),
// OutStorageAmount = g.Sum(g.Value.OutStorageAmount),
// ConsumableAmount = g.Sum(g.Value.ConsumableAmount),
// StorageAmount = g.Sum(g.Value.StorageAmount)
// });
var orderCostDetailList = fsql.Select<OrderCostDetail, Order>().InnerJoin((ocd, o) => ocd.OrderId == o.Id)
.Where((ocd, o) => ocd.IsEnabled == true)
.Where((ocd, o) => request.ShopIds.Contains(o.ShopId) &&
o.StartTime >= request.StartTime &&
o.StartTime <= request.EndTime &&
o.IsGift == false)
.GroupBy((ocd, o) => ocd.OrderId)
.ToList(g => new
{
OrderId = g.Key,
DeliveryExpressFreight = g.Sum(g.Value.Item1.DeliveryExpressFreight),
SkuAmount = g.Sum(g.Value.Item1.SkuAmount),
PurchaseFreight = g.Sum(g.Value.Item1.PurchaseFreight),
FirstFreight = g.Sum(g.Value.Item1.FirstFreight),
InStorageAmount = g.Sum(g.Value.Item1.InStorageAmount),
OutStorageAmount = g.Sum(g.Value.Item1.OutStorageAmount),
ConsumableAmount = g.Sum(g.Value.Item1.ConsumableAmount),
StorageAmount = g.Sum(g.Value.Item1.StorageAmount)
});
var sdOrderCostList = fsql.Select<OrderCost>(sdOrderIds).ToList();
var afterOrderList = fsql.Select<AfterSaleOrder>()
.Where(aso => orderIds.Contains(aso.OrderId))
.GroupBy(aso => aso.OrderId)
var afterOrderList = fsql.Select<AfterSaleOrder, Order>()
.InnerJoin((aso, o) => aso.OrderId == o.Id)
.Where((aso, o) => request.ShopIds.Contains(o.ShopId) &&
o.StartTime >= request.StartTime &&
o.StartTime <= request.EndTime &&
o.IsGift == false)
.GroupBy((aso, o) => aso.OrderId)
.ToList(g => new
{
OrderId = g.Key,
AfterTotalCost = g.Sum(g.Value.AfterTotalCost)
AfterTotalCost = g.Sum(g.Value.Item1.AfterTotalCost)
});
foreach (var order in orderList)

4
BBWY.Server.Business/DingDingBusiness.cs

@ -10,11 +10,11 @@ using Yitter.IdGenerator;
namespace BBWY.Server.Business
{
public class DingDingBusiness : BaseBusiness, IDenpendency
public class DingDingBusiness : IDenpendency
{
private RestApiService restApiService;
public DingDingBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, RestApiService restApiService) : base(fsql, nLogManager, idGenerator)
public DingDingBusiness(RestApiService restApiService)
{
this.restApiService = restApiService;
}

113
BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs

@ -525,30 +525,35 @@ namespace BBWY.Server.Business
CheckRepeatSkuInRuningTask(runingTaskList, dbPromotionTask.MainProductSku);
}
var joinSkuCount = 0;
var joinSkuNoGiftList = new List<string>();
var host = GetPlatformRelayAPIHost(Enums.Platform.);
var haveGiftTemplateSku = giftTemplateSkuList != null && giftTemplateSkuList.Count() > 0;
string barCode = string.Empty, categoryId = string.Empty;
IList<JToken> multiCateProps = null;
var mainProductSkuInStore = false;
if (haveGiftTemplateSku)
var mainSkuResult = restApiService.SendRequest(host, "api/PlatformSDK/GetProductSkuList", new SearchProductSkuRequest()
{
var mainSkuResult = restApiService.SendRequest(host, "api/PlatformSDK/GetProductSkuList", new SearchProductSkuRequest()
{
AppKey = request.AppKey,
AppSecret = request.AppSecret,
AppToken = request.AppToken,
IsContainSource = true,
Platform = request.Platform,
Spu = dbPromotionTask.MainProductSpu
}, GetYunDingRequestHeader(), HttpMethod.Post);
if (mainSkuResult.StatusCode != System.Net.HttpStatusCode.OK)
throw new BusinessException($"获取主商品sku失败 {mainSkuResult.Content}");
var mainSkuListResponse = JsonConvert.DeserializeObject<ApiResponse<IList<ProductSkuResponse>>>(mainSkuResult.Content);
if (!mainSkuListResponse.Success)
throw new BusinessException($"获取主商品sku失败 {mainSkuListResponse.Msg}");
AppKey = request.AppKey,
AppSecret = request.AppSecret,
AppToken = request.AppToken,
IsContainSource = true,
Platform = request.Platform,
Spu = dbPromotionTask.MainProductSpu
}, GetYunDingRequestHeader(), HttpMethod.Post);
if (mainSkuResult.StatusCode != System.Net.HttpStatusCode.OK)
throw new BusinessException($"获取主商品sku失败 {mainSkuResult.Content}");
var mainSkuListResponse = JsonConvert.DeserializeObject<ApiResponse<IList<ProductSkuResponse>>>(mainSkuResult.Content);
if (!mainSkuListResponse.Success)
throw new BusinessException($"获取主商品sku失败 {mainSkuListResponse.Msg}");
joinSkuNoGiftList.AddRange(mainSkuListResponse.Data.Select(s => s.Id));
//开启延迟任务
if (!string.IsNullOrEmpty(dbPromotionTask.CustomMotherSku))
joinSkuNoGiftList.AddRange(dbPromotionTask.CustomMotherSku.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries));
if (haveGiftTemplateSku)
{
barCode = mainSkuListResponse.Data[0].Source.Value<string>("barCode");
categoryId = mainSkuListResponse.Data[0].Source.Value<string>("categoryId");
multiCateProps = mainSkuListResponse.Data[0].Source["multiCateProps"] != null ? mainSkuListResponse.Data[0].Source["multiCateProps"].ToList() : null;
@ -620,12 +625,12 @@ namespace BBWY.Server.Business
startResponse.DeleteGiftSkuList.Count() != 0)
dbPromotionTask.GiftTemplatePutNewSku = string.Join(",", startResponse.DeleteGiftSkuList);
try
{
if (!string.IsNullOrEmpty(shop.PJZSDingDingKey) && !string.IsNullOrEmpty(shop.PJZSDingDingWebHook))
dingDingBusiness.SendDingDingBotMessage(shop.PJZSDingDingKey, shop.PJZSDingDingWebHook, $"任务[{dbPromotionTask.ActivityName}]已开始,请及时查看任务是否正常进行");
}
catch { }
//try
//{
// if (!string.IsNullOrEmpty(shop.PJZSDingDingKey) && !string.IsNullOrEmpty(shop.PJZSDingDingWebHook))
// dingDingBusiness.SendDingDingBotMessage(shop.PJZSDingDingKey, shop.PJZSDingDingWebHook, $"任务[{dbPromotionTask.ActivityName}]已开始,请及时查看任务是否正常进行");
//}
//catch { }
fsql.Update<PromotionTask>(request.Id).Set(pt => pt.PromotionId, startResponse.JDPromotionId)
.SetIf(!string.IsNullOrEmpty(dbPromotionTask.GiftTemplatePutNewSku), pt => pt.GiftTemplatePutNewSku, dbPromotionTask.GiftTemplatePutNewSku)
@ -634,11 +639,11 @@ namespace BBWY.Server.Business
.Set(pt => pt.Status, Enums.PromitionTaskStatus.)
.ExecuteAffrows();
//开启延迟任务
Task.Factory.StartNew(() => StartPromotionDelayTask(request, startResponse, dbPromotionTask, shop), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.JDPromotionDelayTaskScheduler);
joinSkuCount = joinSkuNoGiftList.Distinct().Count();
Task.Factory.StartNew(() => StartPromotionDelayTask(request, startResponse, dbPromotionTask, shop, joinSkuCount), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.JDPromotionDelayTaskScheduler);
}
private void StartPromotionDelayTask(StartPromotionTaskRequest request, StartPromotionTaskResponse startResponse, PromotionTask promotionTask, ShopResponse shop)
private void StartPromotionDelayTask(StartPromotionTaskRequest request, StartPromotionTaskResponse startResponse, PromotionTask promotionTask, ShopResponse shop, int joinSkuCount)
{
var host = GetPlatformRelayAPIHost(Enums.Platform.);
@ -653,8 +658,12 @@ namespace BBWY.Server.Business
JDPromotionId = startResponse.JDPromotionId,
MainProductSpu = promotionTask.MainProductSpu,
HaveGiftTemplate = promotionTask.GiftTemplateId != null && promotionTask.GiftTemplateId != 0,
DeleteGiftSkuList = startResponse.DeleteGiftSkuList
}, GetYunDingRequestHeader(), HttpMethod.Post, timeOutSeconds: 300);
DeleteGiftSkuList = startResponse.DeleteGiftSkuList,
ActivityName = promotionTask.ActivityName,
JoinSkuCount = joinSkuCount,
PJZSDingDingKey = shop.PJZSDingDingKey,
PJZSDingDingWebHook = shop.PJZSDingDingWebHook
}, GetYunDingRequestHeader(), HttpMethod.Post, timeOutSeconds: 500);
var errorBack = new Action<long, string>((id, errorMsg) =>
{
@ -995,31 +1004,31 @@ namespace BBWY.Server.Business
{
#region 提前完成任务量,暂停JD活动
{
var httpResult = restApiService.SendRequest(GetPlatformRelayAPIHost(Enums.Platform.),
"api/platformsdk/SuspendJDPromotionTask",
new SuspendDPromotionTaskRequest()
{
AppKey = shop.AppKey2,
AppSecret = shop.AppSecret2,
AppToken = shop.AppToken2,
Platform = Enums.Platform.,
PromotionId = promotionTask.PromotionId.Value
},
GetYunDingRequestHeader(),
HttpMethod.Post);
//var httpResult = restApiService.SendRequest(GetPlatformRelayAPIHost(Enums.Platform.京东),
// "api/platformsdk/SuspendJDPromotionTask",
// new SuspendDPromotionTaskRequest()
// {
// AppKey = shop.AppKey2,
// AppSecret = shop.AppSecret2,
// AppToken = shop.AppToken2,
// Platform = Enums.Platform.京东,
// PromotionId = promotionTask.PromotionId.Value
// },
// GetYunDingRequestHeader(),
// HttpMethod.Post);
//if (httpResult.StatusCode != System.Net.HttpStatusCode.OK)
//{
// Error(shop, loggerName, $"监控任务-暂停京东活动-任务Id {promotionTask.Id}", new Exception(httpResult.Content));
//}
//else
//{
// var response = JsonConvert.DeserializeObject<ApiResponse>(httpResult.Content);
// if (!response.Success)
// {
// Error(shop, loggerName, $"监控任务-暂停京东活动-任务Id {promotionTask.Id}", new Exception(response.Msg));
// }
//}
var httpResult = restApiService.SendRequest(GetPlatformRelayAPIHost(Enums.Platform.),
"api/platformsdk/DeleteJDPromotionTask",
new DeleteJDPromotionTaskRequest()
{
AppKey = shop.AppKey2,
AppSecret = shop.AppSecret2,
AppToken = shop.AppToken2,
Platform = Enums.Platform.,
PromotionId = promotionTask.PromotionId.Value
},
GetYunDingRequestHeader(),
HttpMethod.Post);
}
#endregion
}

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

@ -21,6 +21,7 @@ namespace BBWY.Server.Business
{
public class JDBusiness : PlatformSDKBusiness
{
private DingDingBusiness dingDingBusiness;
public override Enums.Platform Platform => Enums.Platform.;
private readonly string searchFields = "orderId,venderId,orderType,payType,orderTotalPrice,orderSellerPrice,orderPayment,freightPrice,orderState,orderStateRemark,orderRemark,orderStartTime,orderEndTime,modified,consigneeInfo,itemInfoList,couponDetailList,taxFee,venderRemark,pin,waybill,storeOrder,storeId,sellerDiscount";
@ -36,7 +37,10 @@ namespace BBWY.Server.Business
};
public JDBusiness(IMemoryCache memoryCache, NLogManager nLogManager) : base(memoryCache, nLogManager) { }
public JDBusiness(IMemoryCache memoryCache, NLogManager nLogManager, DingDingBusiness dingDingBusiness) : base(memoryCache, nLogManager)
{
this.dingDingBusiness = dingDingBusiness;
}
private IJdClient GetJdClient(string appKey, string appSecret)
{
@ -1307,23 +1311,53 @@ namespace BBWY.Server.Business
throw;
}
Thread.Sleep(30 * 1000);
Thread.Sleep(10000);
#region 检查奶妈sku是否完全生效
var lastQueryJoinCount = 0;
var isJoinCompleted = false;
{
var i = 0;
while (i < 10)
var repeatCount = 0;
while (true)
{
i++;
var promotionTaskSkuList = GetPromotionTaskSku(request.AppKey, request.AppSecret, request.AppToken, request.JDPromotionId);
if (promotionTaskSkuList.Any(s => s.Value<int>("bind_type") == 1 && s.Value<int>("sku_status") == 0))
var currentQueryJoinCount = promotionTaskSkuList.Count(s => s.Value<int>("bind_type") == 1 && s.Value<int>("sku_status") == 1);
if (currentQueryJoinCount == request.JoinSkuCount)
{
Thread.Sleep(2000);
continue;
isJoinCompleted = true;
break;
}
break;
if (lastQueryJoinCount == 0)
lastQueryJoinCount = currentQueryJoinCount;
else if (lastQueryJoinCount == currentQueryJoinCount)
{
repeatCount++;
if (repeatCount > 2)
break;
}
lastQueryJoinCount = currentQueryJoinCount;
Thread.Sleep(30000);
}
}
#endregion
#region 发送钉钉消息
try
{
var ddMsg = new StringBuilder();
ddMsg.AppendLine($"活动名称:{request.ActivityName}");
ddMsg.AppendLine("任务状态:开始");
if (!isJoinCompleted)
{
ddMsg.AppendLine($"任务奶妈数:{request.JoinSkuCount}");
ddMsg.AppendLine($"参与奶妈数:{lastQueryJoinCount}");
ddMsg.AppendLine("参与任务的奶妈数异常请检查");
}
if (!string.IsNullOrEmpty(request.PJZSDingDingKey) && !string.IsNullOrEmpty(request.PJZSDingDingWebHook))
dingDingBusiness.SendDingDingBotMessage(request.PJZSDingDingKey, request.PJZSDingDingWebHook, ddMsg.ToString());
}
catch { }
#endregion
RollBackWhenStartPromotionError(request.AppKey, request.AppSecret, request.AppToken, request.DeleteGiftSkuList, request.MainProductSpu, request.FullTitle, request.BrandName, true);

6
BBWY.Server.Business/Sync/ProductSyncBusiness.cs

@ -304,13 +304,15 @@ namespace BBWY.Server.Business.Sync
#endregion
#region 找出状态变化的SKU
var stateChangeProductSkuList = productSkuList.Where(p => dbProductSkuList.Any(dp => dp.Id == p.Id && (dp.State != p.State || dp.Title != p.Title))).ToList();
var stateChangeProductSkuList = productSkuList.Where(p => dbProductSkuList.Any(dp => dp.Id == p.Id && (dp.State != p.State || dp.Title != p.Title || dp.Price != p.Price || dp.Logo != p.Logo))).ToList();
if (stateChangeProductSkuList.Count() > 0)
{
foreach (var productSku in stateChangeProductSkuList)
{
var update = fsql.Update<ProductSku>(productSku.Id).Set(p => p.State, productSku.State)
.Set(p => p.Title, productSku.Title);
.Set(p => p.Title, productSku.Title)
.Set(p => p.Price, productSku.Price)
.Set(p => p.Logo, productSku.Logo);
updateProductSkuList.Add(update);
}
}

14
BBWY.Server.Model/Dto/Request/PromotionTask/StartPromotionTaskRequest.cs

@ -94,5 +94,19 @@ namespace BBWY.Server.Model.Dto
/// 是否包含赠品模板
/// </summary>
public bool HaveGiftTemplate { get; set; }
/// <summary>
/// 参与活动的SKU数 (不含赠品)
/// </summary>
public int JoinSkuCount { get; set; }
/// <summary>
/// 活动名称
/// </summary>
public string ActivityName { get; set; }
public string PJZSDingDingKey { get; set; }
public string PJZSDingDingWebHook { get; set; }
}
}

40
BBWY.Test/Program.cs

@ -10,6 +10,7 @@ using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Net.Http;
@ -46,31 +47,32 @@ namespace BBWY.Test
static void Main(string[] args)
{
//var appkey = "E1AA9247D5583A6D87449CE6AB290185";
//var appSecret = "e479558ddd9e40f8929cfc00c6cbbc9c";
var appkey = "E1AA9247D5583A6D87449CE6AB290185";
var appSecret = "e479558ddd9e40f8929cfc00c6cbbc9c";
var appkey = "120EA9EC65AB017567D78CC1139EEEA5";
var appSecret = "8a42bc2301e8439b896e99f5475e0a9b";
// var appkey = "120EA9EC65AB017567D78CC1139EEEA5";
// var appSecret = "8a42bc2301e8439b896e99f5475e0a9b";
////0e61c4a8ec3e4df4b5836e10884db9220yth 齐盛
var token = "2ace3023200c4ea9aa682bbf8bffee18jztm"; //布莱特玩具
//var token = "01f5be2cb4d741dda66bce2356941597mdfm"; //布莱特玩具 token2
//var token = "01dc6f6e7fc34dcd99090d690312556cmdfk"; //齐盛
//var token = "9fffa982da23446fb035499ae5622f49odjk"; //腾奇
//var token = "c22ff4d37b6c4bbd82cd9e8d0dab42dbziyz"; //森王车品
//var token = "44c19a1c1fbd4641957e6e8985ed1358jmtl"; //森王玩具
//var token = "4a0ddc095e054c7aa90adcaccb14f83cwzgr"; //可比车品
//var token = "50a4c0f5c55848b5a8a715709e8d6fe0jntb"; //卿卿玩具专营店
var token = "8404898e42d04358879785f0e576019cwndg"; //爱维亲玩具专营店
//布莱特玩具
//var token = "01f5be2cb4d741dda66bce2356941597mdfm"; //布莱特玩具 token2
//var token = "01dc6f6e7fc34dcd99090d690312556cmdfk"; //齐盛
//var token = "9fffa982da23446fb035499ae5622f49odjk"; //腾奇
//var token = "c22ff4d37b6c4bbd82cd9e8d0dab42dbziyz"; //森王车品
//var token = "44c19a1c1fbd4641957e6e8985ed1358jmtl"; //森王玩具
//var token = "4a0ddc095e054c7aa90adcaccb14f83cwzgr"; //可比车品
//var token = "50a4c0f5c55848b5a8a715709e8d6fe0jntb"; //卿卿玩具专营店
var list1 = new List<long>() { 10079228186359, 10082297500241, 10082297500240, 10080447316056, 10079220447523, 10079201912937, 10079200088836, 10079200088833, 10079200088835, 10079200088832, 10079200088837, 10079194625126, 10083879389389, 10079200088834, 10083879389388, 10079124348172, 10079124348173, 10079144365199, 10079144365198, 10079115478818, 10079115478817, 10079115478819, 10079139644032, 10079139644033, 10079080505031, 10079080505032, 10079075020922, 10079075020921, 10079179600978, 10079178664215, 10079140753258, 10079123319498, 10079123319497, 10079140753259, 10079139644034, 10079075020917, 10079075020916, 10079075020919, 10079075020915, 10079075020920, 10079068398356, 10079068398357, 10079068398359, 10079068398358, 10079068398355, 10079070766630, 10079070766628, 10079070766629, 10079070766627, 10079061727434, 10079061727435, 10079067078716, 10079067078715, 10079051550275, 10079065234196, 10078949765112, 10079051550272, 10079051550273, 10078995578574, 10081271571077, 10078995578584, 10081271571078, 10079005060684, 10079005060685, 10078954770972, 10078954770970, 10078954770973, 10078954770971, 10078954090365, 10078950737155, 10078950737156, 10078950737154, 10078995578575, 10078995578573, 10079051550274, 10078942630181, 10078942630178, 10078942630180, 10078942630179, 10078949642109, 10078949642110, 10078949765111, 10078932762284, 10078932762282, 10078932762283, 10078932762285, 10078932762281, 10078932762280, 10078929048530, 10078929048529, 10078936875484, 10078936875486, 10078936875483, 10078936875482, 10078936875485, 10078927516637, 10078927516638, 10078927516636, 10078929048528, 10078924483318, 10078923909230, 10078923909232, 10078923909231, 10078915305594, 10078915305595, 10078915305596, 10078914570530, 10078913764603, 10078913764604, 10078893084597, 10078893084596, 10078895132329, 10078895132330, 10078926484276, 10078889852852, 10078885484651, 10078886812153, 10078887252150, 10078887252149, 10078881382522, 10078888593569, 10078884983577, 10078888593568, 10078886812154, 10078886812152, 10078888998815, 10078882492446, 10078882492445, 10078882939250, 10078886812151, 10078882939249, 10078889511230, 10078886812150, 10078887717699, 10078887717700, 10078881382521, 10078881382520, 10078881382519, 10078881382518, 10078878463607, 10078878463601, 10078878463603, 10078878463600, 10078878463606, 10078878463604, 10078878463602, 10078880399096, 10078878463608, 10078880399097, 10078878463605, 10078880399094, 10078875403071, 10079281444782, 10078880399095, 10078875403072, 10078874775401, 10078872017883, 10079059750532, 10079059750533, 10079059750534, 10079059750529, 10079059750530, 10078872696834, 10078872311300, 10078873232966, 10078873585555, 10078872311299, 10078872311301, 10079277073137, 10079277073138, 10079277073139, 10079277073140, 10079277073141 }.Distinct().ToList();
{
var nNogManager = new NLogManager();
var pid = Process.GetCurrentProcess().Id;
var message = $"{pid}-{Guid.NewGuid()}";
Console.WriteLine(message);
nNogManager.GetLogger(pid.ToString()).Info(message);
}
Console.WriteLine(list1.Count());
Console.ReadKey();
}

1
JD.API/Startup.cs

@ -67,6 +67,7 @@ namespace JD.API
});
services.AddSingleton<YunDingFilter>();
services.AddSingleton<RestApiService>();
services.AddSingleton<DingDingBusiness>();
services.AddSingleton<PlatformSDKBusiness, JDBusiness>();
services.AddSingleton<PlatformSDKBusiness, _1688Business>();
services.AddSingleton<YunDingBusiness>();

Loading…
Cancel
Save