11package com .backend .domain .analysis .controller ;
22
3- import com .backend .domain .analysis .dto .HistoryResponseDto ;
3+ import com .backend .domain .analysis .dto .response .AnalysisResultResponseDto ;
4+ import com .backend .domain .analysis .dto .response .HistoryResponseDto ;
45import com .backend .domain .analysis .dto .request .AnalysisRequest ;
56import com .backend .domain .analysis .entity .AnalysisResult ;
67import com .backend .domain .analysis .entity .Score ;
78import com .backend .domain .analysis .service .AnalysisService ;
8- import com .backend .domain .repository .entity .Language ;
99import com .backend .domain .repository .entity .Repositories ;
10- import com .backend .domain .repository .entity .RepositoryLanguage ;
1110import com .backend .domain .repository .service .RepositoryService ;
12- import com .backend .global .exception .BusinessException ;
13- import com .backend .global .exception .ErrorCode ;
1411import com .backend .global .response .ApiResponse ;
1512import lombok .RequiredArgsConstructor ;
1613import org .springframework .http .ResponseEntity ;
@@ -34,14 +31,14 @@ public ResponseEntity<ApiResponse<Void>> analyzeRepository(@RequestBody Analysis
3431 return ResponseEntity .ok (ApiResponse .success ());
3532 }
3633
37- @ GetMapping ("/user/{memberId}" )
34+ @ GetMapping ("/user/repository/ {memberId}" )
3835 @ Transactional (readOnly = true )
3936 public ResponseEntity <List <HistoryResponseDto >> getMemberHistory (@ PathVariable Long memberId ){
4037 List <Repositories > repositories = repositoryService .findRepositoryByMember (memberId );
4138 List <HistoryResponseDto > historyList = new ArrayList <>();
4239
4340 for (Repositories repo : repositories ) {
44- Optional <AnalysisResult > optionalAnalysis = analysisService .findAnalysisResultByRepositoryId (repo .getId ());
41+ Optional <AnalysisResult > optionalAnalysis = analysisService .findByRepositoryId (repo .getId ());
4542
4643 if (optionalAnalysis .isPresent ()) { // 존재하는지 확인
4744 AnalysisResult analysisResult = optionalAnalysis .get ();
@@ -62,4 +59,20 @@ public ResponseEntity<List<HistoryResponseDto>> getMemberHistory(@PathVariable L
6259
6360 return ResponseEntity .ok (historyList );
6461 }
62+
63+ @ GetMapping ("repository/{repositoriesId}" )
64+ @ Transactional (readOnly = true )
65+ public ResponseEntity <List <AnalysisResultResponseDto >> getAnalysisByRepositoriesId (@ PathVariable ("repositoriesId" ) Long repoId ){
66+ List <AnalysisResult > optionalResult = analysisService .getAnalysisResultList (repoId );
67+ List <AnalysisResultResponseDto > resultList = new ArrayList <>();
68+
69+
70+ for (AnalysisResult result : optionalResult ){
71+ Score score = result .getScore ();
72+ AnalysisResultResponseDto dto = new AnalysisResultResponseDto (result , score );
73+ resultList .add (dto );
74+ }
75+
76+ return ResponseEntity .ok (resultList );
77+ }
6578}
0 commit comments