From d5d1617cf6cae76c186b765f69fe2fa770b934c2 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Wed, 26 Jun 2024 13:28:14 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E5=A4=84=E7=90=86=E5=8F=AF=E8=83=BD?= =?UTF-8?q?=E4=B8=BA=E7=A6=BB=E8=81=8C=E4=BA=BA=E5=91=98=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Order/Services/Implements/OrderService.cs | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs index 3edd2716..3e28f94e 100644 --- a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs +++ b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs @@ -44,7 +44,7 @@ public class OrderService : BaseOrderService, IOrderService public async Task> AddAsync(OrderAddRequest request) { //尝试匹配userId - _ = long.TryParse(request.UserUniqueNo, out var userId); + var s = long.TryParse(request.UserUniqueNo, out var userId); // if (request.Source == BalanceRecordSourceEnumType.QrCode) // { @@ -56,6 +56,13 @@ public class OrderService : BaseOrderService, IOrderService .Where(x => x.Code == request.UserUniqueNo || x.Id == userId || x.CardNo == request.UserUniqueNo) .FirstAsync(); + if (gainfo == null && s) + { + await DbContext.Queryable().AS("GainfoLeave") + .Where(x => x.Code == request.UserUniqueNo || x.Id == userId || x.CardNo == request.UserUniqueNo) + .FirstAsync(); + } + var message = string.Empty; if (request.IsOffline) @@ -111,20 +118,18 @@ public class OrderService : BaseOrderService, IOrderService } } - var gainfoId = gainfo?.Id ?? 0; //获取人员余额 - var data = await DbContext.Queryable() - .LeftJoin((ga, department) => ga.DepartmentNo == department.No) - .LeftJoin((ga, department, mealUser) => ga.No == mealUser.UserNo) - .Where(ga => ga.Id == gainfoId) - .Select((ga, department, mealUser) => new OrderResultResponse + var data = await DbContext.Queryable() + .LeftJoin((x, ga) => x.UserNo == ga.No) + .LeftJoin((x, ga, department) => ga.DepartmentNo == department.No) + .Select((x, ga, department) => new OrderResultResponse { UserCode = ga.Code, UserName = ga.Name, DepartmentNo = ga.DepartmentNo, DepartmentName = department.Name, - CurrentBalance = mealUser.Balance + CurrentBalance = x.Balance }) .SingleAsync(); @@ -132,7 +137,7 @@ public class OrderService : BaseOrderService, IOrderService { Code = message.IsPresent() ? ApiStateCode.Error : ApiStateCode.Success, Data = data, - Msg = message, + Msg = message }; }