Skip to content

Commit

Permalink
Merge pull request #271 from bankidz/feature/singleDevice
Browse files Browse the repository at this point in the history
feat: 다중기기 접속 방지
  • Loading branch information
ozzing authored Nov 10, 2022
2 parents 3f40b8d + 70a1c3b commit e6045cc
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 11 deletions.
1 change: 1 addition & 0 deletions src/main/java/com/ceos/bankids/constant/ErrorCode.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public enum ErrorCode implements EnumMapperType {
USER_ALREADY_HAS_TYPE("E400-20002"),
INVALID_BIRTHDAY("E400-20003"),
USER_TYPE_NOT_CHOSEN("E400-20004"),
USER_ALREADY_LOGINED("E400-20005"),

// Family
FAMILY_NOT_EXISTS("E403-30001"),
Expand Down
25 changes: 15 additions & 10 deletions src/main/java/com/ceos/bankids/mapper/UserMapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,11 @@ public class UserMapper {

@Transactional
public UserDTO updateUserType(User user, UserTypeRequest userTypeRequest) {
// 이미 로그인한 유저인지 검사
if (user.getExpoToken().contains("ExponentPushToken")) {
throw new BadRequestException(ErrorCode.USER_ALREADY_LOGINED.getErrorCode());
}

// 유저 타입이 이미 선택되었는지 검사
if (user.getIsFemale() != null) {
throw new BadRequestException(ErrorCode.USER_ALREADY_HAS_TYPE.getErrorCode());
Expand Down Expand Up @@ -106,11 +111,11 @@ public LoginDTO updateUserToken(User user) {
LoginDTO loginDTO;
if (updatedUser.getIsKid() == null || updatedUser.getIsKid() == false) {
loginDTO = new LoginDTO(updatedUser.getIsKid(), newAccessToken,
updatedUser.getProvider());
updatedUser.getProvider());
} else {
loginDTO = new LoginDTO(updatedUser.getIsKid(), newAccessToken,
updatedUser.getKid().getLevel(),
updatedUser.getProvider());
updatedUser.getKid().getLevel(),
updatedUser.getProvider());
}
return loginDTO;
}
Expand Down Expand Up @@ -144,20 +149,20 @@ public void deleteFamilyUserIfExists(User user) {
if (familyUser.isPresent()) {
Family family = familyUser.get().getFamily();
List<FamilyUser> familyUserList = familyUserService.getFamilyUserListExclude(family,
user);
user);

if (user.getIsKid()) {
List<Challenge> challengeList = challengeUserService.readAllChallengeUserListToChallengeList(
user);
user);
challengeUserService.deleteAllChallengeUserOfUser(user);
ChallengeCompleteDeleteByKidMapperDTO challengeCompleteDeleteByKidMapperDTO = challengeService.challengeCompleteDeleteByKid(
challengeList);
challengeList);
kidService.updateInitKid(user);
parentService.updateParentForDeleteFamilyUserByKid(familyUserList,
challengeCompleteDeleteByKidMapperDTO);
challengeCompleteDeleteByKidMapperDTO);
} else {
List<ChallengeUser> challengeUserList = challengeUserService.getChallengeUserListByContractUser(
user);
user);
kidService.updateKidForDeleteFamilyUserByParent(challengeUserList);
parentService.updateInitParent(user);
challengeService.challengeCompleteDeleteByParent(challengeUserList);
Expand All @@ -175,12 +180,12 @@ public UserDTO deleteUserAccount(User user, WithdrawalRequest withdrawalRequest)
if (user.getIsKid()) {
KidBackupDTO kidBackupDTO = kidBackupService.backupKidUser(user);
slackService.sendWithdrawalMessage("KidBackup ", kidBackupDTO.getId(),
withdrawalRequest.getMessage());
withdrawalRequest.getMessage());
kidService.deleteKid(user);
} else {
ParentBackupDTO parentBackupDTO = parentBackupService.backupParentUser(user);
slackService.sendWithdrawalMessage("ParentBackup ", parentBackupDTO.getId(),
withdrawalRequest.getMessage());
withdrawalRequest.getMessage());
parentService.deleteParent(user);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ public AppleSubjectDTO verifyIdentityToken(AppleRequest appleRequest,
appleHeaderDTO.getAlg())
.orElseThrow(
() -> new BadRequestException(ErrorCode.APPLE_KEY_UNAVAILABLE.getErrorCode()));

byte[] nBytes = Base64.getUrlDecoder().decode(appleKeyDTO.getN());
byte[] eBytes = Base64.getUrlDecoder().decode(appleKeyDTO.getE());

Expand Down

0 comments on commit e6045cc

Please sign in to comment.