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)