11package com .haru .api .domain .moodTracker .service ;
22
3+ import com .haru .api .domain .lastOpened .entity .UserDocumentId ;
4+ import com .haru .api .domain .lastOpened .service .UserDocumentLastOpenedService ;
35import com .haru .api .domain .moodTracker .converter .MoodTrackerConverter ;
46import com .haru .api .domain .moodTracker .dto .MoodTrackerResponseDTO ;
57import com .haru .api .domain .moodTracker .entity .MoodTracker ;
1113import com .haru .api .domain .userWorkspace .entity .enums .Auth ;
1214import com .haru .api .domain .userWorkspace .repository .UserWorkspaceRepository ;
1315import com .haru .api .domain .workspace .entity .Workspace ;
14- import com .haru .api .global .annotation .TrackLastOpened ;
1516import com .haru .api .global .apiPayload .code .status .ErrorStatus ;
1617import com .haru .api .global .apiPayload .exception .handler .MoodTrackerHandler ;
1718import com .haru .api .global .apiPayload .exception .handler .UserWorkspaceHandler ;
@@ -37,6 +38,8 @@ public class MoodTrackerQueryServiceImpl implements MoodTrackerQueryService {
3738
3839 private final SurveyQuestionRepository surveyQuestionRepository ;
3940
41+ private final UserDocumentLastOpenedService userDocumentLastOpenedService ;
42+
4043 @ Override
4144 public MoodTrackerResponseDTO .PreviewList getPreviewList (User user , Workspace workspace ) {
4245
@@ -85,10 +88,17 @@ public MoodTrackerResponseDTO.QuestionResult getQuestionResult(Long moodTrackerI
8588 }
8689
8790 @ Override
88- @ Transactional (readOnly = true )
89- @ TrackLastOpened
91+ @ Transactional
9092 public MoodTrackerResponseDTO .ReportResult getReportResult (User user , MoodTracker moodTracker ) {
9193
94+ // 최근 문서 조회 동기화
95+ Long workspaceId = moodTracker .getWorkspaceId ();
96+ String title = moodTracker .getTitle ();
97+
98+ UserDocumentId userDocumentId = new UserDocumentId (user .getId (), moodTracker .getId (), moodTracker .getDocumentType ());
99+
100+ userDocumentLastOpenedService .updateLastOpened (userDocumentId , workspaceId , title );
101+
92102 // 권한 확인
93103 UserWorkspace userWorkspace = userWorkspaceRepository .findByWorkspaceIdAndUserId (
94104 moodTracker .getWorkspace ().getId (), user .getId ()
@@ -117,10 +127,17 @@ public MoodTrackerResponseDTO.ReportResult getReportResult(User user, MoodTracke
117127 }
118128
119129 @ Override
120- @ Transactional (readOnly = true )
121- @ TrackLastOpened
130+ @ Transactional
122131 public MoodTrackerResponseDTO .ResponseResult getResponseResult (User user , MoodTracker moodTracker ) {
123132
133+ // 최근 문서 조회 동기화
134+ Long workspaceId = moodTracker .getWorkspaceId ();
135+ String title = moodTracker .getTitle ();
136+
137+ UserDocumentId userDocumentId = new UserDocumentId (user .getId (), moodTracker .getId (), moodTracker .getDocumentType ());
138+
139+ userDocumentLastOpenedService .updateLastOpened (userDocumentId , workspaceId , title );
140+
124141 // 권한 확인
125142 UserWorkspace userWorkspace = userWorkspaceRepository .findByWorkspaceIdAndUserId (
126143 moodTracker .getWorkspace ().getId (), user .getId ()
0 commit comments