186 lines
9.9 KiB
HTML
186 lines
9.9 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
|
<div class="modal-header bg-dark">
|
|
<h5 class="modal-title text-white" id="cdiSelectModalLabel">단속현황 불러오기</h5>
|
|
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div class="row mx-0">
|
|
<div class="col-12">
|
|
<form method="get" th:action="@{/faStatistics/crackdownInfo}" id="cdsSearchForm">
|
|
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
|
<div class="row justify-content-end py-1">
|
|
<div class="col-8">
|
|
<div class="row">
|
|
<div class="col-11">
|
|
<div class="row justify-content-end pb-1">
|
|
<div class="col-2">
|
|
<select class="form-select form-select-sm " id="caseAgency" name="caseAgency">
|
|
<option value="">사건담당경찰서</option>
|
|
<th:block th:each="code:${session.commonCode.get('OG')}">
|
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}"
|
|
th:selected="${code.itemCd eq searchParams.caseAgency}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<div class="col-2">
|
|
<input type="text" class="form-control form-control-sm" placeholder="사건담당경찰관">
|
|
</div>
|
|
<div class="col-2">
|
|
<select class="form-select form-select-sm" name="crackdownPolice" id="searchFormPolice">
|
|
<option value="">단속경찰서</option>
|
|
<th:block th:each="code:${session.commonCode.get('CPO')}">
|
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}"
|
|
th:selected="${code.itemCd eq searchParams.crackdownPolice}"></option>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
<div class="col-2">
|
|
<select class="form-select form-select-sm" name="crackdownBoat" id="searchFormBoat" disabled>
|
|
<option value="">단속함정</option>
|
|
<th:block th:each="cpoNum:${#numbers.sequence(1, #lists.size(session.commonCode.get('CPO')))}">
|
|
<th:block th:each="code:${session.commonCode.get('CPO'+cpoNum)}">
|
|
<option th:class="${code.categoryCd}" th:value="${code.itemCd}" th:text="${code.itemValue}" th:selected="${code.itemCd eq searchParams.crackdownBoat}" style="display: none;"></option>
|
|
</th:block>
|
|
</th:block>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="row justify-content-end pb-1">
|
|
<div class="col-2">
|
|
<input type="text" class="form-control form-control-sm" placeholder="사건번호">
|
|
</div>
|
|
<div class="col-2">
|
|
<input type="text" class="form-control form-control-sm" placeholder="MMSI.NO">
|
|
</div>
|
|
<div class="col-2">
|
|
<input type="text" class="form-control form-control-sm" placeholder="나포장소">
|
|
</div>
|
|
<div class="col-4">
|
|
<div class="input-group w-auto input-daterange" id="dateSelectorDiv">
|
|
<select class="form-select form-select-sm w-30" name="dateSelector">
|
|
<option value="">조건선택</option>
|
|
<option value="napoDt" th:selected="${searchParams.dateSelector eq 'napoDt'}">나포일시</option>
|
|
<option value="wrtDt" th:selected="${searchParams.dateSelector eq 'wrtDt'}">작성일시</option>
|
|
</select>
|
|
<input type="text" class="form-control form-control-sm w-35" id="startDate" name="startDate" placeholder="시작일" autocomplete="off" readonly th:value="${searchParams.startDate}">
|
|
<input type="text" class="form-control form-control-sm w-35" id="endDate" name="endDate" placeholder="종료일" autocomplete="off" readonly th:value="${searchParams.endDate}">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-1 d-grid gap-2">
|
|
<input type="submit" class="btn btn-primary" id="searchBtn" value="검색">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="row">
|
|
<div class="col-12 overflow-auto">
|
|
<table class="table table-sm table-hover table-bordered text-nowrap" id="cdsTable">
|
|
<thead class="align-middle">
|
|
<tr class="table-secondary">
|
|
<th>순번</th>
|
|
<th>사건번호</th>
|
|
<th>MMSI.NO</th>
|
|
<th>나포일시</th>
|
|
<th>나포장소</th>
|
|
<th>사건담당경찰서</th>
|
|
<th>사건담당경찰관</th>
|
|
<th>단속경찰서</th>
|
|
<th>단속함정</th>
|
|
<th>침범유형</th>
|
|
<th>NLL침범여부</th>
|
|
<th>압송여부</th>
|
|
<th>작성자</th>
|
|
<th>작성일시</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="table-group-divider align-middle">
|
|
<th:block th:each="cdi,cnt:${crackdownInfoList}">
|
|
<tr class="cdiTr" th:data-cdskey="${cdi.cdsKey}">
|
|
<td th:text="${searchParams.contentCnt-(20*(searchParams.pageIndex-1))-cnt.index}"></td>
|
|
<td th:text="${cdi.caseNum}"></td>
|
|
<td th:text="${cdi.mmsi}"></td>
|
|
<td th:text="${#temporals.format(cdi.napoDt, 'yyyy-MM-dd HH:mm')}"></td>
|
|
<td>
|
|
<div th:if="${!#strings.isEmpty(cdi.napoSeaPointLon) and !#strings.isEmpty(cdi.napoSeaPointLon)}" th:text="${#strings.concat(cdi.napoSeaPointLon, ' ~ ', cdi.napoSeaPointLat)}"></div>
|
|
<div th:if="${!#strings.isEmpty(cdi.napoSeaPointLon) or !#strings.isEmpty(cdi.napoSeaPointLon)}" th:text="${#strings.concat(cdi.napoSeaPointLon, cdi.napoSeaPointLat)}"></div>
|
|
<div th:text="${cdi.napoSeaPointDetail}"></div>
|
|
</td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get('OG')}">
|
|
<th:block th:if="${code.itemCd eq cdi.caseAgency}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
</td>
|
|
<td th:text="${cdi.casePoliceOfficer}"></td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get('CPO')}">
|
|
<th:block th:if="${code.itemCd eq cdi.crackdownPolice}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
</td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get(cdi.crackdownPolice)}">
|
|
<th:block th:if="${code.itemCd eq cdi.crackdownBoat}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
</td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get('IST')}">
|
|
<th:block th:if="${code.itemCd eq cdi.invasionType}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
</td>
|
|
<td th:text="${cdi.nll eq 'Y'?'O':'X'}"></td>
|
|
<td th:text="${cdi.fieldIvsgt eq 'C'?'압송':'현장조사'}"></td>
|
|
<td>
|
|
<th:block th:each="code:${session.commonCode.get('JT')}">
|
|
<th:block th:if="${code.itemCd eq cdi.wrtUserGrd}" th:text="${code.itemValue}"></th:block>
|
|
</th:block>
|
|
<th:block th:text="${cdi.wrtUserNm}"></th:block>
|
|
</td>
|
|
<td th:text="${#temporals.format(cdi.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
|
</tr>
|
|
</th:block>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="row justify-content-center">
|
|
<div class="col-auto">
|
|
<nav aria-label="Page navigation">
|
|
<ul class="pagination mb-0">
|
|
<th:block th:if="${searchParams.pageIndex>3}">
|
|
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
|
<a class="page-link" href="#" aria-label="Previous">
|
|
<span aria-hidden="true">«</span>
|
|
</a>
|
|
</li>
|
|
</th:block>
|
|
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
|
<li class="page-item" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex eq num?'active':''}">
|
|
<a class="page-link" href="#" th:text="${num}"></a>
|
|
</li>
|
|
</th:block>
|
|
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
|
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
|
<a class="page-link" href="#" aria-label="Next">
|
|
<span aria-hidden="true">»</span>
|
|
</a>
|
|
</li>
|
|
</th:block>
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-primary">불러오기</button>
|
|
</div>
|
|
</html>
|