package com.lantone.security.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lantone.security.dto.GetMenusTreeDTO;
import com.lantone.security.dto.GetUserShowTreeDTO;
import com.lantone.security.dto.UserMenuResourceTreeDTO;
import com.lantone.security.vo.GetMenusTreeVo;
import com.lantone.security.entity.RoleSoftwareMenu;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 表名：sys_role_software_menu Mapper接口
 * </p>
 */
public interface RoleSoftwareMenuMapper extends BaseMapper<RoleSoftwareMenu> {
    /**
     * @param getMenusTreeVo
     * @Description普通用户获取对应系统的菜单列表
     * @Return java.util.List<com.lantone.security.dto.MenuDTO>
     */
    List<GetMenusTreeDTO> getMenus(@Param("roleSoftwareMenuVos") GetMenusTreeVo getMenusTreeVo);

    List<UserMenuResourceTreeDTO> getUserMenuResourceTree(@Param("roles") List<Long> roles,@Param("menuIds") List menuIds);

    List<UserMenuResourceTreeDTO> getMenuResourceRelation(@Param("loginRoles")List<Long> loginRoles,@Param("selectRoles") List<Long> selectRoles,@Param("menuIds") List menuIds);

    List<GetUserShowTreeDTO> getUserShowMemuTree(@Param("roleIds") List<Long> roleIds,@Param("menuIds") List menuIds,@Param("softwareId") Long softwareId);
}