package com.mes.md.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.toolkit.JoinWrappers; import com.mes.md.entity.Account; import com.mes.md.entity.Role; import com.mes.md.entity.Menu; import com.mes.md.entity.Page; import com.mes.md.entity.RoleMenu; import com.mes.md.mapper.RoleMenuMapper; import com.mes.md.service.RoleMenuService; import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; /** *

* 角色权限表 服务实现类 *

* * @author yanzhixin * @since 2024-09-05 */ @Service public class RoleMenuServiceImpl extends MPJBaseServiceImpl implements RoleMenuService { /** * 查询所有角色的权限 * @return */ @Override public List> findRoleMenusAll(){ return baseMapper.selectJoinMaps(JoinWrappers.lambda(RoleMenu.class) .selectAll() .selectAs(Role::getRoleName,"role_name") .selectAs(Menu::getMenuName,"menu_name") .selectAs(Page::getPageName,"page_name") .leftJoin(Role.class, on -> on.eq(Role::getId, RoleMenu::getRoleId)) .leftJoin(Menu.class, on -> on.eq(Menu::getId, RoleMenu::getMenuId)) .leftJoin(Page.class, on -> on.eq(Page::getId, RoleMenu::getPageId)) .orderByAsc(RoleMenu::getRoleId) .orderByAsc(RoleMenu::getId)); } /** * 查询某角色的某条权限 * @return */ @Override public List> findRoleMenus(RoleMenu roleMenu){ return baseMapper.selectJoinMaps(JoinWrappers.lambda(RoleMenu.class) .selectAll() .selectAs(Role::getRoleName,"role_name") .selectAs(Menu::getMenuName,"menu_name") .selectAs(Page::getPageName,"page_name") .leftJoin(Role.class, on -> on.eq(Role::getId, RoleMenu::getRoleId)) .leftJoin(Menu.class, on -> on.eq(Menu::getId, RoleMenu::getMenuId)) .leftJoin(Page.class, on -> on.eq(Page::getId, RoleMenu::getPageId)) .eq(RoleMenu::getId,roleMenu.getId()) .orderByAsc(RoleMenu::getRoleId) .orderByAsc(RoleMenu::getId)); } /** * 添加角色权限 * @return */ @Override public int addRoleMenu(RoleMenu roleMenu){ return baseMapper.insert(roleMenu); } /** * 修改角色权限 * @return */ @Override public int updateRoleMenu(RoleMenu roleMenu){ return baseMapper.updateById(roleMenu); } /** * 删除角色权限 * @return */ @Override public int deleteRoleMenu(RoleMenu roleMenu){ return baseMapper.deleteById(roleMenu); } }