fix:order link query logic

This commit is contained in:
李鹏军 2024-04-15 09:03:04 +08:00
parent 1f8fe7c248
commit 639a2232a3
4 changed files with 8 additions and 2 deletions

View File

@ -42,7 +42,7 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
var linkedOrders = await _orderRepository.GetLinkedOrdersAsync(@event.OrderIds);
foreach (var orderId in @event.OrderIds)
{
foreach (var group in linkedOrders.Where(x => x.OrderId == orderId)
foreach (var group in linkedOrders.Where(x => x.OwnerOrderId == orderId)
.GroupBy(x => x.SubSystemId))
{
var nextEvent = @event.DeepCopy();

View File

@ -46,7 +46,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
foreach (var order in @event.OrderIdentifiers)
{
// 理论上小包在这不会分组
foreach (var group in linkedOrders.Where(x => x.OrderId == order.OrderId)
foreach (var group in linkedOrders.Where(x => x.OwnerOrderId == order.OrderId)
.GroupBy(x => x.SubSystemId))
{
var nextEvent = @event.DeepCopy();

View File

@ -2,6 +2,11 @@
public class LinkedOrderVO
{
/// <summary>
/// 被关联订单id
/// </summary>
public int OwnerOrderId { get; set; }
/// <summary>
/// 关联订单id
/// </summary>

View File

@ -74,6 +74,7 @@ AND `a`.`IsDeleted` = 0 AND `b`.`IsDeleted` = 0;");
.Where(a => orderIds.Contains(a.OrderId))
.Select((a, b) => new LinkedOrderVO
{
OwnerOrderId = a.OrderId,
OrderId = b.Id,
OrderNo = b.OrderNo,
OrderType = b.OrderType,