From 3ef330a6377c4431d8ee1f63f89d0240df8253c2 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Wed, 7 Aug 2024 09:55:36 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E9=A4=90=E8=A1=A5=E6=B1=87=E6=80=BB?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MealSupplementsRecordController.cs | 4 ++-- .../Response/MealSupplementRecordResponse.cs | 8 ++++++++ .../Services/IMealSupplementRecordService.cs | 4 ++-- .../Implements/MealSupplementRecordService.cs | 16 +++++++++++----- 4 files changed, 23 insertions(+), 9 deletions(-) diff --git a/Src/Dlhis.Canteen/MealSupplementRecord/Controller/MealSupplementsRecordController.cs b/Src/Dlhis.Canteen/MealSupplementRecord/Controller/MealSupplementsRecordController.cs index 4cedc4c1..e3cfad27 100644 --- a/Src/Dlhis.Canteen/MealSupplementRecord/Controller/MealSupplementsRecordController.cs +++ b/Src/Dlhis.Canteen/MealSupplementRecord/Controller/MealSupplementsRecordController.cs @@ -14,7 +14,7 @@ namespace Dlhis.Canteen.MealSupplementRecord.Controller; [Authorize] [Route("api/[controller]")] [ApiController] -public class MealSupplementsRecordController +public class MealSupplementsRecordController : ControllerBase { private readonly IMealSupplementRecordService _mealSupplementRecordService; @@ -29,7 +29,7 @@ public class MealSupplementsRecordController /// /// [HttpGet("page")] - public async Task> MealSupplementRecordPageAsync([FromQuery] MealSupplementRecordRequest request) + public async Task MealSupplementRecordPageAsync([FromQuery] MealSupplementRecordRequest request) { return await _mealSupplementRecordService.GetPageAsync(request); } diff --git a/Src/Dlhis.Canteen/MealSupplementRecord/Response/MealSupplementRecordResponse.cs b/Src/Dlhis.Canteen/MealSupplementRecord/Response/MealSupplementRecordResponse.cs index ac65fb76..86e0d236 100644 --- a/Src/Dlhis.Canteen/MealSupplementRecord/Response/MealSupplementRecordResponse.cs +++ b/Src/Dlhis.Canteen/MealSupplementRecord/Response/MealSupplementRecordResponse.cs @@ -1,10 +1,18 @@ using Dlhis.Entity.Basic.Enums; +using Kurisu.AspNetCore.DataAccess.Dto; using Kurisu.AspNetCore.Utils.Converters; using Kurisu.AspNetCore.Utils.Extensions; using Newtonsoft.Json; namespace Dlhis.Canteen.MealSupplementRecord.Response; +public class MealSupplementRecordSummaryResponse +{ + public decimal Amount { get; set; } + + public Pagination Pagination { get; set; } +} + public class MealSupplementRecordResponse { /// diff --git a/Src/Dlhis.Canteen/MealSupplementRecord/Services/IMealSupplementRecordService.cs b/Src/Dlhis.Canteen/MealSupplementRecord/Services/IMealSupplementRecordService.cs index 3a94c5d4..1485ab5c 100644 --- a/Src/Dlhis.Canteen/MealSupplementRecord/Services/IMealSupplementRecordService.cs +++ b/Src/Dlhis.Canteen/MealSupplementRecord/Services/IMealSupplementRecordService.cs @@ -6,9 +6,9 @@ namespace Dlhis.Canteen.MealSupplementRecord.Services; public interface IMealSupplementRecordService : IScopeDependency { - Task> GetPageAsync(MealSupplementRecordRequest request); + Task GetPageAsync(MealSupplementRecordRequest request); Task GetMyMealSupplementRecords(MealSupplementRecordMyRequest request); Task InitImportAsync(List requests); -} +} \ No newline at end of file diff --git a/Src/Dlhis.Canteen/MealSupplementRecord/Services/Implements/MealSupplementRecordService.cs b/Src/Dlhis.Canteen/MealSupplementRecord/Services/Implements/MealSupplementRecordService.cs index 3e6e677c..70e94176 100644 --- a/Src/Dlhis.Canteen/MealSupplementRecord/Services/Implements/MealSupplementRecordService.cs +++ b/Src/Dlhis.Canteen/MealSupplementRecord/Services/Implements/MealSupplementRecordService.cs @@ -6,7 +6,6 @@ using Dlhis.Entity.Canteen.Enums; using Dlhis.Sys.Api; using Kurisu.AspNetCore.Authentication.Abstractions; using Kurisu.AspNetCore.CustomClass; -using Kurisu.AspNetCore.DataAccess.Dto; using Kurisu.AspNetCore.DataAccess.SqlSugar.Extensions; using Kurisu.AspNetCore.DataAccess.SqlSugar.Services; using Kurisu.AspNetCore.Utils; @@ -28,9 +27,9 @@ public class MealSupplementRecordService : IMealSupplementRecordService _tenantApi = tenantApi; } - public async Task> GetPageAsync(MealSupplementRecordRequest request) + public async Task GetPageAsync(MealSupplementRecordRequest request) { - var page = await _dbContext.Queryable() + var queryable = _dbContext.Queryable() .LeftJoin((x, ga) => x.Code == ga.Code) .LeftJoin((x, ga, department) => ga.DepartmentNo == department.No) .WhereIF(request.Status.HasValue, x => x.Status == request.Status) @@ -40,7 +39,9 @@ public class MealSupplementRecordService : IMealSupplementRecordService .WhereIF(request.DepartmentNo.IsPresent(), (x, ga) => ga.DepartmentNo == request.DepartmentNo) .WhereIF(request.Werks.IsPresent(), (x, ga) => ga.Werks == request.Werks) .WhereIF(request.DateTimePeriod.HasValue(), x => x.Date >= request.DateTimePeriod.Start && x.Date <= request.DateTimePeriod.End) - .WhereIF(request.Search.IsPresent(), (x, ga) => x.Code == request.Search || ga.Name == request.Search) + .WhereIF(request.Search.IsPresent(), (x, ga) => x.Code == request.Search || ga.Name == request.Search); + + var page = await queryable .Select((x, ga, department) => new MealSupplementRecordResponse { Amount = x.Amount, @@ -74,10 +75,15 @@ public class MealSupplementRecordService : IMealSupplementRecordService } catch (Exception) { + //ignore } - return page; + return new MealSupplementRecordSummaryResponse + { + Amount = await queryable.SumAsync(x => x.Amount), + Pagination = page + }; } public async Task GetMyMealSupplementRecords(MealSupplementRecordMyRequest request)