新增封禁天数功能

This commit is contained in:
tianfeng 2025-10-14 15:43:25 +08:00
parent aabd9cbaac
commit 66480b6747
9 changed files with 42 additions and 4 deletions

View File

@ -113,6 +113,10 @@ public interface AppUserAccountClientApi {
ResultResponse<Boolean> updateAccountStatus(@RequestParam("userId") Long userId,
@RequestParam("accountStatus") AccountStatusEnum accountStatus);
@GetMapping(value = "/updateAccountStatusDays")
ResultResponse<Boolean> updateAccountStatusDays(@RequestParam("userId") Long userId,
@RequestParam("accountStatus") AccountStatusEnum accountStatus, @RequestParam Integer days);
@PostMapping("/pgeApprovalUserAccountStatusLog")
ResultResponse<PageResult<ApprovalUserAccountStatusLogDTO>> pgeApprovalUserAccountStatusLog(
@RequestBody UserAccountStatusLogQryCmd cmd);

View File

@ -60,6 +60,9 @@ public class ApprovalAccountCmd extends CommonCommand {
if (ConsoleAccountStatusEnum.FREEZE.eq(accountStatusEnum)) {
return String.format("【冻结-%s天】%s", days, desc);
}
if (ConsoleAccountStatusEnum.ARCHIVE.eq(accountStatusEnum)) {
return String.format("【封禁-%s天】%s", days, desc);
}
return desc;
}

View File

@ -99,8 +99,8 @@ public class UserDataViolationServiceImpl implements UserDataViolationService {
else if (ConsoleAccountStatusEnum.ARCHIVE.eq(param.getAccountStatusEnum())) {
ResponseAssert.isTrue(CommonErrorCode.UPDATE_FAILURE,
ResponseAssert.requiredSuccess(
appUserAccountClient.updateAccountStatus(param.getBeApprovalUserId(),
AccountStatusEnum.ARCHIVE)));
appUserAccountClient.updateAccountStatusDays(param.getBeApprovalUserId(),
AccountStatusEnum.ARCHIVE, param.getDays())));
ResponseAssert.requiredSuccess(newsletterClient.send(
new NewsletterResultCmd()

View File

@ -96,8 +96,7 @@ public class AppUserDataViolationServiceImpl implements AppUserDataViolationServ
else if (ConsoleAccountStatusEnum.ARCHIVE.eq(param.getAccountStatusEnum())) {
ResponseAssert.isTrue(CommonErrorCode.UPDATE_FAILURE,
ResponseAssert.requiredSuccess(
appUserAccountClient.updateAccountStatus(param.getBeApprovalUserId(),
AccountStatusEnum.ARCHIVE)));
appUserAccountClient.updateAccountStatus(param.getBeApprovalUserId(), AccountStatusEnum.ARCHIVE)));
ResponseAssert.requiredSuccess(newsletterClient.send(
new NewsletterResultCmd()

View File

@ -121,6 +121,15 @@ public interface BaseInfoService extends BaseService<BaseInfo> {
*/
boolean updateAccountStatus(Long userId, AccountStatusEnum accountStatus);
/**
* 修改封禁账户状态.
*
* @param userId 用户id
* @param accountStatus 账号状态
* @return true/false
*/
boolean updateAccountStatusDays(Long userId, AccountStatusEnum accountStatus, Integer days);
/**
* 删除用户.
*

View File

@ -234,6 +234,16 @@ public class BaseInfoServiceImpl extends BaseServiceImpl<BaseInfoDAO, BaseInfo>
.execute();
}
@Override
public boolean updateAccountStatusDays(Long userId, AccountStatusEnum accountStatus, Integer days) {
return update()
.set(BaseInfo::getAccountStatus, accountStatus)
.set(Objects.equals(accountStatus, AccountStatusEnum.ARCHIVE), BaseInfo::getFreezingTime, TimestampUtils.nowPlusDays(days))
.eq(BaseInfo::getId, userId)
.execute();
}
@Override
public boolean deleteUser(Long userId) {
return update()

View File

@ -156,6 +156,12 @@ public class AppUserAccountClientEndpoint implements AppUserAccountClientApi {
userAccountClientService.updateAccountStatus(userId, accountStatus));
}
@Override
public ResultResponse<Boolean> updateAccountStatusDays(Long userId, AccountStatusEnum accountStatus, Integer days) {
return ResultResponse.success(
userAccountClientService.updateAccountStatusDays(userId, accountStatus, days));
}
@Override
public ResultResponse<PageResult<ApprovalUserAccountStatusLogDTO>> pgeApprovalUserAccountStatusLog(
UserAccountStatusLogQryCmd cmd) {

View File

@ -91,6 +91,8 @@ public interface UserAccountClientService {
boolean updateAccountStatus(Long userId, AccountStatusEnum accountStatus);
boolean updateAccountStatusDays(Long userId, AccountStatusEnum accountStatus, Integer days);
PageResult<ApprovalUserAccountStatusLogDTO> pgeApprovalUserAccountStatusLog(UserAccountStatusLogQryCmd cmd);
List<ApprovalUserAccountStatusLogDTO> lastApprovalUserAccountStatusLog(Long beApprovalUser, Integer size);

View File

@ -264,6 +264,11 @@ public class UserAccountClientServiceImpl implements UserAccountClientService {
return baseInfoService.updateAccountStatus(userId, accountStatus);
}
@Override
public boolean updateAccountStatusDays(Long userId, AccountStatusEnum accountStatus, Integer days) {
return baseInfoService.updateAccountStatusDays(userId, accountStatus, days);
}
@Override
public PageResult<ApprovalUserAccountStatusLogDTO> pgeApprovalUserAccountStatusLog(
UserAccountStatusLogQryCmd cmd) {