From 47f9629fbb2f914ec331b843b142f1edca1b12e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EC=84=9D=20=EC=B5=9C?= Date: Mon, 10 Jul 2023 16:37:58 +0900 Subject: [PATCH] =?UTF-8?q?=EC=99=B8=EC=82=AC=ED=86=B5=EA=B3=84=20>=20?= =?UTF-8?q?=EB=B6=88=EB=B2=95=EC=A1=B0=EC=97=85=20=EC=99=B8=EA=B5=AD?= =?UTF-8?q?=EC=96=B4=EC=84=A0=20>=20=EC=B2=98=EB=A6=AC=ED=98=84=ED=99=A9?= =?UTF-8?q?=20=EC=9E=AC=EC=9E=91=EC=97=85=20=EC=99=84=EB=A3=8C.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UnlawfulFishingController.java | 19 +- .../ProcessResultBaseEntity.java | 3 + .../model/processResult/ShipProcessInfo.java | 8 + .../repository/ShipProcessInfoRepository.java | 10 +- .../service/UnlawfulFishingService.java | 11 +- .../mybatisMapper/UnlawfulFishingMapper.xml | 27 +- .../unlawfulFishing/illegalShipInfo.js | 5 +- .../unlawfulFishing/shipProcessInfo.js | 85 ++ .../illegalShipInfo/illegalShipInfoPage.html | 13 + .../illegalShipInfo/isiViewModal.html | 4 +- .../shipProcessInfo/shipProcessInfoPage.html | 54 +- .../shipProcessInfo/spiEditModal.html | 6 +- .../shipProcessInfo/spiHistoryDiv.html | 100 +++ .../shipProcessInfo/spiViewModal.html | 753 +++++++----------- 14 files changed, 617 insertions(+), 481 deletions(-) create mode 100644 src/main/resources/templates/faStatistics/unlawfulFishing/shipProcessInfo/spiHistoryDiv.html diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/UnlawfulFishingController.java b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/UnlawfulFishingController.java index ea18cd33..0123d626 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/UnlawfulFishingController.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/UnlawfulFishingController.java @@ -7,6 +7,7 @@ import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.crackdownStatus.*; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfo; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfoHistory; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfo; +import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfoHistory; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.sailor.IllegalShipSailor; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.service.UnlawfulFishingService; import com.dbnt.faisp.main.userInfo.model.UserInfo; @@ -200,6 +201,7 @@ public class UnlawfulFishingController { ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/shipProcessInfo/spiEditModal"); if(shipProcessInfo.getPrKey()!=null){ shipProcessInfo = unlawfulFishingService.selectShipProcessInfo(shipProcessInfo.getPrKey()); + shipProcessInfo.setBoatNameKr(unlawfulFishingService.selectIllegalShipInfo(shipProcessInfo.getFbKey()).getBoatNameKr()); }else{ shipProcessInfo.setWrtOrgan(loginUser.getOgCd()); shipProcessInfo.setWrtPart(loginUser.getOfcCd()); @@ -214,9 +216,9 @@ public class UnlawfulFishingController { @GetMapping("/spiViewModal") public ModelAndView shipProcessInfoViewModal(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo spi){ - ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/illegalShipInfo/spiViewModal"); + ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/shipProcessInfo/spiViewModal"); spi = unlawfulFishingService.selectShipProcessInfo(spi.getPrKey()); - spi.setHistoryList(unlawfulFishingService.selectShipProcessInfoHistory(spi.getPrKey())); + spi.setHistoryList(unlawfulFishingService.selectShipProcessInfoHistoryList(spi.getPrKey())); mav.addObject("processInfo", spi); IllegalShipInfo shipInfo = unlawfulFishingService.selectIllegalShipInfo(spi.getFbKey()); mav.addObject("shipInfo", shipInfo); @@ -229,6 +231,19 @@ public class UnlawfulFishingController { return mav; } + @GetMapping("/spiHistoryDiv") + public ModelAndView spiHistoryDiv(ShipProcessInfoHistory spih){ + ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/shipProcessInfo/spiHistoryDiv"); + spih = unlawfulFishingService.selectShipProcessInfoHistory(spih.getPrKey(), spih.getVersionNo()); + mav.addObject("processInfo", spih); + return mav; + } + + @PostMapping("/deleteShipProcessInfo") + public void deleteShipProcessInfo(ShipProcessInfo shipProcessInfo){ + unlawfulFishingService.deleteShipProcessInfo(shipProcessInfo.getPrKey()); + } + @PostMapping("/saveShipProcessInfo") public Integer saveShipProcessInfo(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo processInfo){ processInfo.setWrtDt(LocalDateTime.now()); diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ProcessResultBaseEntity.java b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ProcessResultBaseEntity.java index 16d7566c..e9d5bdd8 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ProcessResultBaseEntity.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ProcessResultBaseEntity.java @@ -124,4 +124,7 @@ public class ProcessResultBaseEntity extends BaseModel { @Column(name = "release_dt") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") private LocalDateTime releaseDt; + + @Column(name = "distance") + private String distance; } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ShipProcessInfo.java b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ShipProcessInfo.java index 58a2f819..5b406bde 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ShipProcessInfo.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/model/processResult/ShipProcessInfo.java @@ -34,6 +34,14 @@ public class ShipProcessInfo extends ProcessResultBaseEntity { @Column(name="status") private String status; + @Transient + private String caseNum; + @Transient + private String boatNameKr; + @Transient + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm") + private LocalDateTime napoDt; + @Transient private List historyList; } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/repository/ShipProcessInfoRepository.java b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/repository/ShipProcessInfoRepository.java index 5e889efb..0d5e7313 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/repository/ShipProcessInfoRepository.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/repository/ShipProcessInfoRepository.java @@ -2,10 +2,16 @@ package com.dbnt.faisp.main.faStatistics.unlawfulFishing.repository; import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfo; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; import java.util.Optional; public interface ShipProcessInfoRepository extends JpaRepository { - Optional findByFbKey(Integer fbKey); - Optional findByPrKey(Integer prKey); + Optional findByFbKey(Integer fbKey); + Optional findByPrKey(Integer prKey); + + @Modifying(clearAutomatically = true) + @Query("update ShipProcessInfo set status = :status where prKey = :prKey") + void bulkModifyingByPrKeyToStatus(Integer prKey, String status); } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/service/UnlawfulFishingService.java b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/service/UnlawfulFishingService.java index 031b9d05..ca98c245 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/service/UnlawfulFishingService.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/unlawfulFishing/service/UnlawfulFishingService.java @@ -168,10 +168,19 @@ public class UnlawfulFishingService { return spiRepository.findByPrKey(prKey).orElse(new ShipProcessInfo()); } - public List selectShipProcessInfoHistory(Integer prKey) { + public List selectShipProcessInfoHistoryList(Integer prKey) { return spihRepository.findByPrKeyOrderByVersionNoDesc(prKey); } + public ShipProcessInfoHistory selectShipProcessInfoHistory(Integer prKey, Integer versionNo) { + return spihRepository.findById(new ShipProcessInfoHistory.ShipProcessInfoHistoryId(prKey, versionNo)).orElse(null); + } + + @Transactional + public void deleteShipProcessInfo(Integer prKey){ + spiRepository.bulkModifyingByPrKeyToStatus(prKey, "DST008"); + } + public IllegalShipSailor selectIllegalShipSailor(Integer sailorKey) { return issRepository.findBySailorKey(sailorKey).orElse(new IllegalShipSailor()); } diff --git a/src/main/resources/mybatisMapper/UnlawfulFishingMapper.xml b/src/main/resources/mybatisMapper/UnlawfulFishingMapper.xml index 0e55b205..9dfbaf0d 100644 --- a/src/main/resources/mybatisMapper/UnlawfulFishingMapper.xml +++ b/src/main/resources/mybatisMapper/UnlawfulFishingMapper.xml @@ -171,9 +171,32 @@ + + where a.status <> 'DST008' + \ No newline at end of file diff --git a/src/main/resources/static/js/faStatistics/unlawfulFishing/illegalShipInfo.js b/src/main/resources/static/js/faStatistics/unlawfulFishing/illegalShipInfo.js index 79bb305e..87e57a9b 100644 --- a/src/main/resources/static/js/faStatistics/unlawfulFishing/illegalShipInfo.js +++ b/src/main/resources/static/js/faStatistics/unlawfulFishing/illegalShipInfo.js @@ -48,7 +48,10 @@ $(document).on('click', '#deleteShipInfoBtn', function (){ deleteShipInfo($("#fishingBoatViewTabPanel").find(".fbKey").val()); }) $(document).on('click', '.versionInfoTr', function (){ - getIsiHistory($(this).find(".fbKey").val(), $(this).find(".versionNo").val()); + const versionInfoTr = $(this) + $(".versionInfoChkbox").prop("checked", false); + versionInfoTr.find(".versionInfoChkbox").prop("checked", true); + getIsiHistory(versionInfoTr.find(".fbKey").val(), versionInfoTr.find(".versionNo").val()); }) function getIsiEditModal(fbKey){ diff --git a/src/main/resources/static/js/faStatistics/unlawfulFishing/shipProcessInfo.js b/src/main/resources/static/js/faStatistics/unlawfulFishing/shipProcessInfo.js index 1642ea28..0a5effbc 100644 --- a/src/main/resources/static/js/faStatistics/unlawfulFishing/shipProcessInfo.js +++ b/src/main/resources/static/js/faStatistics/unlawfulFishing/shipProcessInfo.js @@ -11,6 +11,16 @@ $(document).on('click', '#addShipProcessInfoBtn', function (){ getSpiEditModal(null); }) +$(document).on('change', '.pressurizedTimeTaken', function (){ + $("#pressurizedTimeTaken").val($("#pressurizedTimeTakenDate").val()+"일 "+$("#pressurizedTimeTakenTime").val()); +}) +$(document).on('change', '.warrantReqTake', function (){ + $("#warrantReqTake").val($("#warrantReqTakeDate").val()+"일 "+$("#warrantReqTakeTime").val()); +}) +$(document).on('change', '#releaseDate,#releaseTime', function (){ + $("#releaseDt").val($("#releaseDate").val()+" "+$("#releaseTime").val()); +}) + $(document).on('change', '.oxSelector', function (){ childInputStateChange(Number(this.value), $(this).parent().find("input,select").slice(1)); }) @@ -29,6 +39,81 @@ $(document).on('click', '.saveEditInfoBtn', function (){ saveShipProcessInfo($(this).attr("data-status")) }) +$(document).on('click', '.spiTr', function (){ + getSpiViewModal($(this).attr('data-prkey')) +}) + +$(document).on('click', '#editProcessInfoBtn', function (){ + $("#spiViewModal").modal('hide'); + getSpiEditModal($("#processInfoViewTabPanel").find('.prKey').val()) +}) + +$(document).on('click', '#deleteProcessInfoBtn', function (){ + deleteProcessInfo($("#processInfoViewTabPanel").find('.prKey').val()); +}) + +$(document).on('click', '.versionInfoTr', function (){ + const versionInfoTr = $(this) + $(".versionInfoChkbox").prop("checked", false); + versionInfoTr.find(".versionInfoChkbox").prop("checked", true); + getSpiHistory(versionInfoTr.find(".prKey").val(), versionInfoTr.find(".versionNo").val()); +}) + +function getSpiHistory(prKey, versionNo){ + $.ajax({ + url: '/unlawfulFishing/spiHistoryDiv', + data: {prKey: prKey, versionNo: versionNo}, + type: 'GET', + dataType:"html", + success: function(html){ + $("#versionInfoDiv").empty().append(html) + }, + error:function(e){ + ajaxErrorAction(e); + } + }); +} + +function deleteProcessInfo(prKey){ + if(confirm("삭제하시겠습니까?\n되돌릴 수 없습니다.")){ + contentFade("in"); + $.ajax({ + type : 'POST', + data : JSON.stringify({prKey: prKey}), + url : "/unlawfulFishing/deleteShipProcessInfo", + 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 getSpiViewModal(prKey){ + $.ajax({ + url: '/unlawfulFishing/spiViewModal', + data: {prKey: prKey}, + type: 'GET', + dataType:"html", + success: function(html){ + const contentDiv = $("#spiViewModalContent"); + contentDiv.empty().append(html) + $("#spiViewModal").modal('show'); + }, + error:function(e){ + ajaxErrorAction(e); + } + }); +} + function getSpiEditModal(prKey){ $.ajax({ url: '/unlawfulFishing/spiEditModal', diff --git a/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/illegalShipInfoPage.html b/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/illegalShipInfoPage.html index 267b7d3a..812223bb 100644 --- a/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/illegalShipInfoPage.html +++ b/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/illegalShipInfoPage.html @@ -104,6 +104,7 @@ 선종 선질 선적지 + 작성자 작성일시 @@ -128,6 +129,18 @@ + + + + + + + + + + + + diff --git a/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/isiViewModal.html b/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/isiViewModal.html index 4a0621d1..87324acd 100644 --- a/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/isiViewModal.html +++ b/src/main/resources/templates/faStatistics/unlawfulFishing/illegalShipInfo/isiViewModal.html @@ -97,8 +97,8 @@ - -