선원정보 작업중.

master
최강석 2023-07-13 18:20:11 +09:00
parent 206636f854
commit 95d82e128d
8 changed files with 337 additions and 468 deletions

View File

@ -11,6 +11,8 @@ import java.util.List;
@Setter @Setter
@NoArgsConstructor @NoArgsConstructor
public class BaseModel { public class BaseModel {
@Transient
private String accessAuth;
@Transient @Transient
private List<String> upOrganCdList; private List<String> upOrganCdList;
@Transient @Transient

View File

@ -291,6 +291,22 @@ public class UnlawfulFishingController {
mav.addObject("illegalShipSailor", illegalShipSailor); mav.addObject("illegalShipSailor", illegalShipSailor);
return mav; return mav;
} }
@GetMapping("/issViewModal")
public ModelAndView illegalShipSailorViewModal(@AuthenticationPrincipal UserInfo loginUser, IllegalShipSailor illegalShipSailor){
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/illegalShipSailor/issViewModal");
illegalShipSailor = unlawfulFishingService.selectIllegalShipSailor(illegalShipSailor.getSailorKey());
illegalShipSailor.setHistoryList(unlawfulFishingService.selectIllegalShipSailorHistoryList(illegalShipSailor.getSailorKey()));
mav.addObject("illegalShipSailor", illegalShipSailor);
IllegalShipInfo shipInfo = unlawfulFishingService.selectIllegalShipInfo(illegalShipSailor.getFbKey());
mav.addObject("shipInfo", shipInfo);
mav.addObject("crackdownInfo", unlawfulFishingService.selectCrackdownInfo(shipInfo.getCdsKey()));
AccessConfig accessConfig = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/unlawfulFishing/shipProcessInfo").get(0);
mav.addObject("accessAuth", accessConfig.getAccessAuth());
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("userSeq", loginUser.getUserSeq());
return mav;
}
@GetMapping("/crackdownStatusVersionInfo") @GetMapping("/crackdownStatusVersionInfo")
public ModelAndView selectUnlawfulFishingVersionInfo(Integer cdsKey, Integer versionNo){ public ModelAndView selectUnlawfulFishingVersionInfo(Integer cdsKey, Integer versionNo){

View File

@ -38,4 +38,6 @@ public class IllegalShipSailor extends SailorBaseEntity {
private String caseNum; private String caseNum;
@Transient @Transient
private String boatNameKr; private String boatNameKr;
@Transient
private List<IllegalShipSailorHistory> historyList;
} }

View File

@ -9,6 +9,7 @@ import java.util.Optional;
public interface IllegalShipSailorHistoryRepository extends JpaRepository<IllegalShipSailorHistory, IllegalShipSailorHistory.IllegalShipSailorHistoryId> { public interface IllegalShipSailorHistoryRepository extends JpaRepository<IllegalShipSailorHistory, IllegalShipSailorHistory.IllegalShipSailorHistoryId> {
Optional<IllegalShipSailorHistory> findTopBySailorKeyOrderByVersionNoDesc(Integer sailorKey); Optional<IllegalShipSailorHistory> findTopBySailorKeyOrderByVersionNoDesc(Integer sailorKey);
List<IllegalShipSailorHistory> findBySailorKey(Integer sailorKey); List<IllegalShipSailorHistory> findBySailorKey(Integer sailorKey);
List<IllegalShipSailorHistory> findBySailorKeyOrderByVersionNoDesc(Integer sailorKey);
IllegalShipSailorHistory findByVersionNoAndSailorKey(Integer versionNo, Integer sailorKey); IllegalShipSailorHistory findByVersionNoAndSailorKey(Integer versionNo, Integer sailorKey);
} }

View File

@ -263,4 +263,8 @@ public class UnlawfulFishingService {
public Integer selectIllegalShipSailorListCnt(UnlawfulFishingParam params) { public Integer selectIllegalShipSailorListCnt(UnlawfulFishingParam params) {
return unlawfulFishingMapper.selectIllegalShipSailorListCnt(params); return unlawfulFishingMapper.selectIllegalShipSailorListCnt(params);
} }
public List<IllegalShipSailorHistory> selectIllegalShipSailorHistoryList(Integer sailorKey) {
return isshRepository.findBySailorKeyOrderByVersionNoDesc(sailorKey);
}
} }

View File

@ -48,7 +48,7 @@ $(document).on('click', '.saveEditInfoBtn', function (){
if(confirm("저장하시겠습니까?")){ if(confirm("저장하시겠습니까?")){
const sailorList = []; const sailorList = [];
const fbKey = $("#fbKey").val() const fbKey = $("#fbKey").val()
const status = $(this).data("data-status") const status = $(this).attr("data-status")
$.each($(".sailorInfo"), function (idx, sailor){ $.each($(".sailorInfo"), function (idx, sailor){
const sailorDiv = $(sailor); const sailorDiv = $(sailor);
sailorList.push({ sailorList.push({
@ -89,6 +89,10 @@ $(document).on('click', '.saveEditInfoBtn', function (){
} }
}) })
$(document).on('click', '.sailorTr', function (){
getIssViewModal($(this).attr('data-sailorkey'))
})
function getIssAddModal(){ function getIssAddModal(){
$.ajax({ $.ajax({
url: '/unlawfulFishing/issAddModal', url: '/unlawfulFishing/issAddModal',
@ -110,7 +114,22 @@ function getIssAddModal(){
} }
}); });
} }
function getIssViewModal(sailorKey){
$.ajax({
url: '/unlawfulFishing/issViewModal',
data: {sailorKey: sailorKey},
type: 'GET',
dataType:"html",
success: function(html){
const contentDiv = $("#issViewModalContent");
contentDiv.empty().append(html)
$("#issViewModal").modal('show');
},
error:function(e){
ajaxErrorAction(e);
}
});
}
function getIssEditModal(sailorKey){ function getIssEditModal(sailorKey){
$.ajax({ $.ajax({
url: '/unlawfulFishing/issEditModal', url: '/unlawfulFishing/issEditModal',

View File

@ -8,7 +8,9 @@
</th:block> </th:block>
<th:block layout:fragment="css"> <th:block layout:fragment="css">
<style> <style>
.col-form-label.text-center {
background-color: #aabfe178;
}
</style> </style>
</th:block> </th:block>
<div layout:fragment="content"> <div layout:fragment="content">

View File

@ -1,558 +1,384 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> <html lang="ko" xmlns:th="http://www.thymeleaf.org">
<div class="modal-header bg-dark"> <div class="modal-header bg-dark">
<h5 class="modal-title text-white" id="fishingBoatEditModalLabel">불법조업 외국어상세정보</h5> <h5 class="modal-title text-white" id="fishingBoatEditModalLabel"> 정보 열람</h5>
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button> <button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<ul class="nav nav-tabs" id="fishingBoatTab" role="tablist"> <ul class="nav nav-tabs" id="fishingBoatTab" role="tablist">
<li class="nav-item" role="presentation"> <li class="nav-item" role="presentation">
<button class="nav-link active" id="fishingBoatViewTab" data-bs-toggle="tab" data-bs-target="#fishingBoatViewTabPanel" type="button" role="tab" aria-controls="fishingBoatViewTabPanel" aria-selected="true">최신버전</button> <button class="nav-link active" id="processInfoViewTab" data-bs-toggle="tab" data-bs-target="#processInfoViewTabPanel" type="button" role="tab" aria-controls="processInfoViewTabPanel" aria-selected="true">최신버전</button>
</li> </li>
<li class="nav-item" role="presentation" th:unless="${#lists.size(crackdownStatus.crackdownStatusVersionList) <= 1}"> <li class="nav-item" role="presentation" th:unless="${#lists.size(illegalShipSailor.historyList) <= 1}">
<button class="nav-link" id="fishingBoatVersionTab" data-bs-toggle="tab" data-bs-target="#fishingBoatVersionTabPanel" type="button" role="tab" aria-controls="fishingBoatHistoryTabPanel" aria-selected="false">수정이력</button> <button class="nav-link" id="processInfoVersionTab" data-bs-toggle="tab" data-bs-target="#processInfoVersionTabPanel" type="button" role="tab" aria-controls="processInfoHistoryTabPanel" aria-selected="false">수정이력</button>
</li> </li>
</ul> </ul>
<div class="tab-content bg-white border border-top-0"> <div class="tab-content bg-white border border-top-0">
<div class="tab-pane fade p-2 mx-2 show active" id="fishingBoatViewTabPanel" role="tabpanel" aria-labelledby="fishingBoatViewTab" tabindex="0"> <div class="tab-pane fade p-2 mx-2 show active" id="processInfoViewTabPanel" role="tabpanel" aria-labelledby="processInfoViewTab" tabindex="0">
<input type="hidden" class="cdsKey" th:value="${crackdownStatus.cdsKey}"> <input type="hidden" class="sailorKey" th:value="${illegalShipSailor.sailorKey}">
<input type="hidden" class="fbKey" th:value="${crackdownStatus.fishingBoat.fbKey}"> <div class="row py-2 justify-content-end">
<div class="row py-2">
<div class="col-12">
<div class="row justify-content-end">
<div class="col-auto"> <div class="col-auto">
<th:block th:text="|최종수정일: ${#temporals.format(crackdownStatus.fishingBoat.wrtDt, 'yyyy-MM-dd HH:mm')}|"></th:block> <th:block th:text="|최종수정일: ${#temporals.format(illegalShipSailor.wrtDt, 'yyyy-MM-dd HH:mm')}|"></th:block>
</div> </div>
</div> </div>
<div class="row justify-content-between"> <div class="row justify-content-between">
<div class="col-auto">단속정보</div> <div class="col-auto">선원정보</div>
<div class="col-auto"> <div class="col-auto">
<th:block th:each="code:${session.commonCode.get('DST')}"> <th:block th:each="code:${session.commonCode.get('DST')}">
<th:block th:if="${crackdownStatus.status eq code.itemCd}" th:text="|상태: ${code.itemValue}|"></th:block> <th:block th:if="${illegalShipSailor.status eq code.itemCd}" th:text="|상태: ${code.itemValue}|"></th:block>
</th:block> </th:block>
<th:block th:if="${#lists.size(crackdownStatus.crackdownStatusVersionList) <= 1}"> <th:block th:if="${#lists.size(illegalShipSailor.historyList) <= 1}">
(수정 이력 없음) (수정 이력 없음)
</th:block> </th:block>
<th:block th:unless="${#lists.size(crackdownStatus.crackdownStatusVersionList) <= 1}"> <th:block th:unless="${#lists.size(illegalShipSailor.historyList) <= 1}">
<th:block th:text="${#strings.concat('(', #lists.size(crackdownStatus.crackdownStatusVersionList), '차 수정본)') }"></th:block> <th:block th:text="${#strings.concat('(', #lists.size(illegalShipSailor.historyList), '차 수정본)') }"></th:block>
</th:block> </th:block>
</div> </div>
</div> </div>
</div> <!--<div class="row border border-secondary">
</div> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">처리현황</label>
<div class="row border border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">사건번호</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.caseNum}"> <th:block th:each="code:${session.commonCode.get('PR')}">
<div class="pt-2" th:if="${code.itemCd eq illegalShipSailor.processStatus}" th:text="${code.itemValue}"></div>
</th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선명</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">수사중지 여부</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNameKr}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.isIvsgtStop eq 'Y'?'중지':(illegalShipSailor.isIvsgtStop eq 'N'?'수사중':illegalShipSailor.isIvsgtStop)}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">위반사항</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선고법원</label>
<div class="col-sm-5"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start" th:text="${illegalShipSailor.sentencingCourt}"></label>
<div class="row"> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선고내용</label>
<th:block th:each="code:${vtList}"> <label class="col-sm-2 col-form-label col-form-label py-2 text-start" th:text="${illegalShipSailor.sentencingDetail}"></label>
<th:block th:each="violation:${crackdownStatus.violationList}">
<div class="col-6" th:if="${code.itemCd eq violation.violation}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${code.itemValue}"/>
</div> </div>
</th:block> <div class="row border border-secondary border-top-0">
</th:block> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">압송소요시간</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.pressurizedTimeTaken}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">압송거리</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${!#strings.isEmpty(illegalShipSailor.distance)}" th:text="|${illegalShipSailor.distance}해리|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center fs-10">영장청구 소요시간</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.warrantReqTakeTime}">
</div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">석방일시</label>
<div class="col-sm-2 border-secondary">
<input type="text" class="form-control form-control border-0" id="releaseDt" readonly th:value="${#temporals.format(illegalShipSailor.releaseDt, 'yyyy-MM-dd HH:mm')}">
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">사건담당경찰서</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">위탁시작일</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${session.commonCode.get('OG')}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.consignmentStartDt}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.caseAgency}" th:value="${code.itemValue}">
</th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center fs-11">사건담당경찰관</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">위탁종료일</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.casePoliceOfficer}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.consignmentEndDt}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">단속경찰서</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">퇴거일</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${cpoList}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.evictionDt}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.crackdownPolice}" th:value="${code.itemValue}">
</th:block>
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">단속함정</label>
<div class="col-sm-2">
<th:block th:each="code:${boatList}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.crackdownBoat}" th:value="${code.itemValue}">
</th:block>
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">MMSI.NO</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">직접인계일</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.mmsi}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.directHandoverDt}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">침범유형</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">인계 해점</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${session.commonCode.get('IST')}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.invasionType}" th:value="${code.itemValue}">
</th:block>
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">NLL</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.nll eq 'Y'?'O':(crackdownStatus.nll eq 'N'?'X':crackdownStatus.nll)}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">압송/현장조사</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fieldIvsgt eq 'C'?'압송':(crackdownStatus.fieldIvsgt eq 'F'?'현장조사':crackdownStatus.fieldIvsgt)}">
</div>
</div>
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">나포일시</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd hh:mm')}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">나포장소</label>
<div class="col-sm-8">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="|${crackdownStatus.napoSeaPointLon} ${crackdownStatus.napoSeaPointLat} ${crackdownStatus.napoSeaPointDetail}|">
</div>
</div>
<th:block th:with="damageFlag=${crackdownStatus.obstrExspdCnt ne 0 ||
crackdownStatus.personDamageCnt ne 0 ||
crackdownStatus.personDamageAmount ne 0 ||
crackdownStatus.personDamageDetail ne null ||
crackdownStatus.materialDamageCnt ne 0 ||
crackdownStatus.materialDamageAmount ne 0 ||
crackdownStatus.materialDamageDetail ne null}">
<th:block th:if="${damageFlag}">
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB2">특수공무집행방해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">인적피해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">발생건수</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.obstrExspdCnt>0}" th:text="|${crackdownStatus.obstrExspdCnt}건|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">피해인원</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.personDamageCnt>0}" th:text="|${crackdownStatus.personDamageCnt}인|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">피해액</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.personDamageAmount>0}" th:text="|${crackdownStatus.personDamageAmount}만원|"></th:block>
</label>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">상세내용</label>
<div class="col-sm-11" th:utext="${crackdownStatus.personDamageDetail}">
</div>
</div>
</div>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">물적피해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">발생건수</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.materialDamageCnt>0}" th:text="|${crackdownStatus.materialDamageCnt}건|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">피해액</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.materialDamageAmount>0}" th:text="|${crackdownStatus.materialDamageAmount}만원|"></th:block>
</label>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">상세내용</label>
<div class="col-sm-11" th:utext="${crackdownStatus.materialDamageDetail}">
</div>
</div>
</div>
</div>
</div>
</div>
</th:block>
</th:block>
<th:block th:with="catchFlag=${crackdownStatus.fishingBoat.catchFishSpecies ne null ||
crackdownStatus.fishingBoat.catchCnt ne 0}">
<th:block th:if="${catchFlag}">
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">어획물축소기재</label>
<div class="col-sm-11">
<div class="row">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">어종</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"
th:text="${crackdownStatus.fishingBoat.catchFishSpecies}"></label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">수량</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.catchCnt>0}" th:text="|${crackdownStatus.fishingBoat.catchCnt}kg|"></th:block>
</label>
</div>
</div>
</div>
</th:block>
</th:block>
<th:block th:if="${!#lists.isEmpty(crackdownStatus.sailorList)}">
<div class="row py-2">
<div class="col-auto">■ 선장·선주 정보</div>
</div>
<div class="row">
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS001'}">
<div class="col-6" id="captainDiv">
<div class="row border border-secondary">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">선장명</label>
<div class="col-sm-8">
<div class="input-group w-auto"> <div class="input-group w-auto">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNameKr}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.handoverSeaPointLon}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNameCn}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.handoverSeaPointLat}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNamePinyin}">
</div>
<th:block th:unless="${#lists.isEmpty(sailor.fileList)}">
<div id="fileDownloadDiv" class="d-none">
<div class="row justify-content-end">
<div class="col-auto">
<th:block th:each="file:${sailor.fileList}">
<a href="#" class="fileDownLink" data-board="sailor"
th:data-parentkey="${file.sailorKey}" th:data-fileseq="${file.fileSeq}" th:text="|${file.origNm}.${file.fileExtn}|"></a>
<br>
</th:block>
</div> </div>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">인계 함정</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.handoverBoat}">
</div> </div>
</th:block> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">중측 인수함정</label>
</div>
<div class="col-sm-2"> <div class="col-sm-2">
<th:block th:if="${#lists.isEmpty(sailor.fileList)}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.middleTakeoverBoat}">
<div>사진 없음</div> </div>
</th:block> </div>
<th:block th:unless="${#lists.isEmpty(sailor.fileList)}"> <div class="row border border-secondary border-top-0">
<img id="captainPhoto" class="w-100" alt="선장 사진" th:src="|/file/fileDisplay?board=sailor&parentKey=${sailor.sailorKey}&fileSeq=1|"> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">몰수확정일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.confiscationDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">폐선일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.boatDisposalDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">폐선종류</label>
<div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${session.commonCode.get('BDT')}">
<input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq illegalShipSailor.boatDisposalType}" th:value="${code.itemValue}">
</th:block> </th:block>
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">생년월일</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">침몰일</label>
<div class="col-sm-4 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.birthdate}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.exileDt}">
</div> </div>
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">연락처</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">환부일</label>
<div class="col-sm-4"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorContact}"> <input type="text" class="form-control form-control border-0" readonly th:value="${illegalShipSailor.returnDt}">
</div> </div>
</div> </div>-->
<div class="row border border-secondary border-top-0"> <div class="row justify-content-start pt-3">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">주소</label> <div class="col-auto">■ 어선정보</div>
<div class="col-sm-4 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.residence}">
</div>
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">재범횟수</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.arrestHistory}">
</div>
</div>
<div class="row border border-secondary border-top-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">비고</label>
<div class="col-sm-10">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.note}">
</div>
</div>
</div>
</th:block>
</th:block>
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS004'}">
<div class="col-6" id="shipOwnerDiv">
<div class="row border border-secondary border-start-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">선주명</label>
<div class="col-sm-10">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNameKr}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNameCn}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorNamePinyin}">
</div>
</div>
</div>
<div class="row border border-secondary border-start-0 border-top-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">생년월일</label>
<div class="col-sm-4 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.birthdate}">
</div>
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">연락처</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorContact}">
</div>
</div>
<div class="row border border-secondary border-start-0 border-top-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">주소</label>
<div class="col-sm-4">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.residence}">
</div>
</div>
<div class="row border border-secondary border-start-0 border-top-0">
<label class="col-sm-2 fw-bold bg-label border-end border-secondary col-form-label col-form-label-sm py-2 border-end border-secondary text-center">비고</label>
<div class="col-sm-10">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.note}">
</div>
</div>
</div>
</th:block>
</th:block>
</div>
</th:block>
<div class="row py-2">
<div class="col-auto">■ 어선 정보</div>
</div> </div>
<div class="row border border-secondary"> <div class="row border border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선명</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선명</label>
<div class="col-sm-5 border-end border-secondary"> <div class="col-sm-5 border-end border-secondary">
<div class="input-group w-auto"> <div class="input-group w-auto">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNameKr}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.boatNameKr}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNameCn}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.boatNameCn}">
</div> </div>
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">허가번호</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">허가번호</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.permitNum}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.permitNum}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">국적</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">국적</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.nationality}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.nationality}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">승선원</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">승선원</label>
<div class="col-sm-2 border-end border-secondary" th:if="${crackdownStatus.fishingBoat.sailorCnt>0}"> <div class="col-sm-2 border-end border-secondary" th:if="${shipInfo.sailorCnt>0}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="|${crackdownStatus.fishingBoat.sailorCnt}인|"> <input type="text" class="form-control form-control border-0" readonly th:value="|${shipInfo.sailorCnt}인|">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">톤수</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">톤수</label>
<div class="col-sm-2" th:if="${crackdownStatus.fishingBoat.tonCnt>0}"> <div class="col-sm-2" th:if="${shipInfo.tonCnt>0}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="|${crackdownStatus.fishingBoat.tonCnt}t|"> <input type="text" class="form-control form-control border-0" readonly th:value="|${shipInfo.tonCnt}t|">
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선종</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선종</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${ftList}"> <th:block th:each="code:${session.commonCode.get('FT')}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.fishingBoat.fisheryType}" th:value="${code.itemValue}"> <input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq shipInfo.fisheryType}" th:value="${code.itemValue}">
</th:block> </th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선질</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선질</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${bmList}"> <th:block th:each="code:${session.commonCode.get('BM')}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.fishingBoat.boatMaterial}" th:value="${code.itemValue}"> <input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq shipInfo.boatMaterial}" th:value="${code.itemValue}">
</th:block> </th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선적지</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">선적지</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<div class="input-group w-auto"> <div class="input-group w-auto">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNnySung}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.boatNnySung}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNnySi}"> <input type="text" class="form-control form-control border-0" readonly th:value="${shipInfo.boatNnySi}">
</div> </div>
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">범칙물</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">범칙물</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.offenseType ne null}" th:text="${crackdownStatus.fishingBoat.offenseType}"></th:block> <th:block th:if="${shipInfo.offenseType ne null}" th:text="${shipInfo.offenseType}"></th:block>
<th:block th:if="${crackdownStatus.fishingBoat.offenseWeight>0}" th:text="|${crackdownStatus.fishingBoat.offenseWeight}kg|"></th:block> <th:block th:if="${shipInfo.offenseWeight>0}" th:text="|${shipInfo.offenseWeight}kg|"></th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">범칙물 폐기량</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">범칙물 폐기량</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity>0}" th:text="|${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity}kg|"></th:block> <th:block th:if="${shipInfo.offenseIllegalWasteQuantity>0}" th:text="|${shipInfo.offenseIllegalWasteQuantity}kg|"></th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">범칙물 위판량</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">범칙물 위판량</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.offenseQuantity>0}" th:text="|${crackdownStatus.fishingBoat.offenseQuantity}kg|"></th:block> <th:block th:if="${shipInfo.offenseQuantity>0}" th:text="|${shipInfo.offenseQuantity}kg|"></th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center fs-11">범칙물 위판금액</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-secondary border-end text-center fs-11">범칙물 위판금액</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.offenseAmount>0}" th:text="|${crackdownStatus.fishingBoat.offenseAmount}만원|"></th:block> <th:block th:if="${shipInfo.offenseAmount>0}" th:text="|${shipInfo.offenseAmount}만원|"></th:block>
</label> </label>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">담보금 미납액</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">담보금 미납액</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.damboUnpaidAmount>0}" th:text="|${crackdownStatus.fishingBoat.damboUnpaidAmount}만원|"></th:block> <th:block th:if="${shipInfo.damboUnpaidAmount>0}" th:text="|${shipInfo.damboUnpaidAmount}만원|"></th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">담보금 납부액</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">담보금 납부액</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownStatus.fishingBoat.damboPayment>0}" th:text="|${crackdownStatus.fishingBoat.damboPayment}만원|"></th:block> <th:block th:if="${shipInfo.damboPayment>0}" th:text="|${shipInfo.damboPayment}만원|"></th:block>
</label> </label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center fs-11">담보금 납부일시</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center fs-11">담보금 납부일시</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.paymentPaymentDt}"> <input type="text" class="form-control form-control border-0" readonly th:value="${#temporals.format(shipInfo.paymentPaymentDt, 'yyyy-MM-dd HH:mm')}">
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">압수어구</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">압수어구</label>
<label class="col-sm-11 col-form-label col-form-label-sm py-2 text-start"> <label class="col-sm-11 col-form-label col-form-label py-2 text-start">
<th:block th:if="${!#strings.isEmpty(crackdownStatus.fishingBoat.confiscationFrame)}" th:text="|틀: ${crackdownStatus.fishingBoat.confiscationFrame}|"></th:block> <th:block th:if="${!#strings.isEmpty(shipInfo.confiscationFrame)}" th:text="|틀: ${shipInfo.confiscationFrame}|"></th:block>
<th:block th:if="${!#strings.isEmpty(crackdownStatus.fishingBoat.confiscationWidth)}" th:text="|폭: ${crackdownStatus.fishingBoat.confiscationWidth}|"></th:block> <th:block th:if="${!#strings.isEmpty(shipInfo.confiscationWidth)}" th:text="|폭: ${shipInfo.confiscationWidth}|"></th:block>
<th:block th:if="${!#strings.isEmpty(crackdownStatus.fishingBoat.confiscationJo)}" th:text="|조: ${crackdownStatus.fishingBoat.confiscationJo}|"></th:block> <th:block th:if="${!#strings.isEmpty(shipInfo.confiscationJo)}" th:text="|조: ${shipInfo.confiscationJo}|"></th:block>
<th:block th:if="${!#strings.isEmpty(crackdownStatus.fishingBoat.confiscationGae)}" th:text="|개: ${crackdownStatus.fishingBoat.confiscationGae}|"></th:block> <th:block th:if="${!#strings.isEmpty(shipInfo.confiscationGae)}" th:text="|개: ${shipInfo.confiscationGae}|"></th:block>
<th:block th:if="${!#strings.isEmpty(crackdownStatus.fishingBoat.confiscationEtc)}" th:text="|기타: ${crackdownStatus.fishingBoat.confiscationEtc}|"></th:block> <th:block th:if="${!#strings.isEmpty(shipInfo.confiscationEtc)}" th:text="|기타: ${shipInfo.confiscationEtc}|"></th:block>
</label> </label>
</div> </div>
<div class="row py-2"> <div class="row justify-content-between pt-3">
<div class="col-auto">처리 결과</div> <div class="col-auto">단속정보</div>
</div> </div>
<div class="row border border-secondary"> <div class="row border border-secondary">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">처리현황</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">사건번호</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${prList}"> <input type="text" class="form-control form-control border-0" readonly th:value="${crackdownInfo.caseNum}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.processResult.processStatus}" th:value="${code.itemValue}"> </div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">위반사항</label>
<div class="col-sm-8">
<div class="row">
<th:block th:each="violation:${crackdownInfo.violationList}">
<th:block th:each="code:${session.commonCode.get('VT')}">
<div class="col-4" th:if="${code.itemCd eq violation.violation}">
<input type="text" class="form-control form-control border-0" readonly th:value="${code.itemValue}"/>
</div>
</th:block>
</th:block> </th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">수사중지 여부</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.isIvsgtStop eq 'Y'?'중지':(crackdownStatus.processResult.isIvsgtStop eq 'N'?'수사중':crackdownStatus.processResult.isIvsgtStop)}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선고법원</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start" th:text="${crackdownStatus.processResult.sentencingCourt}"></label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선고내용</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 text-start" th:text="${crackdownStatus.processResult.sentencingDetail}"></label>
</div>
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">압송소요시간</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.pressurizedTimeTaken}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">압송거리</label>
<label class="col-sm-2 col-form-label col-form-label-sm py-2 border-end border-secondary text-start">
<th:block th:if="${!#strings.isEmpty(crackdownStatus.distance)}" th:text="|${crackdownStatus.distance}해리|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center fs-10">영장청구 소요시간</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.warrantReqTakeTime}">
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">나포일시</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center fs-11">사건담당경찰서</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" id="napoDt" readonly th:value="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd hh:mm')}"> <th:block th:each="code:${session.commonCode.get('OG')}">
<input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq crackdownInfo.caseAgency}" th:value="${code.itemValue}">
</th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">석방일시</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center fs-11">사건담당경찰관</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" id="releaseDt" readonly th:value="${#temporals.format(crackdownStatus.processResult.releaseDt, 'yyyy-MM-dd hh:mm')}"> <input type="text" class="form-control form-control border-0" readonly th:value="${crackdownInfo.casePoliceOfficer}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">소요시간</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">단속경찰서</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" id="releaseToNapo" readonly> <th:block th:each="code:${session.commonCode.get('CPO')}">
<input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq crackdownInfo.crackdownPolice}" th:value="${code.itemValue}">
</th:block>
</div> </div>
</div> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">단속함정</label>
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">위탁시작일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.consignmentStartDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">위탁종료일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.consignmentEndDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">퇴거일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.evictionDt}">
</div>
</div>
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">직접인계일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.directHandoverDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">인계 해점</label>
<div class="col-sm-2 border-end border-secondary">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.handoverSeaPointLon}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.handoverSeaPointLat}">
</div>
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">인계 함정</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.handoverBoat}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">중측 인수함정</label>
<div class="col-sm-2"> <div class="col-sm-2">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.middleTakeoverBoat}"> <th:block th:each="code:${session.commonCode.get(crackdownInfo.crackdownPolice)}">
</div> <input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq crackdownInfo.crackdownBoat}" th:value="${code.itemValue}">
</div>
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">몰수확정일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.confiscationDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">폐선일</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.boatDisposalDt}">
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">폐선종류</label>
<div class="col-sm-2 border-end border-secondary">
<th:block th:each="code:${bdtList}">
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.processResult.boatDisposalType}" th:value="${code.itemValue}">
</th:block> </th:block>
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">침몰일</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">MMSI.NO</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.exileDt}"> <input type="text" class="form-control form-control border-0" readonly th:value="${crackdownInfo.mmsi}">
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">환부일</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">침범유형</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.returnDt}"> <th:block th:each="code:${session.commonCode.get('IST')}">
<input type="text" class="form-control form-control border-0" readonly th:if="${code.itemCd eq crackdownInfo.invasionType}" th:value="${code.itemValue}">
</th:block>
</div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">NLL</label>
<div class="col-sm-2 border-end border-secondary">
<input type="text" class="form-control form-control border-0" readonly th:value="${crackdownInfo.nll eq 'Y'?'O':(crackdownInfo.nll eq 'N'?'X':crackdownInfo.nll)}">
</div>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center fs-11">압송/현장조사</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control border-0" readonly th:value="${crackdownInfo.fieldIvsgt eq 'C'?'압송':(crackdownInfo.fieldIvsgt eq 'F'?'현장조사':crackdownInfo.fieldIvsgt)}">
</div> </div>
</div> </div>
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선장구속</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">나포일시</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-2 border-end border-secondary">
<th:block th:each="sailor:${crackdownStatus.sailorList}"> <input type="text" class="form-control form-control border-0" readonly th:value="${#temporals.format(crackdownInfo.napoDt, 'yyyy-MM-dd HH:mm')}">
<th:block th:if="${sailor.position eq 'POS001'}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.isRestriction eq 'Y'?'구속':'불구속'}">
</th:block>
</th:block>
</div> </div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">항해장구속</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">나포장소</label>
<div class="col-sm-2 border-end border-secondary"> <div class="col-sm-8">
<th:block th:each="sailor:${crackdownStatus.sailorList}"> <input type="text" class="form-control form-control border-0" readonly th:value="|${crackdownInfo.napoSeaPointLon} ${crackdownInfo.napoSeaPointLat} ${crackdownInfo.napoSeaPointDetail}|">
<th:block th:if="${sailor.position eq 'POS002'}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.isRestriction eq 'Y'?'구속':'불구속'}">
</th:block>
</th:block>
</div>
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">기관장구속</label>
<div class="col-sm-2 border-end border-secondary">
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS003'}">
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.isRestriction eq 'Y'?'구속':'불구속'}">
</th:block>
</th:block>
</div> </div>
</div> </div>
<th:block th:with="damageFlag=${(crackdownInfo.obstrExspdCnt ne null and crackdownInfo.obstrExspdCnt ne 0) ||
(crackdownInfo.personDamageCnt ne null and crackdownInfo.personDamageCnt ne 0 )||
(crackdownInfo.personDamageAmount ne null and crackdownInfo.personDamageAmount ne 0) ||
!#strings.isEmpty(crackdownInfo.personDamageDetail) ||
(crackdownInfo.materialDamageCnt ne null and crackdownInfo.materialDamageCnt ne 0) ||
(crackdownInfo.materialDamageAmount ne null and crackdownInfo.materialDamageAmount ne 0) ||
!#strings.isEmpty(crackdownInfo.materialDamageDetail)}">
<th:block th:if="${damageFlag}">
<div class="row border border-secondary border-top-0"> <div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm fw-bold bg-label py-2 border-end border-secondary text-center">선원구속</label> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB2">특수공무집행방해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">인적피해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">발생건수</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownInfo.obstrExspdCnt>0}" th:text="|${crackdownInfo.obstrExspdCnt}건|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">피해인원</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownInfo.personDamageCnt>0}" th:text="|${crackdownInfo.personDamageCnt}인|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">피해액</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownInfo.personDamageAmount>0}" th:text="|${crackdownInfo.personDamageAmount}만원|"></th:block>
</label>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">상세내용</label>
<div class="col-sm-11" th:utext="${crackdownInfo.personDamageDetail}">
</div>
</div>
</div>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">물적피해</label>
<div class="col-sm-11">
<div class="row border-bottom border-secondary">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">발생건수</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownInfo.materialDamageCnt>0}" th:text="|${crackdownInfo.materialDamageCnt}건|"></th:block>
</label>
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">피해액</label>
<label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<th:block th:if="${crackdownInfo.materialDamageAmount>0}" th:text="|${crackdownInfo.materialDamageAmount}만원|"></th:block>
</label>
</div>
<div class="row">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">상세내용</label>
<div class="col-sm-11" th:utext="${crackdownInfo.materialDamageDetail}">
</div>
</div>
</div>
</div>
</div>
</div>
</th:block>
</th:block>
<th:block th:with="catchFlag=${crackdownInfo.catchFishSpecies ne null ||
crackdownInfo.catchCnt ne 0}">
<th:block th:if="${catchFlag}">
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center bg-lightB1">어획물축소기재</label>
<div class="col-sm-11"> <div class="col-sm-11">
<div class="row"> <div class="row">
<th:block th:each="sailor:${crackdownStatus.sailorList}"> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">어종</label>
<th:block th:if="${sailor.position eq 'POS005' or sailor.position eq 'POS006'}"> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start"
<div class="col-4"> th:text="${crackdownInfo.catchFishSpecies}"></label>
<div class="row mt-2"> <label class="col-sm-1 col-form-label col-form-label fw-bold bg-label py-2 border-end border-secondary text-center">수량</label>
<label class="col-sm-auto col-form-label col-form-label-sm fw-bold text-end">직책: </label> <label class="col-sm-2 col-form-label col-form-label py-2 border-end border-secondary text-start">
<label class="col-sm-auto col-form-label col-form-label-sm text-start" th:text="${sailor.position eq 'POS005'?'기타 간부선원':'일반선원 또는 확인불가'}"></label> <th:block th:if="${crackdownInfo.catchCnt>0}" th:text="|${crackdownInfo.catchCnt}kg|"></th:block>
<label class="col-sm-auto col-form-label col-form-label-sm fw-bold text-end">구속여부: </label> </label>
<label class="col-sm-auto col-form-label col-form-label-sm text-start" th:text="${sailor.isRestriction eq 'Y'?'구속':'불구속'}"></label> </div>
<label class="col-sm-auto col-form-label col-form-label-sm fw-bold text-end">이름: </label>
<label class="col-sm-auto col-form-label col-form-label-sm text-start" th:text="${sailor.sailorNameKr}"></label>
</div> </div>
</div> </div>
</th:block> </th:block>
</th:block> </th:block>
</div> </div>
</div> <div class="tab-pane fade p-2 mx-2" id="processInfoVersionTabPanel" role="tabpanel" aria-labelledby="processInfoVersionTab" tabindex="0">
</div>
</div>
<div class="tab-pane fade p-2 mx-2" id="fishingBoatVersionTabPanel" role="tabpanel" aria-labelledby="fishingBoatVersionTab" tabindex="0">
<div class="row"> <div class="row">
<div class="col-4"> <div class="col-4">
<table class="table table-hover"> <table class="table table-hover">
@ -564,8 +390,8 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr class="versionInfoTr" th:each="versionInfo:${crackdownStatus.crackdownStatusVersionList}"> <tr class="versionInfoTr" th:each="versionInfo:${illegalShipSailor.historyList}">
<input type="hidden" class="cdsKey" th:value="${versionInfo.cdsKey}"> <input type="hidden" class="prKey" th:value="${versionInfo.prKey}">
<input type="hidden" class="versionNo" th:value="${versionInfo.versionNo}"> <input type="hidden" class="versionNo" th:value="${versionInfo.versionNo}">
<td><input type="checkbox" class="versionInfoChkbox"></td> <td><input type="checkbox" class="versionInfoChkbox"></td>
<td> <td>
@ -590,17 +416,14 @@
</div> </div>
</div> </div>
</div> </div>
<th:block th:if="${modalType ne 'viewOnly'}"> <th:block th:if="${userSeq eq illegalShipSailor.wrtUserSeq or (accessAuth eq 'ACC003' and #lists.contains(mgtOrganList, illegalShipSailor.wrtOrgan))}">
<th:block th:if="${userSeq eq crackdownStatus.fishingBoat.wrtUserSeq
or (accessAuth eq 'ACC003' and #lists.contains(mgtOrganList, crackdownStatus.fishingBoat.wrtOrgan))}">
<!--작성자, 관리자일 경우 수정, 삭제 허용--> <!--작성자, 관리자일 경우 수정, 삭제 허용-->
<div class="modal-footer justify-content-between bg-light"> <div class="modal-footer justify-content-between bg-light">
<div class="col-auto"> <div class="col-auto">
<button type="button" class="btn btn-danger" id="deleteFishingBoatBtn">삭제</button> <button type="button" class="btn btn-danger" id="deleteProcessInfoBtn">삭제</button>
</div> </div>
<div class="col-auto"> <div class="col-auto">
<button type="button" class="btn btn-warning" id="editFishingBoatBtn">수정</button> <button type="button" class="btn btn-warning" id="editProcessInfoBtn">수정</button>
</div> </div>
</div> </div>
</th:block>
</th:block> </th:block>