using WcsMain.ApiServe.Controllers.Dto.WcsDto.Menu; using WcsMain.Common; using WcsMain.DataBase.TableEntity; using WcsMain.WcsAttribute.AutoFacAttribute; namespace WcsMain.DataBase.Dao; /// /// 菜单表的操作 /// [Component] public class AppMenuDao { /// /// 查询所有数据 /// /// public List? Query() => Query(new AppMenu()); /// /// 查询数据 /// /// /// public List? Query(AppMenu queryEntity) { try { var sqlFuc = CommonTool.DbServe.Queryable() .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; } } /// /// 根据主键更新数据 /// /// /// public int Update(AppMenu updateEntity) { try { var sqlFuc = CommonTool.DbServe.Updateable(updateEntity) .IgnoreColumns(ignoreAllNullColumns: true); return sqlFuc.ExecuteCommand(); } catch (Exception ex) { _ = ex; return 0; } } /// /// 插入一些数据 /// /// /// public int Insert(params AppMenu[] menus) { try { var sqlFuc = CommonTool.DbServe.Insertable(menus); return sqlFuc.ExecuteCommand(); } catch (Exception ex) { _ = ex; return 0; } } /*--------------------------业务方法---------------------------------------*/ /// /// 根据用户组查找菜单 /// /// /// public List? 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(sql); return [.. sqlFuc]; } catch (Exception ex) { _ = ex; return default; } } /// /// 返回分页查询数据 /// /// /// public (List quertResult, int totalRows) SelectPage(GetMenuWithPageRequest request) { try { int totalRows = 0; var sqlFuc = CommonTool.DbServe.Queryable() .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; } } }