|
@@ -3,8 +3,11 @@ package com.ruoyi.generator.controller;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.ruoyi.common.constant.CacheConstants;
|
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
|
|
+import com.ruoyi.common.core.domain.model.LoginUser;
|
|
|
+import com.ruoyi.common.core.redis.RedisCache;
|
|
|
import com.ruoyi.common.core.text.Convert;
|
|
|
import com.ruoyi.common.exception.user.ProjectException;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
@@ -19,6 +22,7 @@ import com.ruoyi.generator.service.ICommunityReportUserService;
|
|
|
import com.ruoyi.generator.vo.CommunityReportPunishVo;
|
|
|
import com.ruoyi.generator.vo.CommunityReportUserVo;
|
|
|
import com.ruoyi.generator.vo.CommunityUserReportVo;
|
|
|
+import com.ruoyi.system.domain.SysUserOnline;
|
|
|
import com.ruoyi.system.mapper.SysUserMapper;
|
|
|
import com.ruoyi.system.service.ISysUserService;
|
|
|
import io.swagger.annotations.Api;
|
|
@@ -27,9 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Objects;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
/**
|
|
@@ -64,6 +66,9 @@ public class CommunityReportController {
|
|
|
@Autowired
|
|
|
private SysUserMapper sysUserMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private RedisCache redisCache;
|
|
|
+
|
|
|
/**
|
|
|
* 获取举报类型信息
|
|
|
*
|
|
@@ -203,9 +208,7 @@ public class CommunityReportController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
//计算封禁的时间
|
|
|
-
|
|
|
Date futureDate = null;
|
|
|
if (disposalTime != null && disposalTime >= 0) {
|
|
|
long millisecondsToAdd = TimeUnit.MINUTES.toMillis(disposalTime); //转换时间
|
|
@@ -237,6 +240,17 @@ public class CommunityReportController {
|
|
|
//判断当前用户是否已经被封号
|
|
|
userService.updateUserProfile(user);
|
|
|
communityReportUserMapper.updateById(reportUser);
|
|
|
+ //清退token
|
|
|
+ Collection<String> keys = redisCache.keys(CacheConstants.LOGIN_TOKEN_KEY + "*");
|
|
|
+ List<SysUserOnline> userOnlineList = new ArrayList<SysUserOnline>();
|
|
|
+ for (String key : keys)
|
|
|
+ {
|
|
|
+ LoginUser loginUser = redisCache.getCacheObject(key);
|
|
|
+ if (loginUser.getUserId().equals(user.getUserId())) {
|
|
|
+ //移除用户已登录情况
|
|
|
+ redisCache.deleteObject(CacheConstants.LOGIN_TOKEN_KEY + key);
|
|
|
+ }
|
|
|
+ }
|
|
|
break;
|
|
|
case "2": //禁言
|
|
|
userService.updateUserProfile(user);
|