diff --git a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
index 6acb8e68..65fb583f 100644
--- a/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
+++ b/src/SJZY.Track.Application/Services/TrackOrders/TrackOrderService.cs
@@ -113,22 +113,25 @@ public class TrackOrderService : ApplicationService
///
///
[HttpPost("GetDetails")]
- public async Task> GetTracksAsync(int orderId, string? orderNo, int systemId)
+ public async Task> GetTracksAsync(int? orderId, string? orderNo, int? systemId)
{
Expression> whereExpression = null;
- if (orderId > 0)
+ if (orderId != null && orderId > 0)
whereExpression = m => m.Id == orderId;
- if (string.IsNullOrEmpty(orderNo) && systemId > 0)
+ if (string.IsNullOrEmpty(orderNo) && systemId != null && systemId > 0)
whereExpression = m => m.OrderNo == orderNo && m.SubSystemId == systemId;
+ if (orderId == default && orderNo == default && systemId == default)
+ throw new BusinessException(message: "请求参数异常");
+
var subSystemId = await _orderRepository.GetFirstAsync(whereExpression, x => x.SubSystemId);
if (subSystemId == default)
{
throw new BusinessException(message: "订单不存在");
}
- var trackDetails = await _trackDetailsEsRepository.GetListAsync(orderId);
+ var trackDetails = await _trackDetailsEsRepository.GetListAsync(orderId ?? 0);
if (trackDetails.IsNullOrEmpty())
{
return new List();