diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs index c2cabe68..cb345396 100644 --- a/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs +++ b/Src/Dlhis.Canteen/Order/Services/Implements/OrderService.cs @@ -64,15 +64,32 @@ public class OrderService : IOrderService .FirstAsync(); gainfo.ThrowIfNull($"用户{request.UserUniqueNo}不存在,无法操作"); - - var canteenUserExists = await _dbContext.Queryable() - .Where(x => x.UserNo == gainfo.No) - .AnyAsync(); - canteenUserExists.ThrowIfFalse($"就餐用户{request.UserUniqueNo}不存在,无法操作"); - //消费权限控制 await CheckPAsync(gainfo.No, request.DeviceUniqueNo); + var canteenUserExists = await _dbContext.Queryable() + .Where(x => x.UserNo == gainfo.No) + .AnyAsync(); + + if (!canteenUserExists) + { + await _dbContext.InsertAsync(new CanteenUserEntity + { + UserNo = gainfo.No, + Balance = 0, + BalanceOfRecharge = 0, + BalanceOfSubsidies = 0, + UserType = CanteenUserEnumType.LocalTenant, + TenantId = gainfo.Factory, + Version = 0, + + CreatedBy = 1, + CreateTime = DateTime.Now, + ModifiedBy = 1, + ModifiedTime = DateTime.Now, + }); + } + //消费 if (request.Type == BalanceRecordTypeEnumType.Out) {