mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-11-04 04:08:43 +08:00 
			
		
		
		
	增加在线用户表
This commit is contained in:
		@@ -3,10 +3,10 @@ package cn.iocoder.dashboard.modules.system.controller.auth;
 | 
			
		||||
import cn.iocoder.dashboard.common.enums.CommonStatusEnum;
 | 
			
		||||
import cn.iocoder.dashboard.common.pojo.CommonResult;
 | 
			
		||||
import cn.iocoder.dashboard.framework.logger.operatelog.core.annotations.OperateLog;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthLoginReqVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthLoginRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthMenuRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthPermissionInfoRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthLoginReqVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthLoginRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthMenuRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthPermissionInfoRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.convert.auth.SysAuthConvert;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysMenuDO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo;
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo.auth;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo;
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo.auth;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo;
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo.auth;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo;
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo.auth;
 | 
			
		||||
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import io.swagger.annotations.ApiModelProperty;
 | 
			
		||||
@@ -0,0 +1,12 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.controller.auth.vo.session;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.dashboard.common.pojo.PageParam;
 | 
			
		||||
import io.swagger.annotations.ApiModel;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.EqualsAndHashCode;
 | 
			
		||||
 | 
			
		||||
@ApiModel("在线用户 Session 分页 Request VO")
 | 
			
		||||
@Data
 | 
			
		||||
@EqualsAndHashCode(callSuper = true)
 | 
			
		||||
public class SysUserSessionPageReqVO extends PageParam {
 | 
			
		||||
}
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.convert.auth;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.dashboard.framework.security.core.LoginUser;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthMenuRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.SysAuthPermissionInfoRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthMenuRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.auth.SysAuthPermissionInfoRespVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysMenuDO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.permission.SysRoleDO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO;
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,7 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.dal.mysql.dao.auth;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.auth.SysUserSessionDO;
 | 
			
		||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 | 
			
		||||
 | 
			
		||||
public interface SysUserOnlineMapper extends BaseMapper<SysUserSessionDO> {
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,38 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.auth;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.dashboard.framework.mybatis.core.dataobject.BaseDO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.user.SysUserDO;
 | 
			
		||||
import com.baomidou.mybatisplus.annotation.TableId;
 | 
			
		||||
import com.baomidou.mybatisplus.annotation.TableName;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.EqualsAndHashCode;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 在线用户表
 | 
			
		||||
 */
 | 
			
		||||
@TableName(value = "sys_user_session", autoResultMap = true)
 | 
			
		||||
@Data
 | 
			
		||||
@EqualsAndHashCode(callSuper = true)
 | 
			
		||||
public class SysUserSessionDO extends BaseDO {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 会话编号, 即 sessionId
 | 
			
		||||
     */
 | 
			
		||||
    @TableId
 | 
			
		||||
    private String id;
 | 
			
		||||
    /**
 | 
			
		||||
     * 用户编号
 | 
			
		||||
     *
 | 
			
		||||
     * 外键 {@link SysUserDO#getId()}
 | 
			
		||||
     */
 | 
			
		||||
    private Long userId;
 | 
			
		||||
    /**
 | 
			
		||||
     * 用户 IP
 | 
			
		||||
     */
 | 
			
		||||
    private String userIp;
 | 
			
		||||
    /**
 | 
			
		||||
     * 浏览器 UA
 | 
			
		||||
     */
 | 
			
		||||
    private String userAgent;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,40 @@
 | 
			
		||||
package cn.iocoder.dashboard.modules.system.service.auth;
 | 
			
		||||
 | 
			
		||||
import cn.iocoder.dashboard.common.pojo.PageResult;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.controller.auth.vo.session.SysUserSessionPageReqVO;
 | 
			
		||||
import cn.iocoder.dashboard.modules.system.dal.mysql.dataobject.auth.SysUserSessionDO;
 | 
			
		||||
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * 在线用户 Session Service 接口
 | 
			
		||||
 */
 | 
			
		||||
public interface SysUserOnlineService {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 创建在线用户 Session
 | 
			
		||||
     *
 | 
			
		||||
     * @param sessionId Session 编号
 | 
			
		||||
     * @param userId 用户编号
 | 
			
		||||
     * @param userIp 用户 IP
 | 
			
		||||
     * @param userAgent 用户 UA
 | 
			
		||||
     */
 | 
			
		||||
    void createUserOnline(String sessionId, Long userId, String userIp, String userAgent);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 更新在线用户 Session 的更新时间
 | 
			
		||||
     *
 | 
			
		||||
     * @param sessionId Session 编号
 | 
			
		||||
     * @param updateTime 更新时间
 | 
			
		||||
     */
 | 
			
		||||
    void updateUserOnlineUpdateTime(String sessionId, Date updateTime);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获得在线用户分页列表
 | 
			
		||||
     *
 | 
			
		||||
     * @param reqVO 分页条件
 | 
			
		||||
     * @return 份额与列表
 | 
			
		||||
     */
 | 
			
		||||
    PageResult<SysUserSessionDO> getUserSessionPage(SysUserSessionPageReqVO reqVO);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user