package com.sptg.permissions.biz.service;

import com.sptg.permissions.api.dto.RoleDto;
import com.sptg.permissions.api.entity.RoleMenu;

import java.io.Serializable;
import java.util.List;

/**
 * title: RoleMenuServiceInterface
 * package: com.sptg.permissions.biz.security
 * description: 角色菜单关联-服务层接口
 *
 *                  
 *                
 */
public interface RoleMenuServiceInterface {

    /**
     * 功能描述: 根据角色Id获取与菜单的关联信息
     * @param roleId 角色Id
     * @return List<RoleMenu>
     *                  
     *                       
     */
    List<RoleMenu> selectListByRoleId(Serializable roleId);

    /**
     * 功能描述: 创建角色与菜单的关联
     * @param roleMenu 角色与菜单的关联关系
     * @return boolean
     *                  
     * date:  2018/11/3 17:58
     */
    boolean insert(RoleMenu roleMenu);

    /**
     * 功能描述: 批量创建角色与菜单的关联
     * @param dto 角色信息
     *                  
     *                       
     */
    void insertBatch(RoleDto dto);

    /**
     * 功能描述: 修改角色与菜单的关联
     * @param dto 角色信息
     *                  
     *                       
     */
    void updateRoleMenu(RoleDto dto);

    /**
     * 功能描述: 根据角色Id删除所有的关联
     * @param roleId 角色Id
     *                  
     *                       
     */
    void deleteByRoleId(Long roleId);
}
