diff --git a/Src/Dlhis.Basic/Dishes/Response/DishesCategoryResponse.cs b/Src/Dlhis.Basic/Dishes/Response/DishesCategoryResponse.cs
index fdaca520..024d2606 100644
--- a/Src/Dlhis.Basic/Dishes/Response/DishesCategoryResponse.cs
+++ b/Src/Dlhis.Basic/Dishes/Response/DishesCategoryResponse.cs
@@ -2,6 +2,11 @@
public class DishesCategoryTreeResponse
{
+ ///
+ /// 营业点code
+ ///
+ public Guid BusinessPlaceCode { get; set; }
+
public Guid? PCode { get; set; }
public Guid Code { get; set; }
diff --git a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesCategoryService.cs b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesCategoryService.cs
index 8fda1dc2..18f1f8e9 100644
--- a/Src/Dlhis.Basic/Dishes/Services/Implements/DishesCategoryService.cs
+++ b/Src/Dlhis.Basic/Dishes/Services/Implements/DishesCategoryService.cs
@@ -1,5 +1,6 @@
using Dlhis.Basic.Dishes.Request;
using Dlhis.Basic.Dishes.Response;
+using Dlhis.Entity.Basic.Entity;
using Dlhis.Entity.Canteen.Entities;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.SqlSugar.Services;
@@ -18,7 +19,17 @@ public class DishesCategoryService : IDishesCategoryService
public async Task> TreeAsync()
{
- var categories = await _dbContext.Queryable().Select().ToListAsync();
+ var categories = await _dbContext.Queryable()
+ .LeftJoin((x, bplace) => x.BusinessPlaceCode == bplace.Code)
+ .Select((x, bplace) => new DishesCategoryTreeResponse
+ {
+ BusinessPlaceCode = bplace.Code,
+ Code = x.Code,
+ Name = x.Name,
+ PCode = x.PCode,
+ })
+ .ToListAsync();
+
var tops = categories.Where(x => !x.PCode.HasValue).ToList();
tops.ForEach(x =>