更新菜单Top

This commit is contained in:
lzw
2021-10-16 23:17:32 +08:00
parent b77b91912b
commit cdd9e8f45b
5 changed files with 46 additions and 2 deletions

View File

@@ -26,7 +26,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
[HttpGet]
public async Task<Result> GetMenu()
{
return Result.Success().SetData(await _menuService.GetMenuMouldByMenu( new menu()));
return Result.Success().SetData(await _menuService.GetTopMenu());
}
/// <summary>
@@ -62,6 +62,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
[HttpPost]
public async Task<Result> AddMenu(menu _menu)
{
_menu.is_top = (short)Common.Enum.TopFlagEnum.Top;
await _menuService.AddAsync(_menu);
return Result.Success();
}

View File

@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Yi.Framework.Common.Enum
{
public enum TopFlagEnum
{
Children=0,
Top=1
}
}

View File

@@ -10,6 +10,10 @@ namespace Yi.Framework.Interface
public interface IMenuService:IBaseService<menu>
{
Task<bool> DelListByUpdateAsync(List<int> _ids);
/// <summary>
/// 获取所有菜单
/// </summary>
/// <returns></returns>
Task<IEnumerable<menu>> GetAllEntitiesTrueAsync();
/// <summary>
@@ -46,5 +50,15 @@ namespace Yi.Framework.Interface
/// <param name="_menu"></param>
/// <returns></returns>
Task<menu> AddChildrenMenu(menu _menu, menu _children);
/// <summary>
/// 获取根目录菜单
/// </summary>
/// <returns></returns>
Task<List<menu>> GetTopMenu();
/// <summary>
/// 获取子菜单
/// </summary>
/// <returns></returns>
Task<List<menu>> GetChildrenMenu();
}
}

View File

@@ -16,6 +16,7 @@ namespace Yi.Framework.Service
public async Task<menu> AddChildrenMenu(menu _menu, menu _children)
{
var menu_data = await _Db.Set<menu>().Include(u => u.children).Where(u => u.id == _menu.id).FirstOrDefaultAsync();
_children.is_top = (short)Common.Enum.TopFlagEnum.Children;
menu_data.children.Add(_children);
await UpdateAsync(menu_data);
return menu_data;
@@ -30,7 +31,7 @@ namespace Yi.Framework.Service
public async Task<IEnumerable<menu>> GetAllEntitiesTrueAsync()
{
return await GetEntitiesAsync(u => u.is_delete == (short)Common.Enum.DelFlagEnum.Normal);
return await GetEntitiesAsync(u=> u.is_delete == (short)Common.Enum.DelFlagEnum.Normal);
}
public async Task<List<menu>> GetChildrenByMenu(menu _menu)
@@ -40,6 +41,13 @@ namespace Yi.Framework.Service
return childrenList;
}
public async Task<List<menu>> GetChildrenMenu()
{
return await _Db.Set<menu>().Include(u => u.children)
.Where(u => u.is_delete == (short)Common.Enum.DelFlagEnum.Normal&& u.is_top == (short)Common.Enum.TopFlagEnum.Children )
.ToListAsync();
}
public async Task<menu> GetMenuMouldByMenu(menu _menu)
{
var menu_data = await _Db.Set<menu>().Include(u => u.children).Include(u=>u.mould).Where(u=>u.id==_menu.id).FirstOrDefaultAsync();
@@ -53,6 +61,13 @@ namespace Yi.Framework.Service
return menu_data.mould;
}
public async Task<List<menu>> GetTopMenu()
{
return await _Db.Set<menu>().Include(u => u.children)
.Where(u => u.is_delete == (short)Common.Enum.DelFlagEnum.Normal && u.is_top == (short)Common.Enum.TopFlagEnum.Top)
.ToListAsync();
}
public async Task<bool> SetMouldByMenu(int mouldId, int menuId)
{
var menu_data = await GetEntity(u => u.id == menuId);