diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs index 7348a454..b09670d2 100644 --- a/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs +++ b/Src/Dlhis.Canteen/Order/Services/Implements/BalanceService.cs @@ -131,8 +131,14 @@ public class BalanceService : IBalanceService CostDateTime = record.CostDateTime }).ToPageListAsync(request); + //消费总金额 + var sum = await _dbContext.Queryable() + .WhereIF(request.SearchDate.HasValue, record => record.CostDate >= start) + .WhereIF(request.SearchDate.HasValue, record => record.CostDate <= end) + .Where(record => record.TenantId == device.TenantId || (record.DeviceInfo == device.Code.ToString() || record.DeviceInfo == device.UniqueNo)) + .Where(record => record.Type == BalanceRecordTypeEnumType.Out && record.Status == BalanceRecordStatusEnumType.Valid) + .SumAsync(record => SqlFunc.Abs(SqlFunc.IsNull(record.Amount, 0))); - var sum = page.Data.Sum(x => Math.Abs(x.Amount)); page.Data.ForEach(x => x.Sum = sum); return page;