diff --git a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
index 75806f9e..e21286df 100644
--- a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
+++ b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
@@ -1,3 +1,4 @@
+using System.Linq.Expressions;
using SJZY.Expand.AliyunOSS;
using SJZY.Track.Application.Contract.Dtos.ProvideServices;
using SJZY.Track.Application.Contract.Dtos.TrackOrder;
@@ -108,11 +109,20 @@ public class TrackOrderService : ApplicationService
/// 根据订单id获取轨迹明细列表
///
///
+ ///
+ ///
///
[HttpPost("GetDetails")]
- public async Task> GetTracksAsync(int orderId)
+ public async Task> GetTracksAsync(int orderId, string orderNo, int systemId)
{
- var subSystemId = await _orderRepository.GetFirstAsync(x => x.Id == orderId, x => x.SubSystemId);
+ Expression> whereExpression = null;
+ if (orderId > 0)
+ whereExpression = m => m.Id == orderId;
+
+ if (string.IsNullOrEmpty(orderNo) && systemId > 0)
+ whereExpression = m => m.OrderNo == orderNo && m.SubSystemId == systemId;
+
+ var subSystemId = await _orderRepository.GetFirstAsync(whereExpression, x => x.SubSystemId);
if (subSystemId == default)
{
throw new BusinessException(message: "订单不存在");