fix 排除电子券和生日券统计处理

This commit is contained in:
2025-03-06 11:03:27 +08:00
parent 8e1208e80e
commit a64823e15b
5 changed files with 15 additions and 5 deletions

View File

@@ -54,7 +54,9 @@ public class SysDataService : ISysDataService
{ {
UserCode = x.Code, UserCode = x.Code,
Balance = SqlFunc.Subqueryable<BalanceRecordEntity>().Where(p => p.UserCode == x.Code) Balance = SqlFunc.Subqueryable<BalanceRecordEntity>().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) .Sum(p => p.Amount)
}) })
.ToListAsync(); .ToListAsync();

View File

@@ -103,7 +103,7 @@ public class BalanceRepository : IBalanceRepository
var balance = await _dbContext.Queryable<BalanceRecordEntity>() var balance = await _dbContext.Queryable<BalanceRecordEntity>()
.Where(x => x.UserCode == userCode) .Where(x => x.UserCode == userCode)
.Where(x => x.Status == BalanceRecordStatusEnumType.Valid) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid)
.Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source))
.SumAsync(x => x.Amount); .SumAsync(x => x.Amount);
var version = await _dbContext.Queryable<UserBalanceEntity>() var version = await _dbContext.Queryable<UserBalanceEntity>()

View File

@@ -346,7 +346,7 @@ public class BalanceService : IBalanceService
.LeftJoin<BusinessPlaceEntity>((record, ga, department, bPlace) => record.BusinessPlaceCode == bPlace.Code) .LeftJoin<BusinessPlaceEntity>((record, ga, department, bPlace) => record.BusinessPlaceCode == bPlace.Code)
.Where((record, ga) => record.UserCode == userCode && factories.Contains(record.TenantId)) .Where((record, ga) => record.UserCode == userCode && factories.Contains(record.TenantId))
.Where(record => record.Status == BalanceRecordStatusEnumType.Valid || record.Status == BalanceRecordStatusEnumType.Obsolute) .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.SearchDateTimePeriod.HasValue(), record => record.CostDate >= request.SearchDateTimePeriod.Start && record.CostDate <= request.SearchDateTimePeriod.End)
.WhereIF(request.ApplicationType.HasValue, record => record.ApplicationType == request.ApplicationType) .WhereIF(request.ApplicationType.HasValue, record => record.ApplicationType == request.ApplicationType)
.OrderBy(record => record.CostDateTime) .OrderBy(record => record.CostDateTime)
@@ -372,7 +372,7 @@ public class BalanceService : IBalanceService
.Where(x => x.UserCode == userCode && factories.Contains(x.TenantId)) .Where(x => x.UserCode == userCode && factories.Contains(x.TenantId))
.Where(x => x.CostDate >= monthStart && x.CostDate <= monthEnd) .Where(x => x.CostDate >= monthStart && x.CostDate <= monthEnd)
.Where(x => x.Status == BalanceRecordStatusEnumType.Valid) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid)
.Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source))
.SumAsync(x => x.Amount); .SumAsync(x => x.Amount);
return new BalanceRecordUserResultResponse return new BalanceRecordUserResultResponse

View File

@@ -84,4 +84,12 @@ public enum BalanceRecordSourceEnumType
/// </summary> /// </summary>
[Description("余额迁移")] [Description("余额迁移")]
BalanceMigration, BalanceMigration,
}
public static class BalanceRecordSourceConstants
{
public static BalanceRecordSourceEnumType[] IgnoreSources
{
get => new[] { BalanceRecordSourceEnumType.EMealVoucher, BalanceRecordSourceEnumType.Birthday };
}
} }

View File

@@ -138,7 +138,7 @@ public class MealSupplementHandlerJob : BaseJob
var balance = await DbContext.Queryable<BalanceRecordEntity>() var balance = await DbContext.Queryable<BalanceRecordEntity>()
.Where(x => x.UserCode == gainfo.Code) .Where(x => x.UserCode == gainfo.Code)
.Where(x => x.Status == BalanceRecordStatusEnumType.Valid) .Where(x => x.Status == BalanceRecordStatusEnumType.Valid)
.Where(x => x.Source != BalanceRecordSourceEnumType.EMealVoucher) .Where(x => !BalanceRecordSourceConstants.IgnoreSources.Contains(x.Source))
.SumAsync(x => x.Amount); .SumAsync(x => x.Amount);
var version = await DbContext.Queryable<UserBalanceEntity>() var version = await DbContext.Queryable<UserBalanceEntity>()