Skip to content

Commit 08be9a7

Browse files
committed
fix: 일부 논리 오류 수정
1 parent ec4037a commit 08be9a7

File tree

4 files changed

+16
-7
lines changed

4 files changed

+16
-7
lines changed

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

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,7 @@ public void updateUserCommits() {
4444
String lastcmKey = "commit_lastCommitted:" + username; // active유저의 key
4545
String lastCommitted = redisTemplate.opsForValue().get(lastcmKey); // 마지막 커밋 시간
4646

47-
System.out.println("username: "+username);
48-
System.out.println("user lastCommitted: "+lastCommitted);
47+
System.out.println("username: "+username+"/ user lastCommitted: "+lastCommitted);
4948
if(username!=null && lastCommitted!=null) processUserCommit(username);
5049
}
5150
}

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

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,31 @@ public class CommitUpdateListener {
1414
private final CommitUpdateService commitUpdateService;
1515

1616
@EventListener
17-
public void handleCommitUpdateEvent(CommitUpdateEvent event) {
17+
public void handleCommitUserUpdateEvent(CommitUpdateEvent event) {
1818
String username = event.getUsername();
1919
long commitCount = event.getNewCommitCount();
2020

2121
System.out.println("유저 시즌 경험치 업데이트: " + event.getUsername());
2222
// 이벤트 처리 로직
2323
boolean levelUp = userService.getExpUser(username,commitCount);
24-
petService.getExpPet(username,commitCount);
2524
if(levelUp) commitUpdateService.updateUserTier(username);
2625

2726
// 모든 작업이 끝났다면
2827
userService.updateUserCommitCount(username, commitCount);
2928
// 커밋 갱신 후에 다른 서비스에서 필요한 작업 수행 (예: DB 업데이트, 상태 갱신 등)
3029
System.out.println("유저명: " + username + " has updated " + commitCount + " commits.");
3130
}
31+
32+
@EventListener
33+
public void handleCommitPetUpdateEvent(CommitUpdateEvent event) {
34+
String username = event.getUsername();
35+
long commitCount = event.getNewCommitCount();
36+
37+
System.out.println("유저 펫 경험치 업데이트: " + event.getUsername());
38+
// 이벤트 처리 로직
39+
petService.getExpPet(username,commitCount);
40+
41+
// 커밋 갱신 후에 다른 서비스에서 필요한 작업 수행 (예: DB 업데이트, 상태 갱신 등)
42+
System.out.println("유저명: " + username + "'s pet has updated " + commitCount + " commits.");
43+
}
3244
}

src/main/java/cmf/commitField/domain/user/service/CustomOAuth2UserService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public OAuth2User loadUser(OAuth2UserRequest userRequest) {
8888
user.setSeasonCommitCount(seasonCommitCount);
8989

9090
user.setTier(User.Tier.getLevelByExp(seasonCommitCount));
91-
91+
userRepository.save(user);
9292
// 로그인하거나 회원가입한 유저는 커밋 기록에 상관없이 Redis에 입력해둔다.
9393
commitCacheService.updateCachedCommitCount(user.getUsername(),0);
9494
}

src/main/java/cmf/commitField/domain/user/service/UserService.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,8 @@ public UserInfoDto showUserInfo(String username) {
6666
}
6767

6868
// 유저 성장
69-
@Transactional
7069
public boolean getExpUser(String username, long commitCount) {
7170
User user = userRepository.findByUsername(username).get();
72-
7371
// 경험치 증가 후, 만약 레벨업한다면 레벨업 시킨다.
7472
user.addExp(commitCount);
7573

0 commit comments

Comments
 (0)