This commit is contained in:
2023-05-26 17:52:34 +08:00
parent dd1ab6e74e
commit 21632ef7cb
13 changed files with 96 additions and 18 deletions

View File

@ -24,16 +24,25 @@ public interface OnlineUserService {
* 删除(强退)
*
* @param username 登录账号
* @param deviceSn 设备号
*/
void delete(String username);
void deleteOne(String username, String deviceSn);
/**
* 删除(强退)
*
* @param username 登录账号
*/
void deleteAll(String username);
/**
* 查询
*
* @param username 登录账号
* @param deviceSn deviceSn
* @return 在线用户
*/
OnlineUser selectByUsername(String username);
OnlineUser selectOne(String username, String deviceSn);
/**
* 批量查询
@ -42,4 +51,6 @@ public interface OnlineUserService {
* @return list
*/
List<OnlineUser> selectList(String username);
}

View File

@ -27,18 +27,26 @@ public class OnlineUserServiceImpl implements OnlineUserService {
@Override
public void insert(OnlineUser onlineUser) {
redisService.set(handleKey(onlineUser.getUsername()), onlineUser, TokenUtil.expireTime * 3600);
// key: username
// hashKey: deviceSn
// value: onlineUser
redisService.hSet(handleKey(onlineUser.getUsername()), onlineUser.getDeviceSn(), onlineUser, TokenUtil.expireTime * 3600);
}
@Override
public void delete(String username) {
public void deleteOne(String username, String deviceSn) {
redisService.hDel(handleKey(username), deviceSn);
}
@Override
public void deleteAll(String username) {
redisService.del(handleKey(username));
}
@Override
public OnlineUser selectByUsername(String username) {
if (redisService.hasKey(handleKey(username))) {
return redisService.getObject(handleKey(username), OnlineUser.class);
public OnlineUser selectOne(String username, String deviceSn) {
if (redisService.hHasKey(username, deviceSn)) {
return redisService.hGetObject(username, deviceSn, OnlineUser.class);
}
return null;
}