fix 返回统计金额

This commit is contained in:
2024-08-01 18:22:18 +08:00
parent d79051ac75
commit fc6bd54caa
4 changed files with 18 additions and 4 deletions

View File

@@ -28,7 +28,7 @@ public class BalanceSummaryController : ControllerBase
/// <param name="request"></param>
/// <returns></returns>
[HttpGet("analysis")]
public async Task<Pagination<BalanceRecordAnalysisResponse>> BalanceRecordAnalysisAsync([FromQuery] BalanceRecordAnalysisRequest request)
public async Task<BalanceRecordAnalysisSummaryResponse> BalanceRecordAnalysisAsync([FromQuery] BalanceRecordAnalysisRequest request)
{
return await _balanceSummaryService.BalanceRecordAnalysisAsync(request);
}

View File

@@ -1,5 +1,6 @@
using Dlhis.Entity.Canteen.Enums;
using Kurisu.AspNetCore.CustomClass;
using Kurisu.AspNetCore.DataAccess.Dto;
namespace Dlhis.Canteen.Order.Response;
@@ -20,3 +21,10 @@ public class BalanceRecordAnalysisResponse
/// </summary>
public int Total { get; set; }
}
public class BalanceRecordAnalysisSummaryResponse
{
public decimal Amount { get; set; }
public Pagination<BalanceRecordAnalysisResponse> Pagination { get; set; }
}

View File

@@ -6,7 +6,7 @@ namespace Dlhis.Canteen.Order.Services;
public interface IBalanceSummaryService : IScopeDependency
{
Task<Pagination<BalanceRecordAnalysisResponse>> BalanceRecordAnalysisAsync(BalanceRecordAnalysisRequest request);
Task<BalanceRecordAnalysisSummaryResponse> BalanceRecordAnalysisAsync(BalanceRecordAnalysisRequest request);
Task<Pagination<BalanceRecordAnalysisByCostResponse>> BalanceRecordAnalysisByCostIdAsync();
}

View File

@@ -18,7 +18,7 @@ public class BalanceSummaryService : IBalanceSummaryService
_dbContext = dbContext;
}
public async Task<Pagination<BalanceRecordAnalysisResponse>> BalanceRecordAnalysisAsync(BalanceRecordAnalysisRequest request)
public async Task<BalanceRecordAnalysisSummaryResponse> BalanceRecordAnalysisAsync(BalanceRecordAnalysisRequest request)
{
var list = await _dbContext.Queryable<BalanceRecordEntity>()
.WhereIF(request.SearchDateTimePeriod.HasValue(),
@@ -27,6 +27,8 @@ public class BalanceSummaryService : IBalanceSummaryService
.Where(record => record.Type == BalanceRecordTypeEnumType.Out && record.Status == BalanceRecordStatusEnumType.Valid)
.ToListAsync();
var sum = list.Sum(x => Math.Abs(x.Amount));
var shifts = Enum.GetValues<ShiftEnumType>().ToList();
var page = list.GroupBy(record => record.CostDate.Date).Select(grp =>
@@ -46,7 +48,11 @@ public class BalanceSummaryService : IBalanceSummaryService
};
}).OrderByDescending(x => x.Date).ToPage(request);
return page;
return new BalanceRecordAnalysisSummaryResponse
{
Amount = sum,
Pagination = page
};
}