This commit is contained in:
张良(004796)
2024-01-31 21:08:04 +08:00
parent 0d973b723a
commit 98458c32fa
4 changed files with 49 additions and 4 deletions

View File

@@ -0,0 +1,15 @@
package com.ruoyi.cai.dto.admin.vo.userforbid;
import com.ruoyi.cai.domain.User;
import com.ruoyi.cai.domain.UserForbid;
import com.ruoyi.cai.domain.UserInfo;
import lombok.Data;
@Data
public class UserForbidInfo {
private User user;
private UserInfo userInfo;
private UserForbid userForbid;
private UserForbid ipUserForbid;
}

View File

@@ -8,6 +8,7 @@ import com.ruoyi.cai.domain.UserForbidLog;
import com.ruoyi.cai.dto.admin.query.UserForbidReq;
import com.ruoyi.cai.dto.admin.query.forbid.UserForbidIpReq;
import com.ruoyi.cai.dto.admin.vo.UserForbidAdminVo;
import com.ruoyi.cai.dto.admin.vo.userforbid.UserForbidInfo;
import com.ruoyi.common.core.domain.PageQuery;
/**
@@ -21,4 +22,6 @@ public interface UserForbidService extends IService<UserForbid> {
void forbid(UserForbidLog userForbidLog, User user);
Page<UserForbidAdminVo> pageAdmin(PageQuery pageQuery, UserForbidAdminVo bo);
UserForbidInfo userForbidInfo(Long userId);
}

View File

@@ -4,13 +4,11 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.cai.domain.Anchor;
import com.ruoyi.cai.domain.User;
import com.ruoyi.cai.domain.UserForbid;
import com.ruoyi.cai.domain.UserForbidLog;
import com.ruoyi.cai.domain.*;
import com.ruoyi.cai.dto.admin.UserForbidDTO;
import com.ruoyi.cai.dto.admin.query.forbid.UserForbidIpReq;
import com.ruoyi.cai.dto.admin.vo.UserForbidAdminVo;
import com.ruoyi.cai.dto.admin.vo.userforbid.UserForbidInfo;
import com.ruoyi.cai.enums.ForbidTimeEnum;
import com.ruoyi.cai.enums.ForbidTypeEnum;
import com.ruoyi.cai.manager.ForbidCache;
@@ -20,6 +18,7 @@ import com.ruoyi.cai.mq.CommonDelayTypeEnum;
import com.ruoyi.cai.mq.dto.CommonDelayDto;
import com.ruoyi.cai.service.AnchorService;
import com.ruoyi.cai.service.UserForbidService;
import com.ruoyi.cai.service.UserInfoService;
import com.ruoyi.cai.service.UserService;
import com.ruoyi.cai.util.CaiDateUtil;
import com.ruoyi.common.core.domain.PageQuery;
@@ -49,6 +48,8 @@ public class UserForbidServiceImpl extends ServiceImpl<UserForbidMapper, UserFor
private ForbidCache forbidCache;
@Autowired
private AmqpProducer amqpProducer;
@Autowired
private UserInfoService userInfoService;
@Override
public void forbid(UserForbidLog userForbidLog, User user) {
@@ -102,6 +103,26 @@ public class UserForbidServiceImpl extends ServiceImpl<UserForbidMapper, UserFor
return baseMapper.pageAdmin(pageQuery.build(),bo);
}
@Override
public UserForbidInfo userForbidInfo(Long userId) {
User user = userService.getById(userId);
UserInfo userInfo = userInfoService.getByUserId(userId);
if(userInfo == null || user == null){
return null;
}
UserForbidInfo userForbidInfo = new UserForbidInfo();
UserForbid userForbid = this.getOne(Wrappers.lambdaQuery(UserForbid.class)
.eq(UserForbid::getType, ForbidTypeEnum.USER.getCode()).last("limit 1"));
if(userForbid != null && userForbid.getForbidStatus() == 1 && userForbid.getEndTime().isAfter(LocalDateTime.now())){
userForbidInfo.setUserForbid(userForbid);
}
UserForbid ipUserForbid = this.getOne(Wrappers.lambdaQuery(UserForbid.class)
.eq(UserForbid::getType, ForbidTypeEnum.IP.getCode()).last("limit 1"));
if(userForbid != null && userForbid.getForbidStatus() == 1 && userForbid.getEndTime().isAfter(LocalDateTime.now())){
userForbidInfo.setIpUserForbid(ipUserForbid);
}
return userForbidInfo;
}
private LocalDateTime getEndTime(LocalDateTime beginTime, ForbidTimeEnum time){