fix: 修复【根据Id获取轨迹明细】校验,增加以下校验规则
规则1:orderId为空,orderNo为空+systemId>0,校验为参数异常 规则2:orderId为空,orderNo不为空+systemId为空,校验为参数异常 注:当orderId>0,orderNo不为空,systemId>0,则使用【订单号+系统id】的方式查询轨迹明细
This commit is contained in:
parent
26f57263b1
commit
a4df525ee8
@ -115,14 +115,16 @@ public class TrackOrderService : ApplicationService
|
||||
[HttpPost("GetDetails")]
|
||||
public async Task<List<TrackOrderDetailDto>> GetTracksAsync(int? orderId, string? orderNo, int? systemId)
|
||||
{
|
||||
Expression<Func<OrderEntity, bool>> whereExpression = null;
|
||||
Expression<Func<OrderEntity, bool>>? whereExpression = null;
|
||||
//根据订单id查询
|
||||
if (orderId != null && orderId > 0)
|
||||
whereExpression = m => m.Id == orderId;
|
||||
|
||||
//根据订单号+系统id查询
|
||||
if (!string.IsNullOrEmpty(orderNo) && systemId != null && systemId > 0)
|
||||
whereExpression = m => m.OrderNo == orderNo && m.SubSystemId == systemId;
|
||||
|
||||
if (orderId == default && orderNo == default && systemId == default)
|
||||
if (whereExpression == default)
|
||||
throw new BusinessException(message: "请求参数异常");
|
||||
|
||||
var subSystemId = await _orderRepository.GetFirstAsync(whereExpression, x => x.SubSystemId);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user