Browse Source

优化举报接口

fangqing 1 tháng trước cách đây
mục cha
commit
6d5490041d

+ 5 - 3
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityArticleController.java

@@ -114,6 +114,9 @@ public class CommunityArticleController extends BaseController {
     @Autowired
     private RedisCache redisCache;
 
+    @Autowired
+    private CommunityReportController communityReportController;
+
     private static final String CACHE_PREFIX = "article:list:"; // 缓存前缀
     private static final long CACHE_EXPIRE_TIME = 30; // 缓存过期时间(分钟)
     @Autowired
@@ -133,9 +136,6 @@ public class CommunityArticleController extends BaseController {
     @Autowired
     private CommunityArticleRecommendMapper recommendMapper;
 
-    @Autowired
-    private CommunityReportController communityReportController;
-
     @Autowired
     private SysUserMapper sysUserMapper;
 
@@ -199,6 +199,7 @@ public class CommunityArticleController extends BaseController {
                 String userState = sysUser.getUserState();
                 Date reportTime = sysUser.getReportTime();
                 if ("2".equals(userState) && reportTime != null) {
+                    communityReportController.adminReportPunish(SecurityUtils.getUserId());
                     // 获取当前时间
                     Date currentTime = new Date();
                     System.out.println(reportTime);
@@ -438,6 +439,7 @@ public class CommunityArticleController extends BaseController {
             String userState = sysUser.getUserState();
             Date reportTime = sysUser.getReportTime();
             if ("2".equals(userState) && reportTime != null) {
+                communityReportController.adminReportPunish(SecurityUtils.getUserId());
                 // 获取当前时间
                 Date currentTime = new Date();
                 // 检查 reportTime 小于当前时间

+ 4 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityCommentController.java

@@ -103,6 +103,9 @@ public class CommunityCommentController extends BaseController {
     @Autowired
     private CommunityArticleAtServiceImpl communityArticleAtService;
 
+    @Autowired
+    private CommunityReportController communityReportController;
+
     /**
      * 获取文章评论
      */
@@ -315,6 +318,7 @@ public class CommunityCommentController extends BaseController {
                 String userState = sysUsers.getUserState();
                 Date reportTime = sysUsers.getReportTime();
                 if ("2".equals(userState) && reportTime != null) {
+                    communityReportController.adminReportPunish(userId);
                     // 获取当前时间
                     Date currentTime = new Date();
                     // 检查 reportTime 小于当前时间

+ 13 - 1
ruoyi-generator/src/main/java/com/ruoyi/generator/controller/CommunityReportController.java

@@ -227,6 +227,7 @@ public class CommunityReportController {
             reportUser.setPunishTime(disposalTime);
             reportUser.setUpdateBy(SecurityUtils.getUserId());
             reportUser.setUpdateTime(DateUtils.parseDate(DateUtils.getTime()));
+            reportUser.setClosingTime(futureDate);
 
             Long replyId = communityReportPunishVo.getReplyId();
             switch (disposalType) {
@@ -301,14 +302,25 @@ public class CommunityReportController {
             Date reportTime = sysUser.getReportTime();
             communityUserReportVo.setReportTime(reportTime);
 
+            Date date = DateUtils.parseDate(DateUtils.getTime());
             //封禁时间
             if (reportTime != null) {
-                Date date = DateUtils.parseDate(DateUtils.getTime());
                 long diffInMillis = reportTime.getTime() - date.getTime();
                 long diffInMinutes = TimeUnit.MILLISECONDS.toMinutes(diffInMillis);
                 result = Math.max(0, diffInMinutes);
             }
             communityUserReportVo.setMinutes(result);
+
+
+            //计算封禁时间如果小于当前日期 则解封
+            if (reportTime != null && reportTime.before(date)) {
+                SysUser user = new SysUser();
+                user.setUserId(userId);
+                user.setUserState("0");
+                //判断当前用户是否已经被封号
+                userService.updateUserProfile(user);
+            }
+
         } catch (Exception e) {
             System.out.println(e.getMessage());
             throw new ProjectException();

+ 6 - 0
ruoyi-generator/src/main/java/com/ruoyi/generator/domain/Community/CommunityReportUser.java

@@ -154,6 +154,12 @@ public class CommunityReportUser implements Serializable {
     @JsonSerialize(using = ToStringSerializer.class)
     private Long replyId;
 
+    /**
+     * 截止日期
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date closingTime;
+
 
 
 }