Skip to content

Commit 6836633

Browse files
committed
feat: 논리 오류 2차 수정
1 parent 8c9218a commit 6836633

File tree

3 files changed

+6
-12
lines changed

3 files changed

+6
-12
lines changed

src/main/java/cmf/commitField/domain/commit/scheduler/CommitUpdateService.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public UserInfoDto updateUserTier(String username){
2222
long seasonCommitCount;
2323
seasonCommitCount = totalCommitService.getSeasonCommits(user.getUsername(), LocalDateTime.of(2025,03,01,0,0), LocalDateTime.of(2025,05,31,23,59)).getTotalCommitContributions();
2424
user.setTier(User.Tier.getLevelByExp((int)seasonCommitCount));
25+
System.out.println(username+"유저 레벨 업! 현재 티어: "+user.getTier());
2526
userRepository.save(user);
2627

2728
return UserInfoDto.builder()

src/main/java/cmf/commitField/domain/pet/entity/PetGrow.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public int getRequiredExp() {
1919
}
2020

2121
// 현재 경험치에 맞는 레벨 찾기
22-
public static PetGrow getLevelByExp(int exp) {
22+
public static PetGrow getLevelByExp(long exp) {
2323
PetGrow currentLevel = EGG;
2424
for (PetGrow level : values()) {
2525
if (exp >= level.getRequiredExp()) {

src/main/java/cmf/commitField/domain/pet/service/PetService.java

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,11 +59,10 @@ public UserPetDto getExpPet(String username, long commitCount) {
5959
User user = userRepository.findByUsername(username).get();
6060
Pet pet = user.getPets().get(0);
6161
pet.addExp(commitCount); // 경험치 증가
62+
petRepository.save(pet);
6263

6364
// 경험치 증가 후, 만약 레벨업한다면 레벨업 시킨다.
64-
if( (pet.getGrow()== PetGrow.EGG && pet.getExp()>= PetGrow.EGG.getRequiredExp()) ||
65-
(pet.getGrow()== PetGrow.HATCH && pet.getExp()>= PetGrow.HATCH.getRequiredExp())) {
66-
System.out.println("펫 레벨 업, 현재 경험치 : "+pet.getExp());
65+
if(!PetGrow.getLevelByExp(pet.getExp()).equals(pet.getGrow())){
6766
levelUp(pet);
6867
}
6968

@@ -78,13 +77,7 @@ public UserPetDto getExpPet(String username, long commitCount) {
7877

7978
// 펫 레벨 업
8079
public void levelUp(Pet pet){
81-
switch (pet.getGrow()){
82-
case EGG :
83-
pet.setGrow(PetGrow.HATCH);
84-
break;
85-
case HATCH :
86-
pet.setGrow(PetGrow.GROWN);
87-
break;
88-
}
80+
pet.setGrow(PetGrow.getLevelByExp(pet.getExp()));
81+
petRepository.save(pet);
8982
}
9083
}

0 commit comments

Comments
 (0)