diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshAttach.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshAttach.cs
deleted file mode 100644
index ae47f35a..00000000
--- a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshAttach.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-namespace SJZY.Track.Application.Contract.Dtos.TrackPull;
-
-public class TrackRefreshAttach
-{
- public TrackRefreshAttach(int serviceProviderId, string serviceProviderCode, int subSystemId, int orderType)
- {
- ServiceProviderId = serviceProviderId;
- ServiceProviderCode = serviceProviderCode;
- SubSystemId = subSystemId;
- OrderType = orderType;
- }
-
- ///
- /// 服务商id
- ///
- public int ServiceProviderId { get; set; }
-
- ///
- /// 服务商code
- ///
- public string ServiceProviderCode { get; set; }
-
- ///
- /// 订单类型(主数据枚举TrackOrderType)
- ///
- public int OrderType { get; set; }
-
- ///
- /// 子系统id
- ///
- public int SubSystemId { get; set; }
-}
\ No newline at end of file
diff --git a/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshDto.cs b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshDto.cs
new file mode 100644
index 00000000..d8d476d2
--- /dev/null
+++ b/src/SJZY.Track.Application.Contract/Dtos/TrackPull/TrackRefreshDto.cs
@@ -0,0 +1,16 @@
+using SJZY.Track.Application.Contract.Dtos.ProvideServices;
+
+namespace SJZY.Track.Application.Contract.Dtos.TrackPull;
+
+public class TrackRefreshDto : OrderNoInfo
+{
+ ///
+ /// 服务商id
+ ///
+ public int ServiceProviderId { get; set; }
+
+ ///
+ /// 子系统id
+ ///
+ public int SubSystemId { get; set; }
+}
\ No newline at end of file
diff --git a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
index e5207ee2..2ce214c6 100644
--- a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
+++ b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
@@ -32,7 +32,7 @@ public class TrackRefreshEventHandler : ITransientDependency, ICapSubscribe
public async Task ConsumerAsync(InterfaceRelayForwardReplayEvent @event)
{
// tips:attach返回的是服务商id,必有
- var attach = JsonConvert.DeserializeObject(@event.Attach);
+ var attach = JsonConvert.DeserializeObject(@event.Attach);
if (attach is null) return;
var config =
await _trackPullCacheService.GetPullParamWithContentConfigAsync(attach.SubSystemId,
diff --git a/src/SJZY.Track.Application/SJZY.Track.Application.csproj b/src/SJZY.Track.Application/SJZY.Track.Application.csproj
index fc1c5423..62282f44 100644
--- a/src/SJZY.Track.Application/SJZY.Track.Application.csproj
+++ b/src/SJZY.Track.Application/SJZY.Track.Application.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackPullService.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackPullService.cs
index b9113abe..10f1d52a 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/TrackPullService.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackPullService.cs
@@ -1,5 +1,4 @@
using Microsoft.AspNetCore.Authorization;
-using Newtonsoft.Json;
using SJZY.Expand.ABP.Core;
using SJZY.InterfaceRelay.Application.Contracts;
using SJZY.Track.Application.Contract.Dtos.ProvideServices;
@@ -41,7 +40,6 @@ public class TrackPullService : ApplicationService
// todo:罚时?
input.OrderNos = input.OrderNos.Where(x => !x.IsNullOrWhiteSpace()).Distinct().ToList(); // 单号去重、去空
-
// 这里没有区分订单类型,就算的不同类型的单一起刷新了也无所谓
var orders = await _provideQueries.FindOrderWithServiceProviderAsync(input.OrderNos);
@@ -50,18 +48,19 @@ public class TrackPullService : ApplicationService
throw new BusinessException(message: "一个拉取配置都不存在");
}
- foreach (var group in orders.GroupBy(x =>
- new TrackRefreshAttach(x.ServiceProviderId, x.ServiceProviderCode, x.SubSystemId, x.OrderType)))
+ foreach (var group in orders.GroupBy(x => x.ServiceProviderCode))
{
- var data = group.Select(x => new
+ var data = group.Select(x => new TrackRefreshDto
{
- x.OrderNo
+ OrderType = x.OrderType,
+ OrderNo = x.OrderNo,
+ ServiceProviderId = x.ServiceProviderId,
+ SubSystemId = x.SubSystemId
}).ToList();
// 批量获取轨迹
await _httpClientProxy.Service.BatchForwardThenPushToQueueAsync(
- "A012", group.Key.ServiceProviderCode, data,
- GlobalConst.TrackRefreshSubscribe, JsonConvert.SerializeObject(group.Key));
+ "A012", group.Key, data, GlobalConst.TrackRefreshSubscribe);
}
return true;
@@ -86,19 +85,19 @@ public class TrackPullService : ApplicationService
var orders = await _provideQueries.FindOrderWithServiceProviderAsync(config.ServiceProviderId);
- foreach (var group in orders.GroupBy(x =>
- new TrackRefreshAttach(x.ServiceProviderId, x.ServiceProviderCode, x.SubSystemId,
- x.OrderType)))
+ foreach (var group in orders.GroupBy(x => x.ServiceProviderCode))
{
- var data = group.Select(x => new
+ var data = group.Select(x => new TrackRefreshDto
{
- x.OrderNo
+ OrderType = x.OrderType,
+ OrderNo = x.OrderNo,
+ ServiceProviderId = x.ServiceProviderId,
+ SubSystemId = x.SubSystemId
}).ToList();
// 批量获取轨迹
await _httpClientProxy.Service.BatchForwardThenPushToQueueAsync(
- "A012", group.Key.ServiceProviderCode, data,
- GlobalConst.TrackRefreshSubscribe, JsonConvert.SerializeObject(group.Key));
+ "A012", group.Key, data, GlobalConst.TrackRefreshSubscribe);
}
await RedisHelper.Client.SetExAsync(redisKey, config.PullInterval * 60, 1);