package com.yfd.platform.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yfd.platform.system.domain.SysRole;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 系统角色 服务类
 * </p>
 *
 * @author zhengsl
 * @since 2021-12-15
 */
public interface ISysRoleService extends IService<SysRole> {

    /***********************************
     * 用途说明：新增角色
     * 参数说明
     * sysRole         新增角色信息
     * 返回值说明:  是否新增成功
     ***********************************/
    boolean addRole(SysRole sysRole);

    /***********************************
     * 用途说明：删除角色用户
     * 参数说明
     * id       系统角色用户对照表id
     * 返回值说明:  是否新增成功
     ***********************************/

    boolean deleteRoleUsers(String roleid, String urserids);

    /***********************************
     * 用途说明：根据id删除角色
     * 参数说明
     *id        角色id
     * 返回值说明:  是否删除成功
     ***********************************/
    void deleteById(String id);

    /***********************************
     * 用途说明：查询已分配的用户
     * 参数说明
     *orgid         所属组织
     *username      用户名称
     *status        状态
     *level         角色级别
     * rolename     角色名称
     * isvaild      角色是否有效
     * 返回值说明:  系统用户角色数据集合
     ***********************************/
    List<Map> listRoleUsers(String orgid, String username, String status, String level, String rolename, String isvaild);


    /***********************************
     * 用途说明：角色分配权限
     * 参数说明
     * id          角色id
     * menuIds    权限id字符串
     * 返回值说明:  是否分配成功
     ***********************************/
    boolean setMenuById(String id, String menuIds);

    List<String> getRoleUsers(String id);

}
