140 lines
4.2 KiB
C#
140 lines
4.2 KiB
C#
using WcsMain.ApiServe.Dto.WcsDto.Menu;
|
|
using WcsMain.Common;
|
|
using WcsMain.DataBase.TableEntity;
|
|
using WcsMain.Constant.WcsAttribute.AutoFacAttribute;
|
|
|
|
namespace WcsMain.DataBase.Dao;
|
|
|
|
/// <summary>
|
|
/// 菜单表的操作
|
|
/// </summary>
|
|
[Component]
|
|
public class AppMenuDao
|
|
{
|
|
|
|
/// <summary>
|
|
/// 查询所有数据
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public List<AppMenu>? Query() => Query(new AppMenu());
|
|
|
|
/// <summary>
|
|
/// 查询数据
|
|
/// </summary>
|
|
/// <param name="queryEntity"></param>
|
|
/// <returns></returns>
|
|
public List<AppMenu>? Query(AppMenu queryEntity)
|
|
{
|
|
try
|
|
{
|
|
var sqlFuc = CommonTool.DbServe.Queryable<AppMenu>()
|
|
.WhereIF(queryEntity.MainMenuIndex != default, w => w.MainMenuIndex == queryEntity.MainMenuIndex)
|
|
.WhereIF(queryEntity.MainMenuName != default, w => w.MainMenuName == queryEntity.MainMenuName)
|
|
.WhereIF(queryEntity.MainMenuIco != default, w => w.MainMenuIco == queryEntity.MainMenuIco)
|
|
.WhereIF(queryEntity.MinorMenuIndex != default, w => w.MinorMenuIndex == queryEntity.MinorMenuIndex)
|
|
.WhereIF(queryEntity.MinorMenuName != default, w => w.MinorMenuName == queryEntity.MinorMenuName)
|
|
.WhereIF(queryEntity.MinorMenuIco != default, w => w.MinorMenuIco == queryEntity.MinorMenuIco)
|
|
.WhereIF(queryEntity.MinorMenuRouter != default, w => w.MinorMenuRouter == queryEntity.MinorMenuRouter)
|
|
.WhereIF(queryEntity.MenuStatus != default, w => w.MenuStatus == queryEntity.MenuStatus)
|
|
.WhereIF(queryEntity.Remark != default, w => w.Remark == queryEntity.Remark)
|
|
.OrderBy(o => o.MainMenuIndex).OrderBy(o => o.MinorMenuIndex);
|
|
return sqlFuc.ToList();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_ = ex;
|
|
return default;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据主键更新数据
|
|
/// </summary>
|
|
/// <param name="updateEntity"></param>
|
|
/// <returns></returns>
|
|
public int Update(AppMenu updateEntity)
|
|
{
|
|
try
|
|
{
|
|
var sqlFuc = CommonTool.DbServe.Updateable(updateEntity)
|
|
.IgnoreColumns(ignoreAllNullColumns: true);
|
|
return sqlFuc.ExecuteCommand();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_ = ex;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 插入一些数据
|
|
/// </summary>
|
|
/// <param name="menus"></param>
|
|
/// <returns></returns>
|
|
public int Insert(params AppMenu[] menus)
|
|
{
|
|
try
|
|
{
|
|
var sqlFuc = CommonTool.DbServe.Insertable(menus);
|
|
return sqlFuc.ExecuteCommand();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_ = ex;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*--------------------------业务方法---------------------------------------*/
|
|
|
|
|
|
/// <summary>
|
|
/// 根据用户组查找菜单
|
|
/// </summary>
|
|
/// <param name="groupId"></param>
|
|
/// <returns></returns>
|
|
public List<AppMenu>? GetMenuWithGroupId(string groupId)
|
|
{
|
|
try
|
|
{
|
|
string sql = $"select * from tbl_app_menu where minor_menu_index in (select minor_menu_index from tbl_app_user_rule where group_id = '{groupId}') and menu_status = 1 order by minor_menu_index asc";
|
|
|
|
var sqlFuc = CommonTool.DbServe.Ado.SqlQuery<AppMenu>(sql);
|
|
return [.. sqlFuc];
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_ = ex;
|
|
return default;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 返回分页查询数据
|
|
/// </summary>
|
|
/// <param name="request"></param>
|
|
/// <returns></returns>
|
|
public (List<AppMenu> quertResult, int totalRows) SelectPage(GetMenuWithPageRequest request)
|
|
{
|
|
try
|
|
{
|
|
int totalRows = 0;
|
|
var sqlFuc = CommonTool.DbServe.Queryable<AppMenu>()
|
|
.OrderBy(o => new { o.MainMenuIndex, o.MinorMenuIndex });
|
|
var queryResult = sqlFuc.ToPageList(request.Page!.PageIndex, request.Page!.PageSize, ref totalRows);
|
|
return (queryResult, totalRows);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_ = ex;
|
|
return default;
|
|
}
|
|
}
|
|
|
|
|
|
} |