package com.xhkjedu.suser.mapper.system;

import com.xhkjedu.base.TkMapper;
import com.xhkjedu.suser.model.system.TRoleModule;
import com.xhkjedu.suser.vo.system.RoleModuleVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @ClassName RoleModuleMapper
 * Description 角色模块
 * Author WN
 * Date 2020/6/15 9:32
 **/
@Repository
public interface RoleModuleMapper extends TkMapper<TRoleModule> {

    /**
     *功能描述  获取角色下素有权限
     * @author WN
     * @date 2020/6/15
     * @param  * @param roleid
     * @return java.util.List<com.xhkjedu.suser.vo.system.RoleModuleVo>
     */
    List<RoleModuleVo> listRoleModules(@Param("roleid")Integer roleid);

    /**
     *功能描述  批量角色模块信息
     * @author WN
     * @date 2020/6/15
     * @param  * @param list
     * @return void
     */
    void saveBathRoleModule(@Param("list")List<TRoleModule> list);

    /**
     *功能描述 根据角色id删除角色模块关联信息
     * @author WN
     * @date 2020/6/15
     * @param  * @param roleid
     * @return void
     */
    void deleteByRoleid(@Param("roleid")Integer roleid);

    /**
     *功能描述 根据用户id获取用户拥有角色所关联的所有模块
     * @author WN
     * @date 2020/6/15
     * @param  * @param userid
     * @return java.util.List<com.xhkjedu.suser.vo.system.RoleModuleVo>
     */
    List<RoleModuleVo> listModulesByUserid(@Param("userid")Integer userid,@Param("belongcode")Integer belongcode);
}
