From a64823e15b4885f810d27e8a69cd7ed5937633b7 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Thu, 6 Mar 2025 11:03:27 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E6=8E=92=E9=99=A4=E7=94=B5=E5=AD=90?= =?UTF-8?q?=E5=88=B8=E5=92=8C=E7=94=9F=E6=97=A5=E5=88=B8=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Common/SysData/Services/Implements/SysDataService.cs | 4 +++- .../Order/Repository/Implements/BalanceRepository.cs | 2 +- .../Order/Services/Implements/BalanceService.cs | 4 ++-- .../Canteen/Enums/BalanceRecordSourceEnumType.cs | 8 ++++++++ Src/Dlhis.ScheduledTask/Jobs/MealSupplementHandlerJob.cs | 2 +- 5 files changed, 15 insertions(+), 5 deletions(-) diff --git a/Src/Dlhis.Basic/Common/SysData/Services/Implements/SysDataService.cs b/Src/Dlhis.Basic/Common/SysData/Services/Implements/SysDataService.cs index 976e0244..820f600d 100644 --- a/Src/Dlhis.Basic/Common/SysData/Services/Implements/SysDataService.cs +++ b/Src/Dlhis.Basic/Common/SysData/Services/Implements/SysDataService.cs @@ -54,7 +54,9 @@ public class SysDataService : ISysDataService { UserCode = x.Code, Balance = SqlFunc.Subqueryable().Where(p => p.UserCode == x.Code) - .Where(p => p.Source != BalanceRecordSourceEnumType.EMealVoucher && p.Status == BalanceRecordStatusEnumType.Valid && p.IsDeleted == false) + .Where(p => !BalanceRecordSourceConstants.IgnoreSources.Contains(p.Source) + && p.Status == BalanceRecordStatusEnumType.Valid + && p.IsDeleted == false) .Sum(p => p.Amount) }) .ToListAsync(); diff --git a/Src/Dlhis.Canteen/Order/Repository/Implements/BalanceRepository.cs b/Src/Dlhis.Canteen/Order/Repository/Implements/BalanceRepository.cs index 0a687659..d3db34d1 100644 --- a/Src/Dlhis.Canteen/Order/Repository/Implements/BalanceRepository.cs +++ b/Src/Dlhis.Canteen/Order/Repository/Implements/BalanceRepository.cs @@ -103,7 +103,7 @@ public class BalanceRepository : IBalanceRepository var balance = await _dbContext.Queryable() .Where(x => x.UserCode == userCode) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid) - .Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) + .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source)) .SumAsync(x => x.Amount); var version = await _dbContext.Queryable() diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs index 0c99ae1a..af215b13 100644 --- a/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs +++ b/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs @@ -346,7 +346,7 @@ public class BalanceService : IBalanceService .LeftJoin((record, ga, department, bPlace) => record.BusinessPlaceCode == bPlace.Code) .Where((record, ga) => record.UserCode == userCode && factories.Contains(record.TenantId)) .Where(record => record.Status == BalanceRecordStatusEnumType.Valid || record.Status == BalanceRecordStatusEnumType.Obsolute) - .Where(record => record.Source != BalanceRecordSourceEnumType.EMealVoucher) //不展示电子餐券信息 + .Where(record => !BalanceRecordSourceConstants.IgnoreSources.Contains(record.Source)) .WhereIF(request.SearchDateTimePeriod.HasValue(), record => record.CostDate >= request.SearchDateTimePeriod.Start && record.CostDate <= request.SearchDateTimePeriod.End) .WhereIF(request.ApplicationType.HasValue, record => record.ApplicationType == request.ApplicationType) .OrderBy(record => record.CostDateTime) @@ -372,7 +372,7 @@ public class BalanceService : IBalanceService .Where(x => x.UserCode == userCode && factories.Contains(x.TenantId)) .Where(x => x.CostDate >= monthStart && x.CostDate <= monthEnd) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid) - .Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) + .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source)) .SumAsync(x => x.Amount); return new BalanceRecordUserResultResponse diff --git a/Src/Dlhis.Entity/Canteen/Enums/BalanceRecordSourceEnumType.cs b/Src/Dlhis.Entity/Canteen/Enums/BalanceRecordSourceEnumType.cs index 16f5a7fe..6d9659b0 100644 --- a/Src/Dlhis.Entity/Canteen/Enums/BalanceRecordSourceEnumType.cs +++ b/Src/Dlhis.Entity/Canteen/Enums/BalanceRecordSourceEnumType.cs @@ -84,4 +84,12 @@ public enum BalanceRecordSourceEnumType /// [Description("余额迁移")] BalanceMigration, +} + +public static class BalanceRecordSourceConstants +{ + public static BalanceRecordSourceEnumType[] IgnoreSources + { + get => new[] { BalanceRecordSourceEnumType.EMealVoucher, BalanceRecordSourceEnumType.Birthday }; + } } \ No newline at end of file diff --git a/Src/Dlhis.ScheduledTask/Jobs/MealSupplementHandlerJob.cs b/Src/Dlhis.ScheduledTask/Jobs/MealSupplementHandlerJob.cs index 8675f04e..11be103c 100644 --- a/Src/Dlhis.ScheduledTask/Jobs/MealSupplementHandlerJob.cs +++ b/Src/Dlhis.ScheduledTask/Jobs/MealSupplementHandlerJob.cs @@ -138,7 +138,7 @@ public class MealSupplementHandlerJob : BaseJob var balance = await DbContext.Queryable() .Where(x => x.UserCode == gainfo.Code) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid) - .Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) + .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source)) .SumAsync(x => x.Amount); var version = await DbContext.Queryable()