package com.whyc.service;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.whyc.dto.Response;
|
import com.whyc.mapper.MenuMapper;
|
import com.whyc.mapper.RoleMenuMapper;
|
import com.whyc.pojo.Menu;
|
import com.whyc.pojo.RoleMenu;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.List;
|
|
/**
|
* 角色-菜单
|
*/
|
@Service
|
public class RoleMenuService {
|
|
@Resource
|
private RoleMenuMapper mapper;
|
|
@Resource
|
private MenuMapper menuMapper;
|
|
public List<Menu> getUserMenu(Integer id) {
|
return mapper.getUserMenu(id);
|
}
|
|
public List<Menu> getAllMenus(){
|
List<Menu> menus = menuMapper.selectList(null);
|
return menus;
|
}
|
|
public List<Menu> getRoleMenu(Integer roleId){
|
List<Menu> menus = menuMapper.selectList(null);
|
QueryWrapper<RoleMenu> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("role_id",roleId);
|
List<RoleMenu> roleMenus = mapper.selectList(queryWrapper);
|
for (RoleMenu roleMenu:roleMenus) {
|
for (Menu menu:menus) {
|
if (roleMenu.getMenuId().equals(menu.getId())){
|
menu.setSelected(true);
|
break;
|
}
|
}
|
}
|
return menus;
|
}
|
|
public void updateRoleMenu(int roleId,List<Menu> menus){
|
QueryWrapper<RoleMenu> queryWrapper = new QueryWrapper<RoleMenu>().eq("role_id",roleId);
|
mapper.delete(queryWrapper);
|
for (Menu menu:menus) {
|
if(menu.isSelected()){
|
RoleMenu roleMenu = new RoleMenu();
|
roleMenu.setMenuId(menu.getId());
|
roleMenu.setRoleId(roleId);
|
mapper.insert(roleMenu);
|
}
|
}
|
}
|
|
|
|
}
|