유저 닉네임 변경 처리
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user