박현정 박현정 07-25
250725 박현정 프로젝트 수정 기능 관련 수정
@45d0907021a348bd8f375f18bb94f798d34346af
src/main/java/kr/co/takensoft/ai/system/project/service/impl/ProjectServiceImpl.java
--- src/main/java/kr/co/takensoft/ai/system/project/service/impl/ProjectServiceImpl.java
+++ src/main/java/kr/co/takensoft/ai/system/project/service/impl/ProjectServiceImpl.java
@@ -154,14 +154,21 @@
             projectDAO.unsetProjectMain(projectVO.getProjectGroupId()); // 기존 프로젝트를 대표 프로젝트 해제
 
             String updateProjectId = projectIdgn.getNextStringId(); // 프로젝트 구분 아이디 생성
-            projectImageService.saveProjectImage(projectId, request.getImageFile()); // 프로젝트 이미지 객체 생성
+
+            if(request.getImageFile() == null || request.getImageFile().isEmpty()) { // 기존 이미지를 유지하는 경우
+                ProjectImageVO imageVO = projectImageService.findImage(projectVO.getImageId()); // 기존 프로젝트 이미지 가져오기
+                projectImageService.copyProjectImage(updateProjectId, imageVO.getFileName(), imageVO.getFileUrl()); // 기존 프로젝트 이미지 복사
+            } else { // 새로운 이미지로 변경하는 경우
+                projectImageService.saveProjectImage(updateProjectId, request.getImageFile()); // 프로젝트 이미지 객체 생성
+            }
+
             projectCommentService.saveProjectComment(memberId, updateProjectId, request.getSummary(), request.getComment()); // 프로젝트 주석 객체 생성
             String projectName = projectVO.getProjectName(); // 기존 프로젝트 이름 가져오기
             ProjectVO updateProjectVO = new ProjectVO(updateProjectId, projectGroupId, projectName); // 프로젝트 정보 등록(새로운 버전)
             return projectDAO.saveProject(updateProjectVO);
         }  catch (Exception e) {
             e.printStackTrace();
-            return -1;
+            throw e;
         }
     }
 
src/main/java/kr/co/takensoft/ai/system/project/web/ProjectController.java
--- src/main/java/kr/co/takensoft/ai/system/project/web/ProjectController.java
+++ src/main/java/kr/co/takensoft/ai/system/project/web/ProjectController.java
@@ -66,7 +66,7 @@
      *
      * 프로젝트 정보 수정
      */
-    @PostMapping("/{projectId}/updateProject.json")
+    @PostMapping("/{projectId}/updateProject.file")
     public ResponseEntity<?> updateCategory(@PathVariable String projectId, @ModelAttribute UpdateProjectDTO request) {
         HashMap<String, Object> result = new HashMap<>();
         result.put("result", projectService.updateProject(projectId, request));
src/main/java/kr/co/takensoft/ai/system/projectMember/service/impl/ProjectMemberServiceImpl.java
--- src/main/java/kr/co/takensoft/ai/system/projectMember/service/impl/ProjectMemberServiceImpl.java
+++ src/main/java/kr/co/takensoft/ai/system/projectMember/service/impl/ProjectMemberServiceImpl.java
@@ -56,11 +56,7 @@
     @Override
     public void validateProjectMember(String projectGroupId, String memberId) {
         if(!projectMemberDAO.existsByProjectGroupIdAndMemberId(projectGroupId, memberId)){
-            try {
-                throw new IllegalAccessException("이 프로젝트에 참여한 멤버가 아닙니다.");
-            } catch (IllegalAccessException e) {
-                e.printStackTrace();
-            }
+            throw new IllegalArgumentException("이 프로젝트에 참여한 멤버가 아닙니다.");
         }
     }
 
src/main/resources/mybatis/mapper/chatMsg/chatMsg-SQL.xml
--- src/main/resources/mybatis/mapper/chatMsg/chatMsg-SQL.xml
+++ src/main/resources/mybatis/mapper/chatMsg/chatMsg-SQL.xml
@@ -62,6 +62,7 @@
         FROM chat_msg cm
         LEFT JOIN member m ON cm.sender_id = m.member_id
         WHERE chat_room_id = #{chatRoomId}
+        ORDER BY cm.created_at
     </select>
 
 
src/main/resources/mybatis/mapper/project/project-SQL.xml
--- src/main/resources/mybatis/mapper/project/project-SQL.xml
+++ src/main/resources/mybatis/mapper/project/project-SQL.xml
@@ -71,12 +71,10 @@
             TO_CHAR(p.created_at, 'YYYY-MM-DD HH24:MI') AS created_at,
             TO_CHAR(p.updated_at, 'YYYY-MM-DD HH24:MI') AS updated_at
         FROM project p
-        LEFT JOIN project_comment c ON p.project_id = c.project_id
-        LEFT JOIN project_image i ON p.project_id = i.project_id
+        LEFT JOIN project_comment c ON p.project_id = c.project_id and c.use_at = 'Y'
+        LEFT JOIN project_image i ON p.project_id = i.project_id and i.use_at = 'Y'
         WHERE p.project_id = #{projectId}
         AND p.use_at = 'Y'
-        AND c.use_at = 'Y'
-        AND i.use_at = 'Y'
     </select>
 
     <!--
Add a comment
List