From 66d383160f1ded0928fb646cd84633e8ec0bb9b6 Mon Sep 17 00:00:00 2001 From: zzh <1368735060@qq.com> Date: Thu, 15 Oct 2026 20:11:46 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=BA=94=E6=94=B6=E5=BA=94=E4=BB=98?= =?UTF-8?q?=E3=80=8C=E4=BB=85=E5=BD=93=E5=89=8D=E7=94=9F=E6=95=88=E9=98=B6?= =?UTF-8?q?=E6=AE=B5=E3=80=8D=E5=88=97=E8=A1=A8=E9=87=91=E9=A2=9D=E4=B8=BA?= =?UTF-8?q?=200?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SqlSugar 在同一查询上 Select 后再分页会沿用投影列,导致 Amount/Currency 丢失;候选筛选与最终全字段查询拆开。 Co-authored-by: Cursor --- src/Oms.SqlSugarCore/Orders/OrderRepository.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Oms.SqlSugarCore/Orders/OrderRepository.cs b/src/Oms.SqlSugarCore/Orders/OrderRepository.cs index c85d43f..ad4e985 100644 --- a/src/Oms.SqlSugarCore/Orders/OrderRepository.cs +++ b/src/Oms.SqlSugarCore/Orders/OrderRepository.cs @@ -1215,12 +1215,14 @@ public class OrderRepository : OmsSqlSugarRepository, IOrderRepository, I return feeQuery; } + // SqlSugar:在同一 ISugarQueryable 上 Select 后再 Where/ToPageList,会沿用投影列, + // 导致 Amount/Currency 等未选字段落成默认值(金额全 0、币种空)。候选查询与最终查询拆开。 var candidates = await feeQuery .Select(f => new { f.Id, f.OrderId, f.Type, f.CostItem, f.ChargingStage }) .ToListAsync(cancellationToken); if (candidates.Count == 0) { - return feeQuery.Where(_ => false); + return db.Queryable().Where(_ => false); } var winningIds = candidates @@ -1232,7 +1234,9 @@ public class OrderRepository : OmsSqlSugarRepository, IOrderRepository, I .Id) .ToArray(); - return feeQuery.Where(f => winningIds.Contains(f.Id)); + return db.Queryable() + .Where(fee => !fee.IsDeleted) + .Where(f => winningIds.Contains(f.Id)); } private static int GetChargingStageRank(string? stage) =>