유저 닉네임 변경 처리

This commit is contained in:
2025-05-12 17:04:15 +09:00
parent fe6eb55766
commit f537b6d424
10 changed files with 162 additions and 20 deletions

View File

@@ -2,13 +2,19 @@ package com.caliverse.admin.dynamodb.service;
import com.caliverse.admin.domain.entity.BlackList;
import com.caliverse.admin.dynamodb.domain.atrrib.*;
import com.caliverse.admin.dynamodb.domain.doc.UserNicknameRegistryDoc;
import com.caliverse.admin.dynamodb.entity.EAuthAdminLevelType;
import com.caliverse.admin.dynamodb.repository.*;
import com.caliverse.admin.global.common.annotation.DynamoDBTransaction;
import com.caliverse.admin.global.common.code.CommonCode;
import com.caliverse.admin.global.common.code.ErrorCode;
import com.caliverse.admin.global.common.constants.DynamoDBConstants;
import com.caliverse.admin.global.common.exception.RestApiException;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import software.amazon.awssdk.enhanced.dynamodb.Key;
@Slf4j
@@ -124,4 +130,26 @@ public class DynamodbUserService {
return moneyRepository.findAttrib(guid);
}
@DynamoDBTransaction
public void changesNickname(String guid, String oldNickname, String newNickname){
UserNicknameRegistryAttrib newNicknameAttrib = userNicknameRegistryRepository.findUser(newNickname.toLowerCase());
if(newNicknameAttrib != null){
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.NICKNAME_EXIT_ERROR.toString());
}
Key key = Key.builder()
.partitionValue(DynamoDBConstants.PK_KEY_USER_NICKNAME_REGISTRY)
.sortValue(oldNickname.toLowerCase())
.build();
UserNicknameRegistryDoc beforeDoc = userNicknameRegistryRepository.findById(key);
if(beforeDoc == null){
throw new RestApiException(CommonCode.ERROR.getHttpStatus(), ErrorCode.DYNAMODB_NOT_USER.toString());
}
userNicknameRegistryRepository.deleteNickname(oldNickname);
userNicknameRegistryRepository.insertChangesNickname(beforeDoc, newNickname);
nicknameRepository.updateNickname(guid, newNickname);
}
}