Skip to content

Commit 0c7b752

Browse files
committed
Merge branch 'dev' of https://github.com/CommitField/commitField into Feature/89
2 parents dad2316 + bae50bc commit 0c7b752

File tree

5 files changed

+18
-7
lines changed

5 files changed

+18
-7
lines changed

src/main/java/cmf/commitField/CommitFieldApplication.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,9 @@
77

88
@SpringBootApplication
99
@EnableJpaAuditing
10-
// 스케쥴링 활성화
11-
// 테스트시에만 주석 풀기
1210
@EnableScheduling
1311
public class CommitFieldApplication {
1412
public static void main(String[] args) {
1513
SpringApplication.run(CommitFieldApplication.class, args);
1614
}
17-
1815
}

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

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import cmf.commitField.domain.user.service.UserService;
55
import lombok.RequiredArgsConstructor;
66
import org.springframework.context.event.EventListener;
7+
import org.springframework.messaging.simp.SimpMessagingTemplate;
78
import org.springframework.stereotype.Component;
89

910
@Component
@@ -12,6 +13,7 @@ public class CommitUpdateListener {
1213
private final UserService userService;
1314
private final PetService petService;
1415
private final CommitUpdateService commitUpdateService;
16+
private final SimpMessagingTemplate messagingTemplate;
1517

1618
@EventListener
1719
public void handleCommitUserUpdateEvent(CommitUpdateEvent event) {
@@ -41,4 +43,14 @@ public void handleCommitPetUpdateEvent(CommitUpdateEvent event) {
4143
// 커밋 갱신 후에 다른 서비스에서 필요한 작업 수행 (예: DB 업데이트, 상태 갱신 등)
4244
System.out.println("유저명: " + username + "'s pet has updated " + commitCount + " commits.");
4345
}
46+
47+
@EventListener
48+
public void onCommitCountUpdate(CommitUpdateEvent event) {
49+
// 커밋 수 업데이트가 있을 때 메시지 발송
50+
String username = event.getUsername();
51+
long newCommitCount = event.getNewCommitCount();
52+
53+
// 메시지를 WebSocket을 통해 전송
54+
messagingTemplate.convertAndSend("/topic/commit/" + username, newCommitCount);
55+
}
4456
}

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

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
package cmf.commitField.domain.commit.scheduler;
22

33
import cmf.commitField.domain.commit.totalCommit.service.TotalCommitService;
4-
import cmf.commitField.domain.pet.service.PetService;
54
import cmf.commitField.domain.user.dto.UserInfoDto;
65
import cmf.commitField.domain.user.entity.User;
76
import cmf.commitField.domain.user.repository.UserRepository;
87
import lombok.RequiredArgsConstructor;
8+
import org.springframework.messaging.simp.SimpMessagingTemplate;
99
import org.springframework.stereotype.Service;
1010

1111
import java.time.LocalDateTime;
@@ -15,8 +15,9 @@
1515
public class CommitUpdateService {
1616
private final TotalCommitService totalCommitService;
1717
private final UserRepository userRepository;
18-
private final PetService petService;
18+
private final SimpMessagingTemplate messagingTemplate;
1919

20+
// 유저 랭킹 상승 로짓
2021
public UserInfoDto updateUserTier(String username){
2122
User user = userRepository.findByUsername(username).get();
2223
long seasonCommitCount;
@@ -35,4 +36,5 @@ public UserInfoDto updateUserTier(String username){
3536
.tier(user.getTier().name())
3637
.build();
3738
}
39+
3840
}

src/main/java/cmf/commitField/domain/commit/sinceCommit/controller/SinceCommitController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public ResponseEntity<CommitAnalysisResponseDto> getWinterSeasonCommits(
9494
) {
9595
int currentYear = LocalDateTime.now().getYear();
9696
LocalDateTime since = LocalDateTime.of(2024, 12, 1, 0, 0);
97-
LocalDateTime until = LocalDateTime.of(2024 + 1, 2, 1, 23, 59, 59)
97+
LocalDateTime until = LocalDateTime.of(2024 + 1, 2, 28, 23, 59, 59)
9898
.with(TemporalAdjusters.lastDayOfMonth());
9999

100100
CommitAnalysisResponseDto analysis = sinceCommitService.getCommitAnalysis(owner, repo, since, until);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ public Optional<User> getUserByEmail(String email) {
123123

124124
public void setUserActive(String username) {
125125
String count = String.valueOf(userRepository.findByUsername(username).get().getCommitCount());
126-
redisTemplate.opsForValue().set("commit_active:" + username, count);
126+
redisTemplate.opsForValue().set("commit_active:" + username, count, 3, TimeUnit.HOURS);
127127
redisTemplate.opsForValue().set("commit_lastCommitted:" + username, LocalDateTime.now().toString(),3, TimeUnit.HOURS);
128128

129129
}

0 commit comments

Comments
 (0)