diff --git a/Src/Dlhis.Canteen/Order/Request/OrderBookingPageRequest.cs b/Src/Dlhis.Canteen/Order/Request/OrderBookingPageRequest.cs
index 3dd0fc6d..24cab90b 100644
--- a/Src/Dlhis.Canteen/Order/Request/OrderBookingPageRequest.cs
+++ b/Src/Dlhis.Canteen/Order/Request/OrderBookingPageRequest.cs
@@ -1,8 +1,14 @@
-using Kurisu.Core.DataAccess.Dto;
+using System.ComponentModel.DataAnnotations;
+using Dlhis.Entity.Canteen.Enums;
+using Kurisu.Core.DataAccess.Dto;
namespace Dlhis.Canteen.Order.Request;
public class OrderBookingPageRequest : PageDto
{
-
+ ///
+ /// 订单状态 CanteenOrderStatusEnumType
+ ///
+ [EnumDataType(typeof(CanteenOrderStatusEnumType))]
+ public CanteenOrderStatusEnumType? OrderStatus { get; set; }
}
diff --git a/Src/Dlhis.Canteen/Order/Services/Implements/BookingOrderService.cs b/Src/Dlhis.Canteen/Order/Services/Implements/BookingOrderService.cs
index 92e36ffd..c8187ecc 100644
--- a/Src/Dlhis.Canteen/Order/Services/Implements/BookingOrderService.cs
+++ b/Src/Dlhis.Canteen/Order/Services/Implements/BookingOrderService.cs
@@ -179,6 +179,8 @@ public class BookingOrderService : BaseOrderService, IBookingOrderService
var page = await DbContext.Queryable()
.LeftJoin((x, ga) => x.UserNo == ga.No)
.Where(x => myCodes.Contains(x.BusinessPlaceCode))
+ .WhereIF(request.OrderStatus.HasValue, x => x.OrderStatus == request.OrderStatus)
+ .WhereIF(request.Search.IsPresent(), (x, ga) => x.UserCode == request.Search || ga.Name.Contains(request.Search))
.Select((x, ga) => new OrderBookingResponse
{
No = x.No,