From cfcf9a27a60fc2ba24f8880772e483a1267c642e Mon Sep 17 00:00:00 2001 From: liguoyang Date: Sun, 7 Apr 2024 15:45:05 +0800 Subject: [PATCH] =?UTF-8?q?fix=20nullable=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Order/Services/Implements/OrderService.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs index 67ed5c23..f8f80e15 100644 --- a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs +++ b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs @@ -22,9 +22,9 @@ namespace Dlhis.Canteen.Order.Services.Implements; public class OrderService : BaseOrderService, IOrderService { - public OrderService(ICanteenSettingService canteenSettingService, + public OrderService(ICanteenSettingService canteenSettingService, IDbContext dbContext, - ICurrentUser currentUser, + ICurrentUser currentUser, IDevicePermissionApi devicePermissionApi, ILogger logger) : base(canteenSettingService, dbContext, currentUser, devicePermissionApi, logger) @@ -366,6 +366,7 @@ public class OrderService : BaseOrderService, IOrderService var balanceRecords = await DbContext.Queryable() .Where(x => x.UserNo == order.UserNo) + .Where(x=>x.Type == BalanceRecordTypeEnumType.Out) .Where(x => x.CreateTime >= beginOfDay && x.CreateTime <= endOfDay) //今天消费记录 .ToListAsync(); @@ -376,7 +377,9 @@ public class OrderService : BaseOrderService, IOrderService .Where(x => x.Catalog == CanteenBusinessPlaceCatalogEnumType.Supermarket) .Select(x => x.Code).ToListAsync(); - var cost = balanceRecords.Where(x => businessPlaceCodes.Contains(x.BusinessPlaceCode.Value)).Sum(x => x.Amount); + var cost = balanceRecords.Where(x => x.BusinessPlaceCode.HasValue) + .Where(x => businessPlaceCodes.Contains(x.BusinessPlaceCode.Value)) + .Sum(x => x.Amount); if (cost + Math.Abs(order.Amount) > dayMarketCostMax) { throw new UserFriendlyException($"超出当天超市消费限制({dayMarketCostMax}),无法消费");