package com.cpop.oam.business.service;

import com.cpop.oam.business.bo.LoginForm;
import com.cpop.oam.business.vo.loginInfo.SysStaffLoginInfo;
import com.cpop.oam.business.vo.LoginUserInfoVo;
import com.cpop.oam.business.vo.MenuRouteVo;

import java.util.List;
import java.util.Set;

/**
 * 系统登陆
 * @author Lost
 */
public interface LoginService {

    /**
     * 系统登录
     * @author DB
     * @since 2024/4/24
     * @param loginForm 登录表单
     * @return SysStaffLoginInfo
     */
    SysStaffLoginInfo login(LoginForm loginForm);

    /**
     * 获取登录用户详情
     *
     * @return 系统用户登陆信息
     */
    LoginUserInfoVo getUserInfo();

    /**
     * 获取权限码
     */
    Set<String> getPermCode();

    /**
     * @Description: 获取菜单列表
     * @return: List<SysMenuRouteVo>
     * @Author: DB
     * @Date: 2023/5/11 9:16
     **/
    List<MenuRouteVo> getSysMenuList();


}
