2025-05-22 13:06:49 +08:00
using WcsMain.ApiServe.Controllers.Dto.WcsDto.Menu ;
using WcsMain.Common ;
using WcsMain.DataBase.TableEntity ;
using WcsMain.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 ;
}
}
2024-05-14 16:30:56 +08:00
}