123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- package com.ruoyi.system.service.impl;
- import org.springframework.stereotype.Service;
- import com.ruoyi.common.core.domain.model.LoginUser;
- import com.ruoyi.common.utils.StringUtils;
- import com.ruoyi.system.domain.SysUserOnline;
- import com.ruoyi.system.service.ISysUserOnlineService;
- /**
- * 在线用户 服务层处理
- *
- * @author ruoyi
- */
- @Service
- public class SysUserOnlineServiceImpl implements ISysUserOnlineService
- {
- /**
- * 通过登录地址查询信息
- *
- * @param ipaddr 登录地址
- * @param user 用户信息
- * @return 在线用户信息
- */
- @Override
- public SysUserOnline selectOnlineByIpaddr(String ipaddr, LoginUser user)
- {
- if (StringUtils.equals(ipaddr, user.getIpaddr()))
- {
- return loginUserToUserOnline(user);
- }
- return null;
- }
- /**
- * 通过用户名称查询信息
- *
- * @param userName 用户名称
- * @param user 用户信息
- * @return 在线用户信息
- */
- @Override
- public SysUserOnline selectOnlineByUserName(String userName, LoginUser user)
- {
- if (StringUtils.equals(userName, user.getUsername()))
- {
- return loginUserToUserOnline(user);
- }
- return null;
- }
- /**
- * 通过登录地址/用户名称查询信息
- *
- * @param ipaddr 登录地址
- * @param userName 用户名称
- * @param user 用户信息
- * @return 在线用户信息
- */
- @Override
- public SysUserOnline selectOnlineByInfo(String ipaddr, String userName, LoginUser user)
- {
- if (StringUtils.equals(ipaddr, user.getIpaddr()) && StringUtils.equals(userName, user.getUsername()))
- {
- return loginUserToUserOnline(user);
- }
- return null;
- }
- /**
- * 设置在线用户信息
- *
- * @param user 用户信息
- * @return 在线用户
- */
- @Override
- public SysUserOnline loginUserToUserOnline(LoginUser user)
- {
- if (StringUtils.isNull(user) || StringUtils.isNull(user.getUser()))
- {
- return null;
- }
- SysUserOnline sysUserOnline = new SysUserOnline();
- sysUserOnline.setTokenId(user.getToken());
- sysUserOnline.setUserName(user.getUsername());
- sysUserOnline.setIpaddr(user.getIpaddr());
- sysUserOnline.setLoginLocation(user.getLoginLocation());
- sysUserOnline.setBrowser(user.getBrowser());
- sysUserOnline.setOs(user.getOs());
- sysUserOnline.setLoginTime(user.getLoginTime());
- if (StringUtils.isNotNull(user.getUser().getDept()))
- {
- sysUserOnline.setDeptName(user.getUser().getDept().getDeptName());
- }
- return sysUserOnline;
- }
- }
|