From 805f0f83d1f71809d740c6f5f4ad7c4e64363d26 Mon Sep 17 00:00:00 2001 From: liguoyang Date: Mon, 18 Mar 2024 15:11:38 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E4=BC=98=E5=8C=96=E6=9F=A5=E8=AF=A2,?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AF=A6=E6=83=85=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controller/DishesMenusController.cs | 15 +++++- .../Dishes/Request/DishesPageRequest.cs | 5 +- .../Dishes/Response/DishesDetailResponse.cs | 51 +++++++++++++++++++ .../Dishes/Response/DishesMenuPageResponse.cs | 2 + .../Dishes/Services/IDishesService.cs | 4 +- .../Services/Implements/DishesMenuService.cs | 2 +- .../Services/Implements/DishesService.cs | 8 +++ 7 files changed, 82 insertions(+), 5 deletions(-) create mode 100644 Src/Dlhis.Basic/Dishes/Response/DishesDetailResponse.cs diff --git a/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs b/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs index d8dcb221..31c24e25 100644 --- a/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs +++ b/Src/Dlhis.Basic/Dishes/Controller/DishesMenusController.cs @@ -86,15 +86,26 @@ public class DishesMenusController : ControllerBase await _dishesService.SaveDishesAsync(request); } + /// + /// 根据id获取菜品详情 + /// + /// + /// + [HttpGet("dishes/detail/{id}")] + public async Task GetDishesDetailByIdAsync(long id) + { + return await _dishesService.GetDishesDetailByIdAsync(id); + } + /// /// 获取预定送餐配置 /// /// [HttpGet("setting")] - public async Task GetDishesMenusBookingSetting([FromQuery]GetDishesMenusBookingRequest request) + public async Task GetDishesMenusBookingSetting([FromQuery] GetDishesMenusBookingRequest request) { - return await _dishesService.GetDishesMenusBookingSetting(request); + return await _dishesService.GetDishesMenusBookingSetting(request); } } diff --git a/Src/Dlhis.Basic/Dishes/Request/DishesPageRequest.cs b/Src/Dlhis.Basic/Dishes/Request/DishesPageRequest.cs index 6d351367..eb9eac9a 100644 --- a/Src/Dlhis.Basic/Dishes/Request/DishesPageRequest.cs +++ b/Src/Dlhis.Basic/Dishes/Request/DishesPageRequest.cs @@ -4,5 +4,8 @@ namespace Dlhis.Basic.Dishes.Request; public class DishesPageRequest : PageDto { - + /// + /// 营业点 + /// + public List BusinessPlaceCodes { get; set; } } diff --git a/Src/Dlhis.Basic/Dishes/Response/DishesDetailResponse.cs b/Src/Dlhis.Basic/Dishes/Response/DishesDetailResponse.cs new file mode 100644 index 00000000..ce412352 --- /dev/null +++ b/Src/Dlhis.Basic/Dishes/Response/DishesDetailResponse.cs @@ -0,0 +1,51 @@ +namespace Dlhis.Basic.Dishes.Response; + +public class DishesDetailResponse +{ + public long Id { get; set; } + + /// + /// 分类 + /// + public Guid CategoryCode { get; set; } + + /// + /// 营业点 + /// + public Guid BusinessPlaceCode { get; set; } + + /// + /// 菜品编码 + /// + public string CustomCode { get; set; } + + /// + /// 菜品名称 + /// + public string Name { get; set; } + + /// + /// 描述 + /// + public string Description { get; set; } + + /// + /// 单价 + /// + public decimal Price { get; set; } + + /// + /// 单位 + /// + public List Units { get; set; } + + /// + /// 图片 + /// + public string ImageUrl { get; set; } + + /// + /// 是否启用 + /// + public bool Enable { get; set; } +} diff --git a/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs b/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs index 2db1f609..3ccf7192 100644 --- a/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs +++ b/Src/Dlhis.Basic/Dishes/Response/DishesMenuPageResponse.cs @@ -4,6 +4,8 @@ namespace Dlhis.Basic.Dishes.Response; public class DishesMenuPageResponse { + public long? Id { get; set; } + /// /// 菜单编码 /// diff --git a/Src/Dlhis.Basic/Dishes/Services/IDishesService.cs b/Src/Dlhis.Basic/Dishes/Services/IDishesService.cs index f4398736..6d6830a9 100644 --- a/Src/Dlhis.Basic/Dishes/Services/IDishesService.cs +++ b/Src/Dlhis.Basic/Dishes/Services/IDishesService.cs @@ -10,6 +10,8 @@ public interface IDishesService : IScopeDependency Task SaveDishesAsync(DishesSaveRequest request); + Task GetDishesDetailByIdAsync(long id); + Task GetDishesMenusBookingSetting(GetDishesMenusBookingRequest request); - + } diff --git a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs index a3904276..7a97da7d 100644 --- a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs +++ b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesMenuService.cs @@ -39,7 +39,7 @@ public class DishesMenuService : IDishesMenuService var res = await _businessPlacePermissionsService.GetMyAsync(); var myBps = res.dtos.Select(x => x.Code).ToList(); - myBps.Contains(request.BusinessPlaceCode).ThrowIfFalse("当前经营营业点,无法保存菜单"); + myBps.Contains(request.BusinessPlaceCode).ThrowIfFalse("非经营营业点,无法保存菜单"); var entities = request.Items.SelectMany(item => { diff --git a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesService.cs b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesService.cs index 7a7245ce..51be49b2 100644 --- a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesService.cs +++ b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesService.cs @@ -30,6 +30,7 @@ public class DishesService : IDishesService return await _dbContext.Queryable() .LeftJoin((x, category) => x.CategoryCode == category.Code) .WhereIF(request.Search.IsPresent(), x => x.CustomCode == request.Search || x.Name.Contains(request.Search)) + .WhereIF(request.BusinessPlaceCodes.IsPresent(), x => request.BusinessPlaceCodes.Contains(x.BusinessPlaceCode)) .OrderBy(x => x.CreateTime, SqlSugar.OrderByType.Desc) .Select((x, category) => new DishesResponse { @@ -103,4 +104,11 @@ public class DishesService : IDishesService } + public async Task GetDishesDetailByIdAsync(long id) + { + return await _dbContext.Queryable() + .Where(x => x.Id == id) + .Select() + .SingleAsync(); + } }