From e55b6bf6ec579bf537deb6fff0c6330f10a394d9 Mon Sep 17 00:00:00 2001 From: Rinjae Date: Sun, 18 Jan 2026 18:22:33 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B2=8C=EC=8B=9C=ED=8C=90=20=EA=B4=80?= =?UTF-8?q?=EB=A6=AC=20=EA=B8=B0=EB=8A=A5=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apim/portalinquiry/portalInquiryMan.jsp | 69 ++++++++++++++----- .../portalinquiry/PortalInquiryService.java | 5 ++ .../PortalInquiryManController.java | 6 ++ .../PortalInquiryManService.java | 11 +++ 4 files changed, 75 insertions(+), 16 deletions(-) diff --git a/WebContent/jsp/onl/apim/portalinquiry/portalInquiryMan.jsp b/WebContent/jsp/onl/apim/portalinquiry/portalInquiryMan.jsp index 0e75f95..37de99d 100644 --- a/WebContent/jsp/onl/apim/portalinquiry/portalInquiryMan.jsp +++ b/WebContent/jsp/onl/apim/portalinquiry/portalInquiryMan.jsp @@ -18,6 +18,7 @@ var url = ''; var url_view = ''; var select_orgId = ""; + function formatInquiryStatus(cellvalue, options, rowObject) { return cellvalue === 'PENDING' ? '문의중' @@ -30,6 +31,37 @@ return cellvalue + icon; } + function deleteSelectedRows() { + var selectedIds = $("#grid").jqGrid('getGridParam', 'selarrrow'); + + if (selectedIds.length === 0) { + alert('항목을 선택하세요.'); + return; + } + + if (!confirm('선택된 ' + selectedIds.length + '개 항목을 삭제하시겠습니까?')) { + return; + } + + $.ajax({ + type: "POST", + url: url, + dataType: "json", + data: { + cmd: 'DELETE_BULK', + ids: selectedIds.join(',') + }, + success: function(data) { + alert('삭제되었습니다.'); + $("#grid").jqGrid('clearGridData', true); + $("#grid").trigger("reloadGrid"); + }, + error: function(e) { + alert('삭제 중 오류가 발생했습니다.'); + } + }); + } + function init(){ $.ajax({ type : "POST", @@ -60,10 +92,10 @@ mtype: 'POST', url: url, postData : { cmd : 'LIST' }, - colNames:['id', 'No.', '제목', '법인명', '상태', '작성자', '등록일', '답변자','답변일'], + colNames:['No.', 'id', '제목', '법인명', '상태', '작성자', '등록일', '답변자','답변일'], colModel:[ - { name : 'id' , align:'center', key:true, hidden:true}, { name : 'rowNum' , align:'center', width:50, sortable:false }, + { name : 'id' , align:'center', key:true, hidden:true}, { name : 'inquirySubject' , align:'left' , width:200 , formatter: formatFile}, { name : 'orgName' , align:'center' , width:100 , }, { name : 'inquiryStatus' , align:'center', width:70, formatter: formatInquiryStatus }, @@ -83,6 +115,19 @@ autowidth: true, viewrecords: true, rowList : eval('[${rmsDefaultRowList}]'), + multiselect: true, + multiboxonly: true, + loadComplete: function() { + var records = $(this).getGridParam('records'); + var page = $(this).getGridParam('page'); + var rowNum = $(this).getGridParam('rowNum'); + var rows = $(this).getDataIDs(); + + for (var i = 0; i < rows.length; i++) { + var number = ((page - 1) * rowNum + i) + 1; + $(this).setCell(rows[i], 'rowNum', number); + } + }, ondblClickRow: function(rowId) { var rowData = $(this).getRowData(rowId); var id = rowData['id']; @@ -94,19 +139,6 @@ url2 += '&id='+id; goNav(url2); }, - gridComplete: function() { - var records = $(this).getGridParam('records'); - var page = $(this).getGridParam('page'); - var rowNum = $(this).getGridParam('rowNum'); - var rows = $(this).getDataIDs(); - var colModel = $(this).getGridParam("colModel"); - - for (var i = 0; i < rows.length; i++) { - var number = ((page - 1) * rowNum + i) + 1; - // var reverseNumber = records - ((page - 1) * rowNum + i); - $(this).setCell(rows[i], 'rowNum', number); - } - }, loadError: function (jqXHR, textStatus, errorThrown) { var location ='<%=request.getContextPath()%>/'; comloadError(jqXHR, textStatus, errorThrown ,location); @@ -131,6 +163,10 @@ goNav(url2); }); + $("#btn_delete_selected").click(function(){ + deleteSelectedRows(); + }); + $("input[name^=search]").keydown(function(key){ if (key.keyCode == 13){ $("#btn_search").click(); @@ -151,6 +187,7 @@
+
Q&A 목록Q&A를 관리합니다.
@@ -189,4 +226,4 @@
- \ No newline at end of file + diff --git a/src/main/java/com/eactive/eai/rms/data/entity/onl/apim/portalinquiry/PortalInquiryService.java b/src/main/java/com/eactive/eai/rms/data/entity/onl/apim/portalinquiry/PortalInquiryService.java index f580eba..007ce61 100644 --- a/src/main/java/com/eactive/eai/rms/data/entity/onl/apim/portalinquiry/PortalInquiryService.java +++ b/src/main/java/com/eactive/eai/rms/data/entity/onl/apim/portalinquiry/PortalInquiryService.java @@ -9,6 +9,7 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; @Service @Transactional(transactionManager = "transactionManagerForEMS") @@ -38,4 +39,8 @@ public class PortalInquiryService extends AbstractEMSDataSerivce ids) { + repository.deleteAllById(ids); + } } \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManController.java b/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManController.java index b05bf0d..a87c6ee 100644 --- a/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManController.java +++ b/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManController.java @@ -68,4 +68,10 @@ public class PortalInquiryManController extends BaseAnnotationController { return ResponseEntity.ok().build(); } + @PostMapping(value = "/onl/apim/portalinquiry/portalInquiryMan.json", params = "cmd=DELETE_BULK") + public ResponseEntity deleteBulk(String ids) { + portalInquiryManService.deleteBulk(ids); + return ResponseEntity.ok().build(); + } + } diff --git a/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManService.java b/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManService.java index 58568aa..f8549d1 100644 --- a/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManService.java +++ b/src/main/java/com/eactive/eai/rms/onl/apim/portalInquiry/PortalInquiryManService.java @@ -20,6 +20,8 @@ import org.springframework.transaction.annotation.Transactional; import lombok.extern.slf4j.Slf4j; import java.time.LocalDateTime; +import java.util.Arrays; +import java.util.List; @Service @Transactional(transactionManager = "transactionManagerForEMS") @@ -151,4 +153,13 @@ public class PortalInquiryManService extends BaseService { portalInquiryService.save(inquiry); } + public void deleteBulk(String ids) { + if (StringUtils.isBlank(ids)) { + return; + } + + List idList = Arrays.asList(ids.split(",")); + portalInquiryService.deleteByIds(idList); + } + }