@@ -174,16 +174,30 @@ public void deleteMeeting(User user, Meeting meeting) {
174174 @ Override
175175 @ Transactional
176176 public void adjustProceeding (User user , Meeting meeting , MeetingRequestDTO .meetingProceedingRequest newProceeding ){
177+ Meeting foundMeeting = meetingRepository .findById (meeting .getId ())
178+ .orElseThrow (() -> new MeetingHandler (ErrorStatus .MEETING_NOT_FOUND ));
177179
178- UserWorkspace foundUserWorkspace = userWorkspaceRepository .findByUserIdAndWorkspaceId (user .getId (), meeting .getWorkspace ().getId ())
180+ UserWorkspace foundUserWorkspace = userWorkspaceRepository .findByUserIdAndWorkspaceId (user .getId (), foundMeeting .getWorkspace ().getId ())
179181 .orElseThrow (() -> new UserWorkspaceHandler (ErrorStatus .USER_WORKSPACE_NOT_FOUND ));
180182
181- if (!meeting .getCreator ().getId ().equals (user .getId ()) && !foundUserWorkspace .getAuth ().equals (Auth .ADMIN )) {
183+ if (!foundMeeting .getCreator ().getId ().equals (user .getId ()) && !foundUserWorkspace .getAuth ().equals (Auth .ADMIN )) {
182184 throw new MemberHandler (ErrorStatus .MEMBER_NO_AUTHORITY );
183185 }
186+ String editedProceeding = newProceeding .getProceeding ();
187+ foundMeeting .updateProceeding (editedProceeding );
188+ try {
189+ // 생성된 PDF를 S3에 업로드
190+ String pdfKey = markdownFileUploader .createOrUpdatePdf (editedProceeding , "meeting/pdf" , meeting .getProceedingPdfKeyName (), meeting .getTitle ());
191+ String wordKey = markdownFileUploader .createOrUpdateWord (editedProceeding , "meeting/word" , meeting .getProceedingWordKeyName (), meeting .getTitle ());
184192
185- meeting .updateProceeding (newProceeding .getProceeding ());
186- meetingRepository .save (meeting );
193+ // 썸네일 생성 및 업데이트
194+ String newThumbnailKey = markdownFileUploader .createOrUpdateThumbnail (pdfKey , "meeting" + meeting .getId (), meeting .getThumbnailKeyName ());
195+ log .info ("회의록 썸네일 생성/업데이트 완료. Key: {}" , newThumbnailKey );
196+
197+ } catch (Exception e ) {
198+ log .error ("meetingId: {}의 PDF 또는 썸네일 생성/업로드 중 에러 발생" , meeting .getId (), e );
199+ throw new RuntimeException ("파일 갱신 중 오류가 발생했습니다." , e );
200+ }
187201
188202 }
189203
0 commit comments