package org.xyzh.common.core.domain;

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

import org.xyzh.common.dto.sys.TbSysUserDTO;
import org.xyzh.common.dto.sys.TbSysUserRoleDTO;
import org.xyzh.common.dto.sys.TbSysUserInfoDTO;
import org.xyzh.common.dto.sys.TbSysDeptDTO;
import org.xyzh.common.dto.sys.TbSysPermissionDTO;
import org.xyzh.common.dto.sys.TbSysViewDTO;

import lombok.Data;

/**
 * @description    登录域
 * @filename    登录域
 * @author    yslg
 * @copyright yslg
 * @since 2025-11-02
 */
@Data
public class LoginDomain implements Serializable{
    private static final long serialVersionUID = 1L;

    private TbSysUserDTO user;

    private TbSysUserInfoDTO userInfo;

    private List<TbSysUserRoleDTO> userRoles;

    private List<TbSysDeptDTO> userDepts;

    private List<TbSysPermissionDTO> userPermissions;

    private List<TbSysViewDTO> userViews;

    private String token;

    private Date tokenExpireTime;

    private String loginTime;

    private String ipAddress;

    private String loginType;
}
