123
This commit is contained in:
@@ -231,11 +231,10 @@ public class UserForbidManager {
|
||||
if(userForbid == null || ForbidStatusEnum.NORMAL.getCode().equals(userForbid.getForbidStatus())){
|
||||
return;
|
||||
}
|
||||
if(!userForbid.getEndTime().isAfter(LocalDateTime.now())){
|
||||
if(userForbid.getEndTime().isAfter(LocalDateTime.now())){
|
||||
return;
|
||||
}
|
||||
this.unForbidByForbidId(id);
|
||||
|
||||
}
|
||||
|
||||
@Data
|
||||
|
||||
@@ -57,24 +57,26 @@ public class UserForbidServiceImpl extends ServiceImpl<UserForbidMapper, UserFor
|
||||
log.error("封禁入参错误 data={}", JSON.toJSONString(userForbidLog));
|
||||
return;
|
||||
}
|
||||
// 暂不考虑并发
|
||||
UserForbid one = this.getOne(Wrappers.lambdaQuery(UserForbid.class)
|
||||
.eq(UserForbid::getMember, userForbidLog.getMember())
|
||||
.eq(UserForbid::getType, forbidType.getCode()));
|
||||
.eq(UserForbid::getType, forbidType.getCode())
|
||||
.last("limit 1"));
|
||||
if(one == null){
|
||||
one = new UserForbid();
|
||||
one.setType(userForbidLog.getType());
|
||||
one.setMember(userForbidLog.getMember());
|
||||
one.setBeginTime(LocalDateTime.now());
|
||||
one.setEndTime(getEndTime(one.getBeginTime(), forbidTime));
|
||||
} else if(ForbidStatusEnum.NORMAL.getCode().equals(one.getForbidStatus())){ // 已解封
|
||||
one.setBeginTime(LocalDateTime.now());
|
||||
} else if(ForbidStatusEnum.FORBID.getCode().equals(one.getForbidStatus()) && one.getEndTime().isBefore(LocalDateTime.now())){
|
||||
one.setEndTime(getEndTime(one.getBeginTime(), forbidTime));
|
||||
} else if(ForbidStatusEnum.FORBID.getCode().equals(one.getForbidStatus()) && one.getEndTime().isAfter(LocalDateTime.now())){ // 已解封到期
|
||||
one.setBeginTime(LocalDateTime.now());
|
||||
one.setEndTime(getEndTime(one.getBeginTime(), forbidTime));
|
||||
} else {
|
||||
one.setEndTime(getEndTime(one.getEndTime(),forbidTime)); // 还在封号中,续上时间
|
||||
}
|
||||
LocalDateTime endTime = getEndTime(one.getBeginTime(), forbidTime);
|
||||
if(endTime == null){
|
||||
return;
|
||||
}
|
||||
one.setEndTime(endTime);
|
||||
one.setReason(userForbidLog.getReason());
|
||||
one.setForbidStatus(ForbidStatusEnum.FORBID.getCode());
|
||||
this.saveOrUpdate(one);
|
||||
@@ -85,7 +87,7 @@ public class UserForbidServiceImpl extends ServiceImpl<UserForbidMapper, UserFor
|
||||
forbidCache.addForbid(one);
|
||||
try {
|
||||
// 12小时
|
||||
long between = CaiDateUtil.diff(endTime, LocalDateTime.now());
|
||||
long between = CaiDateUtil.diff(one.getEndTime(), LocalDateTime.now());
|
||||
CommonDelayDto dto = new CommonDelayDto();
|
||||
dto.setForbidId(one.getId());
|
||||
dto.setType(CommonDelayTypeEnum.USER_FORBID.getCode());
|
||||
|
||||
Reference in New Issue
Block a user