From f63a76f661e852d3b2f6cb3c5ee02d07c49e9fa9 Mon Sep 17 00:00:00 2001
From: abbfun <819589789@qq.com>
Date: Sat, 23 Apr 2022 22:36:48 +0800
Subject: [PATCH] spring-cloud.version 2021.0.1 官方推荐对应 spring-cloud-alibaba 2021.0.1.0 spring-cloud.version 2021.0.1 对应 spring-cloud-alibaba 2021.0.1.0, 官方说明 https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E#%E6%AF%95%E4%B8%9A%E7%89%88%E6%9C%AC%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8
---
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserOnlineServiceImpl.java | 89 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 89 insertions(+), 0 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserOnlineServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserOnlineServiceImpl.java
new file mode 100644
index 0000000..dcb0325
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserOnlineServiceImpl.java
@@ -0,0 +1,89 @@
+package com.ruoyi.system.service.impl;
+
+import org.springframework.stereotype.Service;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.system.api.model.LoginUser;
+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))
+ {
+ return null;
+ }
+ SysUserOnline sysUserOnline = new SysUserOnline();
+ sysUserOnline.setTokenId(user.getToken());
+ sysUserOnline.setUserName(user.getUsername());
+ sysUserOnline.setIpaddr(user.getIpaddr());
+ sysUserOnline.setLoginTime(user.getLoginTime());
+ return sysUserOnline;
+ }
+}
--
Gitblit v1.9.3