SysMenuService.java 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package com.caimei.service.sys;
  2. import com.caimei.model.ResponseJson;
  3. import com.caimei.model.po.SysMenu;
  4. import com.caimei.model.po.SysMenuTree;
  5. import com.caimei.model.po.SysPermission;
  6. import com.github.pagehelper.PageInfo;
  7. import java.util.List;
  8. import java.util.Set;
  9. /**
  10. * Description
  11. *
  12. * @author : Charles
  13. * @date : 2022/1/6
  14. */
  15. public interface SysMenuService {
  16. /**
  17. * 获取菜单列表
  18. * @param authUserId
  19. * @param parentId 父级菜单Id
  20. * @param menuType 菜单类型:1管理员菜单,2供应商菜单
  21. * @param status 状态:0启用,1停用
  22. * @param pageNum 页码
  23. * @param pageSize 每页大小
  24. */
  25. ResponseJson<PageInfo<SysMenu>> getMenuList(Integer authUserId, Integer parentId, Integer menuType, Integer status, int pageNum, int pageSize);
  26. /**
  27. * 获取所有启用的菜单列表(树状结构返回)
  28. */
  29. ResponseJson<List<SysMenuTree>> getMenuTree(Integer menuType);
  30. /**
  31. * 根据ID获取菜单
  32. */
  33. ResponseJson<SysMenu> getMenu(Integer id);
  34. /**
  35. * 根据ID更新菜单
  36. */
  37. ResponseJson<Void> updateMenu(Integer id, SysMenu menu);
  38. /**
  39. * 根据ID(可选择的)更新菜单字段
  40. */
  41. ResponseJson<Void> updateMenuSelective(Integer id, SysMenu menu);
  42. /**
  43. * 添加菜单
  44. */
  45. ResponseJson<Void> addMenu(SysMenu menu);
  46. /**
  47. * 根据ID删除菜单
  48. */
  49. ResponseJson<Void> deleteMenu(Integer id);
  50. ResponseJson<Void> saveVipMenu(SysMenu menu, List<SysPermission> permissionList);
  51. /**
  52. * 获取母菜单及子菜单所有基础菜单
  53. */
  54. ResponseJson<Void> getAllBaseMenuIds(SysMenu menu, Set<Integer> menuIdSet, Set<Integer> permissionIdSet);
  55. ResponseJson<Void> getAllVipMenuIds(SysMenu menu, Set<Integer> menuIdSet, Set<Integer> permissionIdSet);
  56. }