package com.muyu.system.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.StringUtils; import com.muyu.common.system.domain.LoginUser; import com.muyu.system.domain.SysUserOnline; import com.muyu.system.service.SysUserOnlineService; import org.springframework.stereotype.Service; /** * 在线用户 服务层处理 * * @author muyu */ @Service public class SysUserOnlineServiceImpl implements SysUserOnlineService { /** * 通过登录地址查询信息 * * @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)) { return null; } SysUserOnline sysUserOnline = new SysUserOnline(); sysUserOnline.setTokenId(user.getToken()); sysUserOnline.setUserName(user.getUsername()); sysUserOnline.setIpaddr(user.getIpaddr()); sysUserOnline.setLoginTime(user.getLoginTime()); return sysUserOnline; } }