1010
1111import org .springframework .data .domain .Page ;
1212import org .springframework .data .domain .Pageable ;
13- import org .springframework .data .redis .core .RedisTemplate ;
1413import org .springframework .stereotype .Service ;
1514import org .springframework .transaction .annotation .Transactional ;
1615
1716import lombok .RequiredArgsConstructor ;
1817import lombok .extern .slf4j .Slf4j ;
1918import umc .th .juinjang .api .checklist .service .ChecklistAnswerFinder ;
19+ import umc .th .juinjang .api .checklist .service .ReportFinder ;
2020import umc .th .juinjang .api .checklist .service .response .ChecklistAnswerResponseDTO ;
21+ import umc .th .juinjang .api .checklist .service .response .ReportGetResponse ;
22+ import umc .th .juinjang .api .checklist .service .response .ReportWithLimjangResponseDTO ;
23+ import umc .th .juinjang .api .limjang .service .response .LimjangDetailGetResponse ;
2124import umc .th .juinjang .api .note .liked .service .LikedNoteFinder ;
22- import umc .th .juinjang .api .note .shared .service .response .SharedNoteCheckListAndReviewResponse ;
2325import umc .th .juinjang .api .note .shared .controller .request .ExploreSortType ;
2426import umc .th .juinjang .api .note .shared .controller .request .NoteType ;
27+ import umc .th .juinjang .api .note .shared .service .response .SharedNoteCheckListAndReviewResponse ;
2528import umc .th .juinjang .api .note .shared .service .response .SharedNoteExploreGetResponse ;
2629import umc .th .juinjang .api .note .shared .service .response .SharedNoteGetResponse ;
2730import umc .th .juinjang .api .note .shared .service .response .UserSharedNotesGetResponse ;
3538import umc .th .juinjang .domain .note .liked .model .LikedNote ;
3639import umc .th .juinjang .domain .note .shared .model .SharedNote ;
3740import umc .th .juinjang .domain .pencil .used .model .UsedPencil ;
41+ import umc .th .juinjang .domain .report .model .Report ;
3842import umc .th .juinjang .event .publisher .ApplicationRewardViewCountPublisherAdapter ;
3943
4044@ Service
@@ -48,6 +52,7 @@ public class SharedNoteQueryService {
4852 private final ChecklistAnswerFinder checklistAnswerFinder ;
4953 private final ViewCountService viewCountService ;
5054 private final ApplicationRewardViewCountPublisherAdapter applicationRewardViewCountPublisherAdapter ;
55+ private final ReportFinder reportFinder ;
5156
5257 @ Transactional (readOnly = true )
5358 public SharedNoteGetResponse findSharedNote (Member member , Long sharedNoteId ) {
@@ -200,4 +205,11 @@ public SharedNoteCheckListAndReviewResponse findChecklistAndReview(Member member
200205 String review = isOwned ? sharedNote .getReview () : null ;
201206 return new SharedNoteCheckListAndReviewResponse (review , answers );
202207 }
208+
209+ public ReportWithLimjangResponseDTO getReportBySharedNoteId (Long sharedNoteId ) {
210+ SharedNote sharedNote = sharedNoteFinder .findByIdWithNoteAndAddress (sharedNoteId );
211+ Limjang note = sharedNote .getLimjang ();
212+ Report report = reportFinder .findReportByNote (note );
213+ return new ReportWithLimjangResponseDTO (ReportGetResponse .of (report ), LimjangDetailGetResponse .of (note ));
214+ }
203215}
0 commit comments