불법조업외국어선

- 검색양식 요청사항 반영
 - 등록양식 요청사항 반영
취약지관리 요청사항 반영
국제범죄통계 요청사항 반영
master
강석 최 2023-01-13 18:01:55 +09:00
parent dabb062467
commit 315b351d14
15 changed files with 447 additions and 381 deletions

View File

@ -31,6 +31,9 @@ public class CrackdownStatus extends CrackdownStatusBaseEntity {
@Column(name = "cds_key")
private Integer cdsKey;
@Column(name="status")
private String status;
@Transient
private List<Violation> violationList;
@Transient

View File

@ -22,6 +22,9 @@ public class FishingBoat extends FishingBoatBaseEntity {
@Column(name = "fb_key")
private Integer fbKey;
@Column(name="status")
private String status;
@Transient
private String year;
@Transient

View File

@ -72,8 +72,6 @@ public class FishingBoatBaseEntity extends BaseModel {
private String offenseFishSpecies;
@Column(name = "offense_catch_cnt")
private Integer offenseCatchCnt=0;
@Column(name = "status")
private String status;
@Column(name = "wrt_organ")
private String wrtOrgan;
@Column(name = "wrt_part")

View File

@ -30,6 +30,10 @@ public class ProcessResult extends ProcessResultBaseEntity {
@Column(name = "cds_key")
private Integer cdsKey;
@Column(name="status")
private String status;
@Transient
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime updDt;

View File

@ -33,6 +33,9 @@ public class Sailor extends SailorBaseEntity {
@Column(name = "fb_key")
private Integer fbKey;
@Column(name = "status")
private String status;
@Transient
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime updDt;

View File

@ -84,6 +84,9 @@
.w-35{
width:35%!important;
}
.w-70{
width:70%!important;
}
.w-100p{
width: 100px;
}

View File

@ -329,6 +329,7 @@ function OnInitCompleted(e){
}
function ajaxErrorAction(e){
if(e.responseText !== undefined){
if(e.responseText.includes("로그인이 해제되었습니다.")){
alert("로그인이 해제되었습니다.")
location.href="/";
@ -338,3 +339,4 @@ function ajaxErrorAction(e){
}
}
}

View File

@ -22,6 +22,12 @@ $(document).on('change', '#searchFormPolice', function (){
searchFormBoat.attr("disabled", "disabled")
}
})
$(document).on('click', "#violationInput", function (){
$("#violationSelectDiv").show();
})
$(document).on('mouseleave', "#violationSelectDiv", function (){
$("#violationSelectDiv").hide();
})
$(document).on('click', '#getFishingBoatEditModalBtn', function (){
getFishingBoatEditModal(null);
})
@ -107,6 +113,13 @@ $(document).on('click', '.violationRemoveBtn', function (){
$(document).on('change', '.boatNameKr', function (){
$(".boatNameKr").val(this.value);
})
$(document).on('change', '.oxSelector', function (){
childInputStateChange(Number(this.value), $(this).parent().find("input,select").slice(1));
})
$(document).on('change', '#directHandoverSelector', function (){
childInputStateChange(Number(this.value), $("#directHandoverDiv").find("input"))
})
$(document).on('change', '#equalCaptain', function (){
if(this.checked){
$.each($("#captainDiv :input"), function (idx, input){
@ -131,7 +144,6 @@ $(document).on('click', '#sailorAddBtn', function (){
' <option value="POS006">일반선원 또는 확인불가</option>\n' +
' </select>\n' +
' <select class="form-select form-select-sm isRestriction w-auto normalSailorRestriction">\n' +
' <option value="">선택</option>\n' +
' <option value="Y">O</option>\n' +
' <option value="N">X</option>\n' +
' </select>\n' +
@ -152,6 +164,9 @@ $(document).on('click', '.saveEditInfoBtn', function (){
$(document).on('change', '#napoDate, #napoTime', function (){
$("#napoDt").val($("#napoDate").val()+" "+$("#napoTime").val());
})
$(document).on('change', '#paymentPaymentDate, #paymentPaymentTime', function (){
$("#paymentPaymentDt").val($("#paymentPaymentDate").val()+" "+$("#paymentPaymentTime").val());
})
$(document).on('change', '.pressurizedTimeTaken', function (){
$("#pressurizedTimeTaken").val($("#pressurizedTimeTakenDate").val()+"일 "+$("#pressurizedTimeTakenTime").val())
})
@ -187,17 +202,6 @@ function getFishingBoatEditModal(cdsKey){
language: "ko",
autoclose: true
});
$(".dateTimeSelector").datetimepicker({
format:'Y-m-d H:i',
lang:'kr',
step:20
});
$(".timeSelector").datetimepicker({
datepicker:false,
format:'H시간i분',
lang:'kr',
step:20
});
const crackdownPolice = $("#crackdownPolice").val()
if(crackdownPolice){
getCrackdownBoatOption(crackdownPolice)
@ -254,6 +258,16 @@ function getCrackdownBoatOption(categoryCd){
});
}
function childInputStateChange(selectorValue, inputs){
switch (selectorValue){
case 1:
inputs.val('').attr('disabled', 'disabled')
break;
case 2:
inputs.removeAttr('disabled')
break;
}
}
function saveFishingBoatInfo(status){
if(confirm("저장하시겠습니까?")){
$("#status").val(status)

View File

@ -116,14 +116,11 @@ $(document).on('change', '.country', function (){
});
$(document).on('change', '#processResult', function (){
if ($(this).val() == 'etc') {
$(this).after(
'<div class="col-auto">'
+ '<input type="text" class="form-control form-control-sm" name="processResultEtc">'
+ '</div>'
);
if ($(this).val() === 'etc') {
$("[name=\"processResultEtc\"]").val('')
$("#processResultEtcDiv").show();
} else {
$(this).next().remove();
$("#processResultEtcDiv").hide();
}
});
@ -158,7 +155,7 @@ $(document).on('change', '#crimeType', function (){
+ '<option value="etc">기타</option>'
+ '</select>'
+ '</div>'
+ '<label class="col-sm-2 col-form-label col-form-label-sm text-center fw-bold">밀수가액</label>'
+ '<label class="col-sm-2 col-form-label col-form-label-sm text-center fw-bold">밀수가액(만원)</label>'
+ '<div class="col-sm-2">'
+ '<input class="form-control form-control-sm" type="number" min="0" name="smugglingAmount">'
+ '</div>'

View File

@ -46,11 +46,11 @@
</div>
</div>
<div class="row mb-1">
<label for="caseAgency" class="col-sm-1 col-form-label col-form-label-sm text-center">사건담당기관</label>
<label for="caseAgency" class="col-sm-1 col-form-label col-form-label-sm text-center">사건담당경찰서</label>
<div class="col-sm-2">
<select class="form-select form-select-sm crackdownStatusInfo" id="caseAgency" name="caseAgency">
<option value="">선택</option>
<th:block th:each="code:${ataList}">
<th:block th:each="code:${session.commonCode.get('OG')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq crackdownStatus.caseAgency}"></option>
</th:block>
</select>
@ -403,8 +403,12 @@
<label for="offenseType" class="col-sm-1 col-form-label col-form-label-sm text-center">범칙물</label>
<div class="col-sm-3">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="offenseType" name="fishingBoat.offenseType" placeholder="직접입력" th:value="${crackdownStatus.fishingBoat.offenseType}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="offenseWeight" name="fishingBoat.offenseWeight" placeholder="000kg" th:value="${crackdownStatus.fishingBoat.offenseWeight}">
<select class="form-select form-select-sm oxSelector">
<option value="1" th:selected="${crackdownStatus.fishingBoat.offenseType eq null}">없음</option>
<option value="2" th:selected="${crackdownStatus.fishingBoat.offenseType ne null}">직접입력</option>
</select>
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="offenseType" name="fishingBoat.offenseType" placeholder="범칙물" th:value="${crackdownStatus.fishingBoat.offenseType}" th:disabled="${crackdownStatus.fishingBoat.offenseType eq null}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="offenseWeight" name="fishingBoat.offenseWeight" placeholder="000kg" th:value="${crackdownStatus.fishingBoat.offenseWeight>0?crackdownStatus.fishingBoat.offenseWeight:''}" th:disabled="${crackdownStatus.fishingBoat.offenseType eq null}">
</div>
</div>
<div class="col-sm-2"></div>
@ -430,28 +434,35 @@
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="damboPayment" name="fishingBoat.damboPayment" placeholder="최대 999,999,999원" th:value="${crackdownStatus.fishingBoat.damboPayment}">
</div>
<label for="paymentPaymentDt" class="col-sm-1 col-form-label col-form-label-sm text-center fs-11">담보금 납부일시</label>
<label for="paymentPaymentDate" class="col-sm-1 col-form-label col-form-label-sm text-center fs-11">담보금 납부일시</label>
<div class="col-sm-2">
<input type="hidden" id="paymentPaymentDt" name="fishingBoat.paymentPaymentDt" th:value="${crackdownStatus.fishingBoat.paymentPaymentDt}">
<input type="hidden" id="paymentPaymentDt" name="fishingBoat.paymentPaymentDt" th:value="${#temporals.format(crackdownStatus.fishingBoat.paymentPaymentDt, 'yyyy-MM-dd hh:mm')}">
<div class="input-group">
<input type="text" class="form-control form-control-sm fishingBoatInfo dateSelector" id="paymentPaymentDate" placeholder="0000-00-00" th:value="${crackdownStatus.fishingBoat.paymentPaymentDt}" autocomplete="off">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="paymentPaymentTime" placeholder="00:00" th:value="${crackdownStatus.fishingBoat.paymentPaymentDt}" autocomplete="off">
<input type="text" class="form-control form-control-sm fishingBoatInfo dateSelector" id="paymentPaymentDate" placeholder="0000-00-00" th:value="${#temporals.format(crackdownStatus.fishingBoat.paymentPaymentDt, 'yyyy-MM-dd')}" autocomplete="off">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="paymentPaymentTime" placeholder="00:00" th:value="${#temporals.format(crackdownStatus.fishingBoat.paymentPaymentDt, 'hh:mm')}" autocomplete="off">
</div>
</div>
</div>
<div class="row mb-1">
<label for="confiscationFrame" class="col-sm-1 col-form-label col-form-label-sm text-center">압수어구</label>
<div class="col-sm-4">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationFrame" name="fishingBoat.confiscationFrame" placeholder="틀" th:value="${crackdownStatus.fishingBoat.confiscationFrame}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationWidth" name="fishingBoat.confiscationWidth" placeholder="폭" th:value="${crackdownStatus.fishingBoat.confiscationWidth}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationJo" name="fishingBoat.confiscationJo" placeholder="조" th:value="${crackdownStatus.fishingBoat.confiscationJo}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationGae" name="fishingBoat.confiscationGae" placeholder="개" th:value="${crackdownStatus.fishingBoat.confiscationGae}">
<div class="col-sm-5">
<div class="input-group w-auto"
th:with="confiscationFlag=${crackdownStatus.fishingBoat.confiscationFrame ne null ||
crackdownStatus.fishingBoat.confiscationWidth ne null ||
crackdownStatus.fishingBoat.confiscationJo ne null ||
crackdownStatus.fishingBoat.confiscationGae ne null ||
crackdownStatus.fishingBoat.confiscationEtc ne null}">
<select class="form-select form-select-sm oxSelector">
<option value="1" th:selected="${!confiscationFlag}">없음</option>
<option value="2" th:selected="${confiscationFlag}">수량기입</option>
</select>
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationFrame" name="fishingBoat.confiscationFrame" placeholder="틀" th:value="${crackdownStatus.fishingBoat.confiscationFrame}" th:disabled="${!confiscationFlag}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationWidth" name="fishingBoat.confiscationWidth" placeholder="폭" th:value="${crackdownStatus.fishingBoat.confiscationWidth}" th:disabled="${!confiscationFlag}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationJo" name="fishingBoat.confiscationJo" placeholder="조" th:value="${crackdownStatus.fishingBoat.confiscationJo}" th:disabled="${!confiscationFlag}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationGae" name="fishingBoat.confiscationGae" placeholder="개" th:value="${crackdownStatus.fishingBoat.confiscationGae}" th:disabled="${!confiscationFlag}">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationEtc" name="fishingBoat.confiscationEtc" placeholder="기타" th:value="${crackdownStatus.fishingBoat.confiscationEtc}" th:disabled="${!confiscationFlag}">
</div>
</div>
<div class="col-sm-3">
<input type="text" class="form-control form-control-sm fishingBoatInfo" id="confiscationEtc" name="fishingBoat.confiscationEtc" placeholder="기타" th:value="${crackdownStatus.fishingBoat.confiscationEtc}">
</div>
</div>
</div>
<div class="tab-pane fade p-2" id="processResultTabPanel" role="tabpanel" aria-labelledby="processResultTab" tabindex="0">
@ -470,7 +481,7 @@
<th:block th:with="ptt=${crackdownStatus.processResult.pressurizedTimeTaken}">
<div class="input-group w-auto">
<input type="number" class="form-control form-control-sm pressurizedTimeTaken processResultInfo" id="pressurizedTimeTakenDate" placeholder="일" th:value="${#strings.substringBefore(ptt, '일')}">
<input type="text" class="form-control form-control-sm pressurizedTimeTaken processResultInfo timeSelector" id="pressurizedTimeTakenTime" placeholder="00:00" autocomplete="off" th:value="${#strings.substringAfter(ptt, '일')}">
<input type="text" class="form-control form-control-sm pressurizedTimeTaken processResultInfo" id="pressurizedTimeTakenTime" placeholder="00:00" autocomplete="off" th:value="${#strings.substringAfter(ptt, '일')}">
</div>
<input type="hidden" class="processResultInfo" name="processResult.pressurizedTimeTaken" id="pressurizedTimeTaken" th:value="${ptt}">
</th:block>
@ -480,7 +491,7 @@
<th:block th:with="wrtt=${crackdownStatus.processResult.warrantReqTakeTime}">
<div class="input-group w-auto">
<input type="number" class="form-control form-control-sm warrantReqTake processResultInfo" id="warrantReqTakeDate" placeholder="일" th:value="${#strings.substringBefore(wrtt, '일')}">
<input type="text" class="form-control form-control-sm warrantReqTake processResultInfo timeSelector" id="warrantReqTakeTime" placeholder="00:00" autocomplete="off" th:value="${#strings.substringAfter(wrtt, '일')}">
<input type="text" class="form-control form-control-sm warrantReqTake processResultInfo" id="warrantReqTakeTime" placeholder="00:00" autocomplete="off" th:value="${#strings.substringAfter(wrtt, '일')}">
</div>
<input type="hidden" class="processResultInfo" name="processResult.warrantReqTakeTime" id="warrantReqTake" th:value="${wrtt}">
</div>
@ -499,27 +510,42 @@
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="evictionDt" name="processResult.evictionDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.evictionDt}" autocomplete="off">
</div>
</div>
<th:block th:with="directHandoverFlag=${crackdownStatus.processResult.directHandoverDt ne null ||
crackdownStatus.processResult.handoverSeaPointLon ne null ||
crackdownStatus.processResult.handoverSeaPointLat ne null ||
crackdownStatus.processResult.handoverBoat ne null ||
crackdownStatus.processResult.middleTakeoverBoat ne null}">
<div class="row mb-1">
<label for="directHandoverSelector" class="col-sm-1 col-form-label col-form-label-sm text-center">직접인계여부</label>
<div class="col-sm-2">
<select class="form-select form-select-sm processResultInfo" id="directHandoverSelector">
<option value="1" th:selected="${!directHandoverFlag}">X</option>
<option value="2" th:selected="${directHandoverFlag}">O</option>
</select>
</div>
</div>
<div class="row mb-1" id="directHandoverDiv">
<label for="directHandoverDt" class="col-sm-1 col-form-label col-form-label-sm text-center">직접인계일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="directHandoverDt" name="processResult.directHandoverDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.directHandoverDt}" autocomplete="off">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="directHandoverDt" name="processResult.directHandoverDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.directHandoverDt}" autocomplete="off" th:disabled="${!directHandoverFlag}">
</div>
<label for="handoverSeaPointLon" class="col-sm-1 col-form-label col-form-label-sm text-center">인계 해점</label>
<div class="col-sm-2">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverSeaPointLon" name="processResult.handoverSeaPointLon" placeholder="00-00.00N" th:value="${crackdownStatus.processResult.handoverSeaPointLon}">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverSeaPointLat" name="processResult.handoverSeaPointLat" placeholder="000-00.00E" th:value="${crackdownStatus.processResult.handoverSeaPointLat}">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverSeaPointLon" name="processResult.handoverSeaPointLon" placeholder="00-00.00N" th:value="${crackdownStatus.processResult.handoverSeaPointLon}" th:disabled="${!directHandoverFlag}">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverSeaPointLat" name="processResult.handoverSeaPointLat" placeholder="000-00.00E" th:value="${crackdownStatus.processResult.handoverSeaPointLat}" th:disabled="${!directHandoverFlag}">
</div>
</div>
<label for="handoverBoat" class="col-sm-1 col-form-label col-form-label-sm text-center">인계 함정</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverBoat" name="processResult.handoverBoat" th:value="${crackdownStatus.processResult.handoverBoat}">
<input type="text" class="form-control form-control-sm processResultInfo" id="handoverBoat" name="processResult.handoverBoat" th:value="${crackdownStatus.processResult.handoverBoat}" th:disabled="${!directHandoverFlag}">
</div>
<label for="middleTakeoverBoat" class="col-sm-1 col-form-label col-form-label-sm text-center">중측 인수함정</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo" id="middleTakeoverBoat" name="processResult.middleTakeoverBoat" th:value="${crackdownStatus.processResult.middleTakeoverBoat}">
<input type="text" class="form-control form-control-sm processResultInfo" id="middleTakeoverBoat" name="processResult.middleTakeoverBoat" th:value="${crackdownStatus.processResult.middleTakeoverBoat}" th:disabled="${!directHandoverFlag}">
</div>
</div>
</th:block>
<hr>
<!--<div class="row mb-1">
<label for="materialDamageDiv" class="col-sm-1 col-form-label col-form-label-sm text-center">물적피해</label>
@ -577,36 +603,52 @@
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="consignmentEndDt" name="processResult.consignmentEndDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.consignmentEndDt}" autocomplete="off">
</div>
<label for="confiscationDt" class="col-sm-1 col-form-label col-form-label-sm text-center">몰수확정일</label>
<label for="confiscationDt" class="col-sm-1 col-form-label col-form-label-sm text-center">몰수여부</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="confiscationDt" name="processResult.confiscationDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.confiscationDt}" autocomplete="off">
<div class="input-group" th:with="confiscationFlag=${!#strings.isEmpty(crackdownStatus.processResult.confiscationDt)}">
<select class="form-select form-select-sm w-30 processResultInfo oxSelector">
<option value="1" th:selected="${!confiscationFlag}">X</option>
<option value="2" th:selected="${confiscationFlag}">O</option>
</select>
<input type="text" class="form-control form-control-sm w-70 processResultInfo dateSelector" id="confiscationDt" name="processResult.confiscationDt" placeholder="몰수확정일" th:value="${crackdownStatus.processResult.confiscationDt}" autocomplete="off" th:disabled="${!confiscationFlag}">
</div>
</div>
</div>
<div class="row mb-1">
<label for="boatDisposalDt" class="col-sm-1 col-form-label col-form-label-sm text-center">폐선일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="boatDisposalDt" name="processResult.boatDisposalDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.boatDisposalDt}" autocomplete="off">
</div>
<label for="boatDisposalType" class="col-sm-1 col-form-label col-form-label-sm text-center">폐선종류</label>
<div class="col-sm-2">
<select class="form-select form-select-sm processResultInfo" id="boatDisposalType" name="processResult.boatDisposalType">
<option value="">선택</option>
<label for="boatDisposalDt" class="col-sm-1 col-form-label col-form-label-sm text-center">폐선여부</label>
<div class="col-sm-3">
<div class="input-group" th:with="disposalFlag=${crackdownStatus.processResult.boatDisposalDt ne null}">
<select class="form-select form-select-sm w-30 processResultInfo oxSelector">
<option value="1" th:selected="${!disposalFlag}">X</option>
<option value="2" th:selected="${disposalFlag}">O</option>
</select>
<input type="text" class="form-control form-control-sm w-35 processResultInfo dateSelector" id="boatDisposalDt" name="processResult.boatDisposalDt" placeholder="폐선일" th:value="${crackdownStatus.processResult.boatDisposalDt}" autocomplete="off" th:disabled="${!disposalFlag}">
<select class="form-select form-select-sm w-35 processResultInfo" id="boatDisposalType" name="processResult.boatDisposalType" th:disabled="${!disposalFlag}">
<option value="">폐선 종류 선택</option>
<th:block th:each="code:${bdtList}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq crackdownStatus.processResult.boatDisposalType}"></option>
</th:block>
</select>
</div>
<label for="returnDt" class="col-sm-1 col-form-label col-form-label-sm text-center">환부일</label>
</div>
<div class="col-sm-2"></div>
<label for="returnDt" class="col-sm-1 col-form-label col-form-label-sm text-center">환부여부</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="returnDt" name="processResult.returnDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.returnDt}" autocomplete="off">
<div class="input-group" th:with="returnFlag=${!#strings.isEmpty(crackdownStatus.processResult.returnDt)}">
<select class="form-select form-select-sm w-30 processResultInfo oxSelector">
<option value="1" th:selected="${!returnFlag}">X</option>
<option value="2" th:selected="${returnFlag}">O</option>
</select>
<input type="text" class="form-control form-control-sm w-70 processResultInfo dateSelector" id="returnDt" name="processResult.returnDt" placeholder="환부일" th:value="${crackdownStatus.processResult.returnDt}" autocomplete="off" th:disabled="${!returnFlag}">
</div>
</div>
</div>
<hr>
<div class="row mb-1">
<th:block th:if="${#lists.isEmpty(crackdownStatus.sailorList)}">
<label for="captainRestriction" class="col-sm-1 col-form-label col-form-label-sm text-center">선장구속</label>
<div class="col-sm-2">
<select class="form-select form-select-sm sailorInfo" id="captainRestriction">
<option value="">선택</option>
<option value="Y">O</option>
<option value="N">X</option>
</select>
@ -614,7 +656,7 @@
<label for="navigatingOfficerRestriction" class="col-sm-1 col-form-label col-form-label-sm text-center">항해장구속</label>
<div class="col-sm-2">
<select class="form-select form-select-sm sailorInfo" id="navigatingOfficerRestriction">
<option value="">선택</option>
<option value="">없음</option>
<option value="Y">O</option>
<option value="N">X</option>
</select>
@ -622,7 +664,7 @@
<label for="chiefEngineerRestriction" class="col-sm-1 col-form-label col-form-label-sm text-center">기관장구속</label>
<div class="col-sm-2">
<select class="form-select form-select-sm sailorInfo" id="chiefEngineerRestriction">
<option value="">선택</option>
<option value="">없음</option>
<option value="Y">O</option>
<option value="N">X</option>
</select>
@ -634,7 +676,6 @@
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS001'}">
<select class="form-select form-select-sm sailorInfo" id="captainRestriction">
<option value="">선택</option>
<option value="Y" th:selected="${sailor.isRestriction eq 'Y'}">O</option>
<option value="N" th:selected="${sailor.isRestriction eq 'N'}">X</option>
</select>
@ -646,7 +687,6 @@
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS002'}">
<select class="form-select form-select-sm sailorInfo" id="navigatingOfficerRestriction">
<option value="">선택</option>
<option value="Y" th:selected="${sailor.isRestriction eq 'Y'}">O</option>
<option value="N" th:selected="${sailor.isRestriction eq 'N'}">X</option>
</select>
@ -658,7 +698,6 @@
<th:block th:each="sailor:${crackdownStatus.sailorList}">
<th:block th:if="${sailor.position eq 'POS003'}">
<select class="form-select form-select-sm sailorInfo" id="chiefEngineerRestriction">
<option value="">선택</option>
<option value="Y" th:selected="${sailor.isRestriction eq 'Y'}">O</option>
<option value="N" th:selected="${sailor.isRestriction eq 'N'}">X</option>
</select>
@ -667,10 +706,10 @@
</div>
</th:block>
</div>
<div class="row mb-1">
<div class="row mb-3">
<label for="sailorAddBtn" class="col-sm-1 col-form-label col-form-label-sm text-center">
선원구속
<button type="button" class="border-0 sailorInfo" id="sailorAddBtn">
<button type="button" class="border-0 bg-white sailorInfo" id="sailorAddBtn">
<i class="bi bi-plus-square text-primary"></i>
</button>
</label>
@ -685,7 +724,6 @@
<option value="POS006" th:selected="${sailor.position eq 'POS006'}">일반선원 또는 확인불가</option>
</select>
<select class="form-select form-select-sm sailorInfo isRestriction w-auto normalSailorRestriction">
<option value="">선택</option>
<option value="Y" th:selected="${sailor.isRestriction eq 'Y'}">O</option>
<option value="N" th:selected="${sailor.isRestriction eq 'N'}">X</option>
</select>
@ -699,30 +737,6 @@
</th:block>
</div>
</div>
<div class="row mb-1">
<label for="exileCnt" class="col-sm-1 col-form-label col-form-label-sm text-center">추방인원</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo" id="exileCnt" name="processResult.exileCnt" placeholder="00명" th:value="${crackdownStatus.processResult.exileCnt}">
</div>
<label for="exileDt" class="col-sm-1 col-form-label col-form-label-sm text-center">추방일</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo dateSelector" id="exileDt" name="processResult.exileDt" placeholder="0000-00-00" th:value="${crackdownStatus.processResult.exileDt}" autocomplete="off">
</div>
<label for="flight" class="col-sm-1 col-form-label col-form-label-sm text-center">항공편</label>
<div class="col-sm-2">
<input type="text" class="form-control form-control-sm processResultInfo" id="flight" name="processResult.flight" th:value="${crackdownStatus.processResult.flight}">
</div>
</div>
<div class="row mb-3">
<label for="immigrationOfficeName" class="col-sm-1 col-form-label col-form-label-sm text-center">출입국 담당자</label>
<div class="col-sm-4">
<div class="input-group w-auto">
<input type="text" class="form-control form-control-sm processResultInfo" id="immigrationOfficeName" name="processResult.immigrationOfficeName" placeholder="사무소명" th:value="${crackdownStatus.processResult.immigrationOfficeName}">
<input type="text" class="form-control form-control-sm processResultInfo" id="immigrationOfficeOfficerName" name="processResult.immigrationOfficeOfficerName" placeholder="이름" th:value="${crackdownStatus.processResult.immigrationOfficeOfficerName}">
<input type="text" class="form-control form-control-sm processResultInfo" id="immigrationOfficeOfficerContact" name="processResult.immigrationOfficeOfficerContact" placeholder="연락처" th:value="${crackdownStatus.processResult.immigrationOfficeOfficerContact}">
</div>
</div>
</div>
</div>
</div>
</form>

View File

@ -5,6 +5,17 @@
<th:block layout:fragment="script">
<script type="text/javascript" th:src="@{/js/faStatistics/fishingBoatMgt.js}"></script>
</th:block>
<th:block layout:fragment="css">
<style>
#violationSelectDiv{
position: absolute;
top: 100px;
left: 710px;
display: none;
z-index: 10;
}
</style>
</th:block>
<div layout:fragment="content">
<main>
<div class="row justify-content-between">
@ -65,6 +76,8 @@
<div class="col-2">
<input type="text" class="form-control form-control-sm" placeholder="선명(한글)" name="boatNameKr" th:value="${searchParams.fishingBoat.boatNameKr}">
</div>
</div>
<div class="row justify-content-end">
<div class="col-2">
<input type="text" class="form-control form-control-sm" placeholder="선적지" name="boatNny" th:value="${searchParams.fishingBoat.boatNny}">
</div>
@ -74,8 +87,6 @@
<input type="text" class="form-control form-control-sm" placeholder="톤수" name="tonMax" th:value="${searchParams.fishingBoat.tonMax>0?searchParams.fishingBoat.tonMax:''}">
</div>
</div>
</div>
<div class="row justify-content-end">
<div class="col-2">
<select class="form-select form-select-sm" name="boatMaterial">
<option value="">선질</option>
@ -92,13 +103,22 @@
</th:block>
</select>
</div>
<div class="col-2">
<select class="form-select form-select-sm" name="violation">
</div>
<div class="row justify-content-end">
<div class="col-4">
<input type="text" class="form-control form-control-sm" id="violationInput" placeholder="위반형태" readonly>
<div class="bg-white border p-2 text-start" id="violationSelectDiv">
<div th:each="code:${session.commonCode.get('VT')}">
<input type="checkbox" name="violation" th:id="|violation${code.itemCd}|" th:value="${code.itemCd}" th:checked="${searchParams.fishingBoat.violation ne null?#strings.contains(searchParams.fishingBoat.violation, code.itemCd):false}">
<label th:for="|violation${code.itemCd}|" class="form-label col-form-label-sm" th:text="${code.itemValue}"></label>
</div>
</div>
<!--<select class="form-select form-select-sm" name="violation">
<option value="">위반형태</option>
<th:block th:each="code:${session.commonCode.get('VT')}">
<option th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq searchParams.fishingBoat.violation}"></option>
</th:block>
</select>
</select>-->
</div>
<div class="col-2">
<select class="form-select form-select-sm" name="processStatus">

View File

@ -60,7 +60,7 @@
<div class="row border border-secondary border-top-0">
<label class="col-sm-1 col-form-label col-form-label-sm 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')}">
<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 py-2 border-end border-secondary text-center">나포장소</label>
<div class="col-sm-8">

View File

@ -182,7 +182,7 @@
</div>
</th:block>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">밀수가액</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">밀수가액(만원)</label>
<div class="col-sm-2">
<input type="number" min="0" class="form-control form-control-sm" name="smugglingAmount" th:value="${internationalCrimeArrest.smugglingAmount}">
</div>
@ -321,11 +321,12 @@
</th:block>
<option value="etc" th:selected="${internationalCrimeArrest.processResult ne null && internationalCrimeArrest.processResult ne '' && !#strings.contains(internationalCrimeArrest.processResult, 'PCR')}">기타</option>
</select>
<th:block th:if="${internationalCrimeArrest.processResult ne null && internationalCrimeArrest.processResult ne '' && !#strings.contains(internationalCrimeArrest.processResult, 'PCR')}">
<div class="col-auto">
<input type="text" class="form-control form-control-sm" name="processResultEtc" th:value="${internationalCrimeArrest.processResult}">
</div>
</th:block>
</div>
<div class="row justify-content-end mb-1" id="processResultEtcDiv" style="display:none;">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">불법체류자인계(명)</label>
<div class="col-sm-2">
<input type="number" class="form-control form-control-sm" name="processResultEtc" th:value="${internationalCrimeArrest.processResult}">
</div>
</div>
<div class="row mb-1 justify-content-center">

View File

@ -69,7 +69,7 @@
</div>
</th:block>
</div>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">밀수가액</label>
<label class="col-sm-2 col-form-label col-form-label-sm text-center">밀수가액(만원)</label>
<div class="col-sm-2">
<input type="number" min="0" name="smugglingAmount" th:value="${internationalCrimeArrest.smugglingAmount}" readonly>
</div>
@ -295,13 +295,16 @@
</th:block>
<option value="etc" th:selected="${internationalCrimeArrest.processResult ne null && internationalCrimeArrest.processResult ne '' && !#strings.contains(internationalCrimeArrest.processResult, 'PCR')}">기타</option>
</select>
</div>
</div>
<th:block th:if="${internationalCrimeArrest.processResult ne null && internationalCrimeArrest.processResult ne '' && !#strings.contains(internationalCrimeArrest.processResult, 'PCR')}">
<div class="col-auto">
<input type="text" class="form-control form-control-sm" name="processResultEtc" th:value="${internationalCrimeArrest.processResult}" readonly>
<div class="row justify-content-end mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center">불법체류자인계(명)</label>
<div class="col-sm-2">
<input type="number" class="form-control form-control-sm" name="processResultEtc" th:value="${internationalCrimeArrest.processResult}" readonly>
</div>
</div>
</th:block>
</div>
</div>
<div class="row mb-1 justify-content-center">
<label for="caseOverviewDiv" class="col-sm-2 col-form-label col-form-label-sm text-center">범죄사실(사건개요)</label>
<div class="col-sm-10" id="caseOverviewDiv">

View File

@ -39,9 +39,10 @@
</tr>
</thead>
<tbody class="table-group-divider bg-white">
<tr class="" th:each="vuln:${vulnerableList}">
<tr class="" th:each="vuln:${vulnerableList}" th:if="${!(vuln.item_cd eq 'OG027' or vuln.item_cd eq 'OG028')}">
<td class="table_id" th:text="${vuln.gubun}"></td>
<td id="infoModal" style="color: blue; cursor:pointer;" th:data-mgtOrgan="${vuln.item_cd}" th:text="${vuln.item_value}"></td>
<td id="infoModal" style="color: blue; cursor:pointer;"
th:data-mgtOrgan="${vuln.item_cd}" th:text="${vuln.item_value}"></td>
<td th:text="${vuln.a}"></td>
<td th:text="${vuln.b}"></td>
<td th:text="${vuln.c}"></td>