package com.zhentao.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhentao.entity.Role;
import com.zhentao.entity.Permission;

import java.util.List;

/**
 * 角色服务接口
 */
public interface RoleService {
    
    /**
     * 创建角色
     */
    Role createRole(Role role);
    
    /**
     * 分页查询角色列表
     */
    Page<Role> getRoleList(Integer pageNum, Integer pageSize, String keyword);
    
    /**
     * 根据ID查询角色
     */
    Role getRoleById(Integer roleId);
    
    /**
     * 更新角色信息
     */
    boolean updateRole(Role role);
    
    /**
     * 删除角色
     */
    boolean deleteRole(Integer roleId);
    
    /**
     * 为角色分配权限
     */
    boolean assignPermissions(Integer roleId, List<Integer> permissionIds);
    
    /**
     * 根据角色ID查询权限列表
     */
    List<Permission> getRolePermissions(Integer roleId);
}

