diff --git a/Src/Dlhis.Basic.Api/IDisheMenuApi.cs b/Src/Dlhis.Basic.Api/IDisheMenuApi.cs
index 04482e6a..96b649da 100644
--- a/Src/Dlhis.Basic.Api/IDisheMenuApi.cs
+++ b/Src/Dlhis.Basic.Api/IDisheMenuApi.cs
@@ -16,6 +16,6 @@ public interface IDisheMenuApi
///
///
[Auth]
- [Get("/api/dishesMenus/detail")]
+ [Get("/api/dishesMenus/checkdetail")]
Task> GetBookingDishesDetailAsync(DateTime date, Guid businessPlaceCode, int shiftType, string dishesCode);
}
\ No newline at end of file
diff --git a/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs b/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs
index 71137d10..b1eb6e49 100644
--- a/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs
+++ b/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs
@@ -7,6 +7,7 @@ using Kurisu.AspNetCore.DataAccess.SqlSugar.Aop;
using Kurisu.Core.DataAccess.Dto;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
+using Org.BouncyCastle.Asn1.Ocsp;
namespace Dlhis.Basic.Dishes.Controller;
@@ -38,6 +39,19 @@ public class DishesMenusController : ControllerBase
return await _dishesMenuService.GetDishesMenuPageAsync(request);
}
+ ///
+ /// 菜单详情
+ ///
+ ///
+ ///
+ ///
+ ///
+ [HttpGet("detail")]
+ public async Task GetDishesMenuDetailAsync(Guid businessPlaceCode, string customCode, DateTime date)
+ {
+ return await _dishesMenuService.GetDishesMenuDetailAsync(businessPlaceCode, customCode, date);
+ }
+
///
/// 菜单保存/更改
///
@@ -51,14 +65,14 @@ public class DishesMenusController : ControllerBase
}
///
- /// 菜单信息明细
+ /// 检查明细
///
///
///
///
///
///
- [HttpGet("detail")]
+ [HttpGet("checkdetail")]
public async Task GetBookingDishesDetailAsync(DateTime date, Guid businessPlaceCode, ShiftEnumType shiftType, string dishesCode)
{
return await _dishesMenuService.GetBookingDishesDetailAsync(date, businessPlaceCode, shiftType, dishesCode);
diff --git a/Src/Dlhis.Basic/Dishes/Request/DisheMenuPageRequest.cs b/Src/Dlhis.Basic/Dishes/Request/DisheMenuPageRequest.cs
index 4494f433..9050763f 100644
--- a/Src/Dlhis.Basic/Dishes/Request/DisheMenuPageRequest.cs
+++ b/Src/Dlhis.Basic/Dishes/Request/DisheMenuPageRequest.cs
@@ -1,5 +1,4 @@
-using Dlhis.Entity.Canteen.Enums;
-using Kurisu.Core.DataAccess.Dto;
+using Kurisu.Core.DataAccess.Dto;
namespace Dlhis.Basic.Dishes.Request;
@@ -9,14 +8,4 @@ public class DisheMenuPageRequest : PageDto
/// 营业点code
///
public Guid BusinessPlaceCode { get; set; }
-
- ///
- /// 餐次
- ///
- public List ShiftTypes { get; set; }
-
- ///
- /// 分类
- ///
- public Guid? CategoryCode { get; set; }
}
diff --git a/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs b/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs
index 3ccf7192..c59836cb 100644
--- a/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs
+++ b/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs
@@ -1,11 +1,7 @@
-using Dlhis.Entity.Canteen.Enums;
-
-namespace Dlhis.Basic.Dishes.Response;
+namespace Dlhis.Basic.Dishes.Response;
public class DishesMenuPageResponse
{
- public long? Id { get; set; }
-
///
/// 菜单编码
///
@@ -20,32 +16,4 @@ public class DishesMenuPageResponse
/// 营业日期
///
public DateTime Date { get; set; }
-
-
- ///
- /// 餐次
- ///
- public ShiftEnumType ShiftType { get; set; }
-
-
- ///
- /// 菜品编码
- ///
- public string DishesCode { get; set; }
-
- ///
- /// 剩余数量
- ///
- public int Number { get; set; }
-
-
- ///
- /// 单价
- ///
- public decimal? Price { get; set; }
-
- ///
- /// 是否启用
- ///
- public bool Enable { get; set; }
}
diff --git a/Src/Dlhis.Basic/Dishes/Services/IDishesMenuService.cs b/Src/Dlhis.Basic/Dishes/Services/IDishesMenuService.cs
index 87c38925..00984ab5 100644
--- a/Src/Dlhis.Basic/Dishes/Services/IDishesMenuService.cs
+++ b/Src/Dlhis.Basic/Dishes/Services/IDishesMenuService.cs
@@ -10,6 +10,8 @@ public interface IDishesMenuService : IScopeDependency
{
Task> GetDishesMenuPageAsync(DisheMenuPageRequest request);
+ Task GetDishesMenuDetailAsync(Guid businessPlaceCode, string customCode, DateTime date);
+
Task SaveDishesMenuAsync(DishesMenuSaveRequest request);
Task GetBookingDishesDetailAsync(DateTime date, Guid businessPlaceCode, ShiftEnumType shiftType, string dishesCode);
diff --git a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs
index 69ef56fb..c93fd62a 100644
--- a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs
+++ b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs
@@ -9,6 +9,7 @@ using Dlhis.Basic.Dishes.Request;
using Dlhis.Basic.Dishes.Response;
using Dlhis.Basic.BusinessPlace.Services;
using Dlhis.Basic.Dishes.Dto;
+using Org.BouncyCastle.Asn1.Ocsp;
namespace Dlhis.Basic.Dishes.Services.Implements;
@@ -26,10 +27,53 @@ public class DishesMenuService : IDishesMenuService
public async Task> GetDishesMenuPageAsync(DisheMenuPageRequest request)
{
return await _dbContext.Queryable()
- .Select()
+ .Where(x => x.BusinessPlaceCode == request.BusinessPlaceCode)
+ .GroupBy(x => new { x.BusinessPlaceCode, x.CustomCode, x.Date })
+ .Select(x => new DishesMenuPageResponse
+ {
+ BusinessPlaceCode = x.BusinessPlaceCode,
+ CustomCode = x.CustomCode,
+ Date = x.Date,
+ })
.ToPageListAsync(request);
}
+ public async Task GetDishesMenuDetailAsync(Guid businessPlaceCode, string customCode, DateTime date)
+ {
+ var data = await _dbContext.Queryable()
+ .Where(x => x.BusinessPlaceCode == businessPlaceCode)
+ .ToListAsync();
+
+ return new DishesMenuSaveRequest
+ {
+ BusinessPlaceCode = businessPlaceCode,
+ Items = new List
+ {
+ new()
+ {
+ CustomCode = customCode,
+ Date = date,
+ ShiftTypes = data.GroupBy(x => x.ShiftType).Select(item =>
+ {
+ var shiftType = item.Key;
+
+ return new DishesMenuShiftTypeSaveRequest
+ {
+ ShiftType = shiftType,
+ Dishes = item.Select(x => new MenuDishesSaveRequest
+ {
+ DishesCode = x.DishesCode,
+ Number = x.Number,
+ Price = x.Price,
+ }).ToList()
+ };
+
+ }).ToList()
+ }
+ }
+ };
+ }
+
public async Task SaveDishesMenuAsync(DishesMenuSaveRequest request)
{
//检验数据
@@ -68,7 +112,6 @@ public class DishesMenuService : IDishesMenuService
Type = CanteenApplicaitonTypeEnumType.Booking,
Version = 0,
- Enable = true,
};
});
});
diff --git a/Src/Dlhis.Entity/Canteen/Entities/DishesMenuEntity.cs b/Src/Dlhis.Entity/Canteen/Entities/DishesMenuEntity.cs
index 928c9040..52dffbc0 100644
--- a/Src/Dlhis.Entity/Canteen/Entities/DishesMenuEntity.cs
+++ b/Src/Dlhis.Entity/Canteen/Entities/DishesMenuEntity.cs
@@ -54,25 +54,18 @@ public class DishesMenuEntity : SugarBaseEntity, ITenantId, IVersion
///
public int Number { get; set; }
-
///
/// 单价
///
public decimal? Price { get; set; }
- ///
- /// 是否启用
- ///
- [SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否启用")]
- public bool Enable { get; set; }
-
-
- public string TenantId { get; set; }
-
///
/// 并发控制
///
public int Version { get; set; }
+
+
+ public string TenantId { get; set; }
}