diff --git a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/AffairController.java b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/AffairController.java index 571b44f0..8ed51df8 100644 --- a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/AffairController.java +++ b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/AffairController.java @@ -6,6 +6,7 @@ import com.dbnt.faisp.main.fpiMgt.affair.model.AffairBoard; import com.dbnt.faisp.main.fpiMgt.affair.model.AffairRating; import com.dbnt.faisp.main.fpiMgt.affair.service.AffairService; import com.dbnt.faisp.main.organMgt.service.OrganConfigService; +import com.dbnt.faisp.main.publicBoard.model.PublicBoard; import com.dbnt.faisp.main.userInfo.model.UserInfo; import lombok.RequiredArgsConstructor; import org.springframework.security.core.annotation.AuthenticationPrincipal; @@ -196,4 +197,11 @@ public class AffairController { // 첩보수집활동 > 외사경찰 견문관 mav.addObject("affairRating", affairService.getAffairRating(affairBoard, affairBoard.getWrtOrgan())); return mav; } + + + @PostMapping("/deleteAffair") + @ResponseBody + public void deleteAffair (@RequestBody AffairBoard affair){ + affairService.deleteAffair(affair.getAffairKey()); + } } diff --git a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/repository/AffairRatingRepository.java b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/repository/AffairRatingRepository.java index 7300417e..64b8b477 100644 --- a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/repository/AffairRatingRepository.java +++ b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/repository/AffairRatingRepository.java @@ -2,6 +2,8 @@ package com.dbnt.faisp.main.fpiMgt.affair.repository; import com.dbnt.faisp.main.fpiMgt.affair.model.AffairRating; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; import java.util.List; @@ -9,5 +11,7 @@ import java.util.List; public interface AffairRatingRepository extends JpaRepository { List findByAffairKeyOrderByRatingOrganAsc(Integer affairKey); - void deleteByAffairKey(Integer affairKey); + @Modifying(clearAutomatically = true) + @Query("update AffairRating set affairStatus = :affairStatus where affairKey = :affairKey") + void bulkModifyingByAffairKeyToAffairStatus(Integer affairKey, String affairStatus); } diff --git a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/service/AffairService.java b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/service/AffairService.java index 8b150260..f20146b8 100644 --- a/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/service/AffairService.java +++ b/src/main/java/com/dbnt/faisp/main/fpiMgt/affair/service/AffairService.java @@ -355,4 +355,9 @@ public class AffairService extends BaseService { // 견문보고 public List selectApprvStayList(DashboardAffair affair) { return affairMapper.selectApprvStayList(affair); } + + @Transactional + public void deleteAffair(Integer affairKey) { + affairRatingRepository.bulkModifyingByAffairKeyToAffairStatus(affairKey, "DST008"); + } } diff --git a/src/main/resources/mybatisMapper/AffairMapper.xml b/src/main/resources/mybatisMapper/AffairMapper.xml index 42de53f4..50400ea7 100644 --- a/src/main/resources/mybatisMapper/AffairMapper.xml +++ b/src/main/resources/mybatisMapper/AffairMapper.xml @@ -6,6 +6,7 @@ + c.affair_status <> 'DST008' and a.affair_category = #{affairCategory} diff --git a/src/main/resources/static/js/igActivities/fpiMgt/affairMgt.js b/src/main/resources/static/js/igActivities/fpiMgt/affairMgt.js index 784ed815..0565adac 100644 --- a/src/main/resources/static/js/igActivities/fpiMgt/affairMgt.js +++ b/src/main/resources/static/js/igActivities/fpiMgt/affairMgt.js @@ -228,6 +228,29 @@ $(document).on('click', '#fileDownBtn', function (){ } }) +$(document).on('click', '#deleteBtn', function (){ + if(confirm("삭제하시겠습니까?\n되돌릴 수 없습니다.")){ + contentFade("in"); + $.ajax({ + type : 'POST', + data : JSON.stringify({affairKey: $("#viewModalAffairKey").val()}), + url : "/affair/deleteAffair", + contentType: 'application/json', + beforeSend: function (xhr){ + xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val()); + }, + success : function(result) { + alert("삭제되었습니다."); + location.reload(); + }, + error : function(xhr, status) { + alert("삭제를 실패하였습니다.") + contentFade("out"); + } + }) + } +}) + function getAffairViewModal(affairKey){ $.ajax({ url: '/affair/affairViewModal', diff --git a/src/main/resources/templates/igActivities/fpiMgt/affair/affairViewModal.html b/src/main/resources/templates/igActivities/fpiMgt/affair/affairViewModal.html index 72dd3249..62378071 100644 --- a/src/main/resources/templates/igActivities/fpiMgt/affair/affairViewModal.html +++ b/src/main/resources/templates/igActivities/fpiMgt/affair/affairViewModal.html @@ -342,7 +342,8 @@ - + + @@ -352,6 +353,7 @@ + diff --git a/src/main/resources/templates/publicBoard/board/boardPage.html b/src/main/resources/templates/publicBoard/board/boardPage.html index c1019023..45c13083 100644 --- a/src/main/resources/templates/publicBoard/board/boardPage.html +++ b/src/main/resources/templates/publicBoard/board/boardPage.html @@ -81,18 +81,24 @@ - + + - + + + - + + + - + + diff --git a/src/main/resources/templates/publicBoard/qna/qnaPage.html b/src/main/resources/templates/publicBoard/qna/qnaPage.html index b4dca8d2..95ac3261 100644 --- a/src/main/resources/templates/publicBoard/qna/qnaPage.html +++ b/src/main/resources/templates/publicBoard/qna/qnaPage.html @@ -82,18 +82,24 @@ - + + - + + + - + + + - + +