10
10
import org .springframework .web .bind .annotation .RestController ;
11
11
12
12
import java .time .LocalDateTime ;
13
+ import java .time .temporal .TemporalAdjusters ;
13
14
import java .util .List ;
14
15
15
16
@ RestController
@@ -28,4 +29,67 @@ public ResponseEntity<List<SinceCommitResponseDto>> getCommits(
28
29
29
30
return ResponseEntity .ok (sinceCommits );
30
31
}
32
+
33
+ // 시즌 별 커밋 수 불러오기
34
+
35
+ // 봄 시즌
36
+ @ GetMapping ("/api/github/commits-spring" )
37
+ public ResponseEntity <List <SinceCommitResponseDto >> getSpringSeasonCommits (
38
+ @ RequestParam String owner ,
39
+ @ RequestParam String repo
40
+ ) {
41
+ int currentYear = LocalDateTime .now ().getYear ();
42
+ LocalDateTime since = LocalDateTime .of (2024 , 3 , 1 , 0 , 0 );
43
+ LocalDateTime until = LocalDateTime .of (2024 , 5 , 31 , 23 , 59 , 59 );
44
+
45
+ List <SinceCommitResponseDto > sinceCommits = sinceCommitService .getSinceCommits (owner , repo , since , until );
46
+
47
+ return ResponseEntity .ok (sinceCommits );
48
+ }
49
+
50
+ // 여름 시즌
51
+ @ GetMapping ("/api/github/commits-summer" )
52
+ public ResponseEntity <List <SinceCommitResponseDto >> getSummerSeasonCommits (
53
+ @ RequestParam String owner ,
54
+ @ RequestParam String repo
55
+ ) {
56
+ int currentYear = LocalDateTime .now ().getYear ();
57
+ LocalDateTime since = LocalDateTime .of (currentYear , 6 , 1 , 0 , 0 );
58
+ LocalDateTime until = LocalDateTime .of (currentYear , 8 , 31 , 23 , 59 , 59 );
59
+
60
+ List <SinceCommitResponseDto > sinceCommits = sinceCommitService .getSinceCommits (owner , repo , since , until );
61
+
62
+ return ResponseEntity .ok (sinceCommits );
63
+ }
64
+
65
+ // 가을 시즌
66
+ @ GetMapping ("/api/github/commits-fall" )
67
+ public ResponseEntity <List <SinceCommitResponseDto >> getFallSeasonCommits (
68
+ @ RequestParam String owner ,
69
+ @ RequestParam String repo
70
+ ) {
71
+ int currentYear = LocalDateTime .now ().getYear ();
72
+ LocalDateTime since = LocalDateTime .of (currentYear , 9 , 1 , 0 , 0 );
73
+ LocalDateTime until = LocalDateTime .of (currentYear , 11 , 30 , 23 , 59 , 59 );
74
+
75
+ List <SinceCommitResponseDto > sinceCommits = sinceCommitService .getSinceCommits (owner , repo , since , until );
76
+
77
+ return ResponseEntity .ok (sinceCommits );
78
+ }
79
+
80
+ // 겨울 시즌
81
+ @ GetMapping ("/api/github/commits-winter" )
82
+ public ResponseEntity <List <SinceCommitResponseDto >> getWinterSeasonCommits (
83
+ @ RequestParam String owner ,
84
+ @ RequestParam String repo
85
+ ) {
86
+ int currentYear = LocalDateTime .now ().getYear ();
87
+ LocalDateTime since = LocalDateTime .of (currentYear , 12 , 1 , 0 , 0 );
88
+ LocalDateTime until = LocalDateTime .of (currentYear + 1 , 2 , 1 , 23 , 59 , 59 )
89
+ .with (TemporalAdjusters .lastDayOfMonth ()); // 윤년 고려
90
+
91
+ List <SinceCommitResponseDto > sinceCommits = sinceCommitService .getSinceCommits (owner , repo , since , until );
92
+
93
+ return ResponseEntity .ok (sinceCommits );
94
+ }
31
95
}
0 commit comments