Compare commits
No commits in common. "c62ae76a4ac32e8f50c1f331b83a44f5b8758e45" and "b2fa46df9b860464c792fbcfdaa19b8fa89bc98b" have entirely different histories.
c62ae76a4a
...
b2fa46df9b
|
|
@ -30,7 +30,7 @@ public class KwmsService {
|
||||||
UserInfo userInfo = new UserInfo();
|
UserInfo userInfo = new UserInfo();
|
||||||
userInfo.setDicCode(empInfo.getDicCode());
|
userInfo.setDicCode(empInfo.getDicCode());
|
||||||
userInfo.setUserNm(empInfo.getEmpNm());
|
userInfo.setUserNm(empInfo.getEmpNm());
|
||||||
userInfo.setSex(empInfo.getSex().strip().equals("F")?"SEX001":"SEX002");
|
userInfo.setSex(empInfo.getSex().strip());
|
||||||
String[] positionAry = empInfo.getCallBuseoNm().split(" ");
|
String[] positionAry = empInfo.getCallBuseoNm().split(" ");
|
||||||
userInfo.setOgCd(codeMgtService.searchCode("OG", positionAry[0]));
|
userInfo.setOgCd(codeMgtService.searchCode("OG", positionAry[0]));
|
||||||
if (positionAry.length>1){
|
if (positionAry.length>1){
|
||||||
|
|
|
||||||
|
|
@ -30,42 +30,34 @@ public class FishingBoatController {
|
||||||
@RequestMapping("/fishingBoat")
|
@RequestMapping("/fishingBoat")
|
||||||
public ModelAndView fishingBoat(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus) {
|
public ModelAndView fishingBoat(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus) {
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/fishingBoat/fishingBoatMgt");
|
ModelAndView mav = new ModelAndView("faStatistics/fishingBoat/fishingBoatMgt");
|
||||||
if(crackdownStatus.getFishingBoat()==null){
|
|
||||||
crackdownStatus.setFishingBoat(new FishingBoat());
|
|
||||||
crackdownStatus.setProcessResult(new ProcessResult());
|
|
||||||
}
|
|
||||||
//메뉴권한 확인
|
//메뉴권한 확인
|
||||||
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/fishingBoat").get(0).getAccessAuth();
|
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/fishingBoat").get(0).getAccessAuth();
|
||||||
mav.addObject("accessAuth", accessAuth);
|
mav.addObject("accessAuth", accessAuth);
|
||||||
|
|
||||||
crackdownStatus.setQueryInfo();
|
crackdownStatus.setQueryInfo();
|
||||||
List<CrackdownStatus> crackdownStatusList = fishingBoatService.selectFishingBoatList(crackdownStatus);
|
List<CrackdownStatus> crackdownStatusList = fishingBoatService.selectCrackdownStatusList(crackdownStatus);
|
||||||
|
|
||||||
mav.addObject("crackdownStatusList", crackdownStatusList);
|
mav.addObject("crackdownStatusList", crackdownStatusList);
|
||||||
crackdownStatus.setContentCnt(fishingBoatService.selectFishingBoatListCnt(crackdownStatus));
|
crackdownStatus.setContentCnt(fishingBoatService.selectCrackdownStatusListCnt(crackdownStatus));
|
||||||
crackdownStatus.setPaginationInfo();
|
crackdownStatus.setPaginationInfo();
|
||||||
mav.addObject("searchParams", crackdownStatus);
|
mav.addObject("searchParams", crackdownStatus);
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/fishingBoatViewModal")
|
@GetMapping("/fishingBoatViewModal")
|
||||||
public ModelAndView fishingBoatViewModal(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus){
|
public ModelAndView fishingBoatViewModal(@AuthenticationPrincipal UserInfo loginUser, ProcessResult processResult){
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/fishingBoat/fishingBoatViewModal");
|
ModelAndView mav = new ModelAndView("faStatistics/processResult/processResultViewModal");
|
||||||
crackdownStatus = fishingBoatService.selectCrackdownStatus(crackdownStatus.getCdsKey());
|
// processResult = processResultService.selectProcessResult(processResult.getPrKey());
|
||||||
|
// processResult.setCrackdownStatus(crackdownStatusRepository.findByCdsKey(processResult.getCdsKey()));
|
||||||
|
// processResult.setFbKey(fishingBoatRepository.findByCdsKey(processResult.getCdsKey()).getFbKey());
|
||||||
|
// processResult.setBoatNameKr(fishingBoatRepository.findByCdsKey(processResult.getCdsKey()).getBoatNameKr());
|
||||||
|
// processResult.setViolationList(violationRepository.findByFbKey(processResult.getFbKey()));
|
||||||
|
|
||||||
mav.addObject("crackdownStatus", crackdownStatus);
|
mav.addObject("processResult", processResult);
|
||||||
|
mav.addObject("userSeq",loginUser.getUserSeq());
|
||||||
//메뉴권한 확인
|
//메뉴권한 확인
|
||||||
mav.addObject("accessAuth", authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/processResult").get(0).getAccessAuth());
|
mav.addObject("accessAuth", authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/processResult").get(0).getAccessAuth());
|
||||||
|
|
||||||
mav.addObject("ataList", codeMgtService.selectCodeMgtList("ATA"));
|
|
||||||
mav.addObject("cpoList", codeMgtService.selectCodeMgtList("CPO"));
|
|
||||||
mav.addObject("vtList", codeMgtService.selectCodeMgtList("VT"));
|
|
||||||
mav.addObject("ftList", codeMgtService.selectCodeMgtList("FT"));
|
|
||||||
mav.addObject("bmList", codeMgtService.selectCodeMgtList("BM"));
|
|
||||||
mav.addObject("prList", codeMgtService.selectCodeMgtList("PR"));
|
|
||||||
mav.addObject("bdtList", codeMgtService.selectCodeMgtList("BDT"));
|
|
||||||
mav.addObject("boatList", codeMgtService.selectCodeMgtList(crackdownStatus.getCrackdownPolice()));
|
|
||||||
mav.addObject("userSeq", loginUser.getUserSeq());
|
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,4 @@ import java.util.List;
|
||||||
public interface CrackdownStatusMapper {
|
public interface CrackdownStatusMapper {
|
||||||
List<CrackdownStatus> selectCrackdownStatusList(CrackdownStatus crackdownStatus);
|
List<CrackdownStatus> selectCrackdownStatusList(CrackdownStatus crackdownStatus);
|
||||||
Integer selectCrackdownStatusListCnt(CrackdownStatus crackdownStatus);
|
Integer selectCrackdownStatusListCnt(CrackdownStatus crackdownStatus);
|
||||||
List<CrackdownStatus> selectFishingBoatList(CrackdownStatus crackdownStatus);
|
|
||||||
Integer selectFishingBoatListCnt(CrackdownStatus crackdownStatus);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,29 +46,6 @@ public class CrackdownStatus extends CrackdownStatusBaseEntity {
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
private Integer fbKey;
|
private Integer fbKey;
|
||||||
@Transient
|
|
||||||
private String boatNameKr;
|
|
||||||
@Transient
|
|
||||||
private String fisheryType;
|
|
||||||
@Transient
|
|
||||||
private String boatNnySung;
|
|
||||||
@Transient
|
|
||||||
private String boatMaterial;
|
|
||||||
@Transient
|
|
||||||
private String boatNnySi;
|
|
||||||
@Transient
|
|
||||||
private Integer tonCnt;
|
|
||||||
@Transient
|
|
||||||
private String boat_material;
|
|
||||||
@Transient
|
|
||||||
private String violationStr;
|
|
||||||
|
|
||||||
|
|
||||||
@Transient
|
|
||||||
private String sailorNameKr;
|
|
||||||
|
|
||||||
@Transient
|
|
||||||
private String processStatus;
|
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
private Integer restrictionCaptin;
|
private Integer restrictionCaptin;
|
||||||
|
|
|
||||||
|
|
@ -38,11 +38,11 @@ public class FishingBoatService extends BaseService {
|
||||||
private final SailorRepository sailorRepository;
|
private final SailorRepository sailorRepository;
|
||||||
private final SailorVersionRepository sailorVersionRepository;
|
private final SailorVersionRepository sailorVersionRepository;
|
||||||
|
|
||||||
public List<CrackdownStatus> selectFishingBoatList(CrackdownStatus crackdownStatus){
|
public List<CrackdownStatus> selectCrackdownStatusList(CrackdownStatus crackdownStatus){
|
||||||
return crackdownStatusMapper.selectFishingBoatList(crackdownStatus);
|
return crackdownStatusMapper.selectCrackdownStatusList(crackdownStatus);
|
||||||
}
|
}
|
||||||
public Integer selectFishingBoatListCnt(CrackdownStatus crackdownStatus){
|
public Integer selectCrackdownStatusListCnt(CrackdownStatus crackdownStatus){
|
||||||
return crackdownStatusMapper.selectFishingBoatListCnt(crackdownStatus);
|
return crackdownStatusMapper.selectCrackdownStatusListCnt(crackdownStatus);
|
||||||
}
|
}
|
||||||
public CrackdownStatus selectCrackdownStatus(Integer cdsKey) {
|
public CrackdownStatus selectCrackdownStatus(Integer cdsKey) {
|
||||||
CrackdownStatus crackdownStatus = crackdownStatusRepository.findById(cdsKey).orElse(null);
|
CrackdownStatus crackdownStatus = crackdownStatusRepository.findById(cdsKey).orElse(null);
|
||||||
|
|
|
||||||
|
|
@ -371,62 +371,4 @@
|
||||||
ON cs.cds_key = pr.cds_key
|
ON cs.cds_key = pr.cds_key
|
||||||
<include refid="selectCrackdownStatusListWhere"></include>
|
<include refid="selectCrackdownStatusListWhere"></include>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<sql id="selectFishingBoatListWhere">
|
|
||||||
<where>
|
|
||||||
|
|
||||||
</where>
|
|
||||||
</sql>
|
|
||||||
|
|
||||||
<select id="selectFishingBoatList" resultType="CrackdownStatus" parameterType="CrackdownStatus">
|
|
||||||
select a.cds_key,
|
|
||||||
a.napo_dt,
|
|
||||||
a.napo_sea_point_lon,
|
|
||||||
a.napo_sea_point_lat,
|
|
||||||
a.napo_sea_point_detail,
|
|
||||||
a.case_agency,
|
|
||||||
a.crackdown_police,
|
|
||||||
a.crackdown_boat,
|
|
||||||
b.boat_name_kr,
|
|
||||||
b.fishery_type,
|
|
||||||
b.boat_nny_sung,
|
|
||||||
b.boat_nny_si,
|
|
||||||
b.ton_cnt,
|
|
||||||
b.boat_material,
|
|
||||||
b.wrt_organ,
|
|
||||||
b.wrt_user_grd,
|
|
||||||
b.wrt_user_nm,
|
|
||||||
b.wrt_dt,
|
|
||||||
c.process_status,
|
|
||||||
d.sailor_name_kr,
|
|
||||||
e.violationStr
|
|
||||||
from crackdown_status a
|
|
||||||
inner join fishing_boat b
|
|
||||||
on a.cds_key = b.cds_key
|
|
||||||
inner join process_result c
|
|
||||||
on a.cds_key = c.cds_key
|
|
||||||
left outer join sailor d
|
|
||||||
on b.fb_key = d.fb_key and d.position = 'POS001'
|
|
||||||
left outer join (
|
|
||||||
select aa.fb_key, array_to_string(array_agg(ab.item_value), ', ') as violationStr
|
|
||||||
from violation aa
|
|
||||||
inner join code_mgt ab
|
|
||||||
on aa.violation = ab.item_cd
|
|
||||||
group by aa.fb_key
|
|
||||||
) e on b.fb_key = e.fb_key
|
|
||||||
<include refid="selectFishingBoatListWhere"></include>
|
|
||||||
order by a.cds_key desc
|
|
||||||
limit #{rowCnt} offset #{firstIndex}
|
|
||||||
</select>
|
|
||||||
<select id="selectFishingBoatListCnt" resultType="int" parameterType="CrackdownStatus">
|
|
||||||
select count(*)
|
|
||||||
from crackdown_status a
|
|
||||||
inner join fishing_boat b
|
|
||||||
on a.cds_key = b.cds_key
|
|
||||||
inner join process_result c
|
|
||||||
on a.cds_key = c.cds_key
|
|
||||||
left outer join sailor d
|
|
||||||
on b.fb_key = d.fb_key and d.position = 'POS001'
|
|
||||||
<include refid="selectFishingBoatListWhere"></include>
|
|
||||||
</select>
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -2,13 +2,6 @@ let selectedList = [];
|
||||||
$(document).on('click', '#getFishingBoatEditModalBtn', function (){
|
$(document).on('click', '#getFishingBoatEditModalBtn', function (){
|
||||||
getFishingBoatEditModal(null);
|
getFishingBoatEditModal(null);
|
||||||
})
|
})
|
||||||
$(document).on('click', '.crackdownStatusTr', function (){
|
|
||||||
getFishingBoatViewModal($(this).find(".cdsKey").val())
|
|
||||||
})
|
|
||||||
$(document).on('click', '#editFishingBoatBtn', function (){
|
|
||||||
getFishingBoatEditModal($("#fishingBoatViewModalContent").find(".cdsKey").val());
|
|
||||||
$("#fishingBoatViewModal").modal('hide');
|
|
||||||
})
|
|
||||||
$(document).on('change', '#caseNum', function (){
|
$(document).on('change', '#caseNum', function (){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/faStatistics/checkCaseNum',
|
url: '/faStatistics/checkCaseNum',
|
||||||
|
|
@ -152,25 +145,7 @@ function getFishingBoatEditModal(cdsKey){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
function getFishingBoatViewModal(cdsKey){
|
|
||||||
$.ajax({
|
|
||||||
url: '/faStatistics/fishingBoatViewModal',
|
|
||||||
data: {cdsKey: cdsKey},
|
|
||||||
type: 'GET',
|
|
||||||
dataType:"html",
|
|
||||||
success: function(html){
|
|
||||||
$("#fishingBoatViewModalContent").empty().append(html)
|
|
||||||
const crackdownPolice = $("#crackdownPolice").val()
|
|
||||||
if(crackdownPolice){
|
|
||||||
getCrackdownBoatOption(crackdownPolice)
|
|
||||||
}
|
|
||||||
$("#fishingBoatViewModal").modal('show');
|
|
||||||
},
|
|
||||||
error:function(){
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
function getCrackdownBoatOption(categoryCd){
|
function getCrackdownBoatOption(categoryCd){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/selectBoxOptions',
|
url: '/selectBoxOptions',
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,7 @@ function getEditModal(publicKey, publicType){
|
||||||
dataType:"html",
|
dataType:"html",
|
||||||
success: function(html){
|
success: function(html){
|
||||||
$("#editContent").empty().append(html)
|
$("#editContent").empty().append(html)
|
||||||
$("#content").summernote({
|
/*$("#content").summernote({
|
||||||
lang:'ko-KR',
|
lang:'ko-KR',
|
||||||
height: 350,
|
height: 350,
|
||||||
disableDragAndDrop: true,
|
disableDragAndDrop: true,
|
||||||
|
|
@ -92,7 +92,7 @@ function getEditModal(publicKey, publicType){
|
||||||
['para', ['ul', 'ol', 'paragraph']],
|
['para', ['ul', 'ol', 'paragraph']],
|
||||||
['table', ['table']]
|
['table', ['table']]
|
||||||
]
|
]
|
||||||
});
|
});*/
|
||||||
setUploadDiv();
|
setUploadDiv();
|
||||||
$("#editModal").modal('show');
|
$("#editModal").modal('show');
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -3,19 +3,6 @@
|
||||||
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity5"
|
xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity5"
|
||||||
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
||||||
layout:decorate="~{layout/layout}">
|
layout:decorate="~{layout/layout}">
|
||||||
<th:block layout:fragment="css">
|
|
||||||
<style>
|
|
||||||
.ws-normal{
|
|
||||||
white-space: normal;
|
|
||||||
}
|
|
||||||
.ws-nowrap{
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
.min-width-300{
|
|
||||||
min-width: 300px!important;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</th:block>
|
|
||||||
<th:block layout:fragment="script">
|
<th:block layout:fragment="script">
|
||||||
<script type="text/javascript" th:src="@{/js/faStatistics/fishingBoatMgt.js}"></script>
|
<script type="text/javascript" th:src="@{/js/faStatistics/fishingBoatMgt.js}"></script>
|
||||||
</th:block>
|
</th:block>
|
||||||
|
|
@ -39,12 +26,6 @@
|
||||||
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt eq num*10}"></option>
|
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt eq num*10}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
<select class="form-select form-select-sm">
|
|
||||||
<option value="">연도</option>
|
|
||||||
<th:block th:each="year : ${#numbers.sequence(2020, 2030)}">
|
|
||||||
<option th:value="${year}" th:text="${year}" th:selected="${searchParams.fishingBoat.year eq year}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col-10">
|
<div class="col-10">
|
||||||
<div class="row justify-content-end pb-1">
|
<div class="row justify-content-end pb-1">
|
||||||
|
|
@ -79,26 +60,34 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="선적지" name="boatNny" th:value="${searchParams.fishingBoat.boatNny}">
|
<input type="text" class="form-control form-control-sm" placeholder="선적지" name="boatNny" th:value="${searchParams.boatNny}">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content-end">
|
<div class="row justify-content-end">
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm">
|
<select class="form-select form-select-sm">
|
||||||
<option value="">선질</option>
|
<option value="">연도</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BM')}">
|
<th:block th:each="year : ${#numbers.sequence(2020, 2030)}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.fishingBoat.boatMaterial}"></option>
|
<option th:value="${year}" th:text="${year}" th:selected="${searchParams.year eq year}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="톤수" name="tonCnt" th:value="${searchParams.fishingBoat.tonCnt}">
|
<select class="form-select form-select-sm">
|
||||||
|
<option value="">선질</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('BM')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.boatMaterial}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="text" class="form-control form-control-sm" placeholder="톤수" name="tonCnt" th:value="${searchParams.tonCnt}">
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<select class="form-select form-select-sm">
|
<select class="form-select form-select-sm">
|
||||||
<option value="">어업종류</option>
|
<option value="">어업종류</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.fishingBoat.fisheryType}"></option>
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.fisheryType}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -106,7 +95,7 @@
|
||||||
<select class="form-select form-select-sm">
|
<select class="form-select form-select-sm">
|
||||||
<option value="">처리현황</option>
|
<option value="">처리현황</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('PR')}">
|
<th:block th:each="commonCode:${session.commonCode.get('PR')}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.processResult.processStatus}"></option>
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.processStatus}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -114,7 +103,7 @@
|
||||||
<select class="form-select form-select-sm">
|
<select class="form-select form-select-sm">
|
||||||
<option value="">위반형태</option>
|
<option value="">위반형태</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.fishingBoat.violation}"></option>
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${commonCode.itemCd eq searchParams.violation}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -129,8 +118,8 @@
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="row overflow-auto">
|
<div class="row">
|
||||||
<table class="table table-hover table-bordered ws-nowrap">
|
<table class="table table-hover table-bordered">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th></th>
|
<th></th>
|
||||||
|
|
@ -147,85 +136,28 @@
|
||||||
<th>선질</th>
|
<th>선질</th>
|
||||||
<th>위반형태</th>
|
<th>위반형태</th>
|
||||||
<th>처리결과</th>
|
<th>처리결과</th>
|
||||||
<th>작성자</th>
|
|
||||||
<th>수정일</th>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody class="table-group-divider">
|
<!--<tbody class="table-group-divider">
|
||||||
<tr class="crackdownStatusTr" th:each="crackdownStatus:${crackdownStatusList}">
|
<tr class="noticeTr" th:each="notice:${noticeList}">
|
||||||
<input type="hidden" class="cdsKey" th:value="${crackdownStatus.cdsKey}">
|
<input type="hidden" class="publicKey" th:value="${notice.publicKey}">
|
||||||
<td><input type="checkbox" class="trChkBox"></td>
|
<td><input type="checkbox" class="trChkBox"></td>
|
||||||
<td th:text="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd HH:mm')}"></td>
|
<td th:text="${notice.title}"></td>
|
||||||
<td>
|
<th:block th:each="commonCode:${session.commonCode.get('OG')}">
|
||||||
<th:block th:text="${crackdownStatus.napoSeaPointLon}"></th:block>
|
<td th:if="${notice.wrtOrgan eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
||||||
<br>
|
|
||||||
<th:block th:text="${crackdownStatus.napoSeaPointLat}"></th:block>
|
|
||||||
</td>
|
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.caseAgency)}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.caseAgency)}">
|
<th:block th:each="commonCode:${session.commonCode.get('OFC')}">
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('ATA')}">
|
<td th:if="${notice.wrtPart eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
||||||
<td th:if="${crackdownStatus.caseAgency eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.crackdownPolice)}">
|
<th:block th:each="commonCode:${session.commonCode.get('JT')}">
|
||||||
<td></td>
|
<td th:if="${notice.wrtUserGrd eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.crackdownPolice)}">
|
<td th:text="${notice.wrtUserNm}"></td>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CPO')}">
|
<td th:text="${#temporals.format(notice.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
||||||
<td th:if="${crackdownStatus.crackdownPolice eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
<td th:text="${notice.fileCnt eq null?'파일 없음':#strings.concat(notice.fileCnt,' 건')}"></td>
|
||||||
</th:block>
|
<td th:text="${notice.commentCnt eq null?'0':notice.commentCnt}"></td>
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.crackdownBoat)}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.crackdownBoat)}">
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get(crackdownStatus.crackdownPolice)}">
|
|
||||||
<td th:if="${crackdownStatus.crackdownBoat eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="${crackdownStatus.boatNameKr}"></td>
|
|
||||||
<td th:text="${crackdownStatus.sailorNameKr}"></td>
|
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.fisheryType)}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.fisheryType)}">
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
|
||||||
<td th:if="${crackdownStatus.fisheryType eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="|${crackdownStatus.boatNnySung} ${crackdownStatus.boatNnySi}|"></td>
|
|
||||||
<td th:text="|${crackdownStatus.tonCnt}t|"></td>
|
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.boatMaterial)}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.boatMaterial)}">
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BM')}">
|
|
||||||
<td th:if="${crackdownStatus.boatMaterial eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
<td class="ws-normal min-width-300" th:text="${crackdownStatus.violationStr}"></td>
|
|
||||||
<th:block th:if="${#strings.isEmpty(crackdownStatus.processStatus)}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:unless="${#strings.isEmpty(crackdownStatus.processStatus)}">
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('PR')}">
|
|
||||||
<td th:if="${crackdownStatus.processStatus eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
<td>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('OG')}">
|
|
||||||
<th:block th:if="${crackdownStatus.wrtOrgan eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></th:block>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('JT')}">
|
|
||||||
<th:block th:if="${crackdownStatus.wrtUserGrd eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></th:block>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:text="${crackdownStatus.wrtUserNm}"></th:block>
|
|
||||||
</td>
|
|
||||||
<td th:text="${#temporals.format(crackdownStatus.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>-->
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content-between">
|
<div class="row justify-content-between">
|
||||||
|
|
@ -275,9 +207,9 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal fade" id="fishingBoatViewModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="fishingBoatViewModalLabel" aria-hidden="true">
|
<div class="modal fade" id="viewModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="viewModalLabel" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-xxl modal-dialog-scrollable">
|
<div class="modal-dialog modal-xl modal-dialog-scrollable">
|
||||||
<div class="modal-content" id="fishingBoatViewModalContent">
|
<div class="modal-content" id="viewContent">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,405 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h5 class="modal-title" id="fishingBoatEditModalLabel">불법조업 외국어선 상세정보</h5>
|
|
||||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<input type="hidden" class="cdsKey" th:value="${crackdownStatus.cdsKey}">
|
|
||||||
<div class="row my-1 justify-content-between">
|
|
||||||
<div class="col-auto" th:text="|선명: ${crackdownStatus.fishingBoat.boatNameKr}|"></div>
|
|
||||||
<div class="col-auto" th:text="|최종수정일: ${#temporals.format(crackdownStatus.fishingBoat.wrtDt, 'yyyy-MM-dd HH:mm')}|"></div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<div class="col-auto">■ 기본정보</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">사건번호</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.caseNum}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">압송/현장조사</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fieldIvsgt eq 'C'?'압송':'현장조사'}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">사건담당기관</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="code:${ataList}">
|
|
||||||
<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>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center fs-13">사건담당경찰관</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.casePoliceOfficer}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">단속경찰서</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="code:${cpoList}">
|
|
||||||
<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 border border-secondary text-center">단속함정</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<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 class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">나포일시</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">나포장소</label>
|
|
||||||
<div class="col-sm-8 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="|${crackdownStatus.napoSeaPointLon} ${crackdownStatus.napoSeaPointLat} ${crackdownStatus.napoSeaPointDetail}|">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<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 my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">선장명</label>
|
|
||||||
<div class="col-sm-10 border border-secondary">
|
|
||||||
<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 my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">생년월일</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.birthdate}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">연락처</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorContact}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">주소</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.residence}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">재범횟수</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.arrestHistory}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">비고</label>
|
|
||||||
<div class="col-sm-10 border border-secondary">
|
|
||||||
<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 my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">선주명</label>
|
|
||||||
<div class="col-sm-10 border border-secondary">
|
|
||||||
<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 my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">생년월일</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.birthdate}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">연락처</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.sailorContact}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">주소</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.residence}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-2 col-form-label col-form-label-sm border border-secondary text-center">비고</label>
|
|
||||||
<div class="col-sm-10 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${sailor.note}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<div class="col-auto">■ 어선 정보</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선명</label>
|
|
||||||
<div class="col-sm-5 border border-secondary">
|
|
||||||
<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-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNameCn}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">위반사항</label>
|
|
||||||
<div class="col-sm-5 border border-secondary">
|
|
||||||
<div class="row">
|
|
||||||
<th:block th:each="code:${vtList}">
|
|
||||||
<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>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">허가번호</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.permitNum}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">국적</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.nationality}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">승선원</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.sailorCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">톤수</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.tonCnt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선종</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="code:${ftList}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.fishingBoat.fisheryType}" th:value="${code.itemValue}">
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선질</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="code:${bmList}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.fishingBoat.boatMaterial}" th:value="${code.itemValue}">
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선적지</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<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-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.boatNnySi}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">범칙물</label>
|
|
||||||
<div class="col-sm-3 border border-secondary">
|
|
||||||
<div class="input-group w-auto">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.offenseType}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.offenseWeight}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-2 border border-secondary"></div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">범칙물 위판량</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.offenseQuantity}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center fs-11">범칙물 위판금액</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.offenseAmount}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">범칙물 폐기량</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">담보금 미납액</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.damboUnpaidAmount}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">담보금 납부액</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.damboPayment}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center fs-11">담보금 납부일시</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.fishingBoat.paymentPaymentDt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">압수어구</label>
|
|
||||||
<div class="col-sm-11 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly
|
|
||||||
th:value="|틀: ${crackdownStatus.fishingBoat.confiscationFrame} 폭: ${crackdownStatus.fishingBoat.confiscationWidth} 조: ${crackdownStatus.fishingBoat.confiscationJo} 개: ${crackdownStatus.fishingBoat.confiscationGae} 기타: ${crackdownStatus.fishingBoat.confiscationEtc}|">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<div class="col-auto">■ 처리 결과</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">처리현황</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="code:${prList}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:if="${code.itemCd eq crackdownStatus.processResult.processStatus}" th:value="${code.itemValue}">
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">압송소요시간</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center fs-11">영장청구 소요시간</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.warrantReqTakeTime}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">수사중지 여부</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.isIvsgtStop eq 'Y'?'중지':'수사중'}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">퇴거일</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.evictionDt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">직접인계일</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">인계 해점</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">인계 함정</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">중측 인수함정</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.middleTakeoverBoat}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">위탁시작일</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">위탁종료일</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">몰수확정일</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.confiscationDt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">폐선일</label>
|
|
||||||
<div class="col-sm-2 border 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 border border-secondary text-center">폐선종류</label>
|
|
||||||
<div class="col-sm-2 border 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>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">환부일</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.returnDt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선장구속</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}">
|
|
||||||
<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>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">항해장구속</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}">
|
|
||||||
<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 border border-secondary text-center">기관장구속</label>
|
|
||||||
<div class="col-sm-2 border 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 class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">선원구속</label>
|
|
||||||
<div class="col-sm-11 border border-secondary">
|
|
||||||
<div class="row">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}">
|
|
||||||
<th:block th:if="${sailor.position eq 'POS005' or sailor.position eq 'POS006'}">
|
|
||||||
<div class="col-auto">
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" class="form-control form-control-sm w-auto border-0" readonly th:value="${sailor.position eq 'POS005'?'기타 간부선원':'일반선원 또는 확인불가'}">
|
|
||||||
<input type="text" class="form-control form-control-sm w-auto border-0" readonly th:value="${sailor.sailorNameKr}">
|
|
||||||
<input type="text" class="form-control form-control-sm w-auto border-0" readonly th:value="${sailor.isRestriction eq 'Y'?'구속':'불구속'}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row my-1">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">추방인원</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.exileCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">추방일</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.exileDt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">항공편</label>
|
|
||||||
<div class="col-sm-2 border border-secondary">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.flight}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm border border-secondary text-center">출입국 담당자</label>
|
|
||||||
<div class="col-sm-4 border border-secondary">
|
|
||||||
<div class="input-group w-auto">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.immigrationOfficeName}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.immigrationOfficeOfficerName}">
|
|
||||||
<input type="text" class="form-control form-control-sm border-0" readonly th:value="${crackdownStatus.processResult.immigrationOfficeOfficerContact}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<th:block th:if="${userSeq eq crackdownStatus.fishingBoat.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용-->
|
|
||||||
<button type="button" class="btn btn-warning" id="editFishingBoatBtn">수정</button>
|
|
||||||
</th:block>
|
|
||||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>
|
|
||||||
</div>
|
|
||||||
|
|
@ -36,7 +36,7 @@
|
||||||
<script type="text/javascript" th:src="@{/vendor/summernote-0.8.18-dist/summernote-lite.min.js}"></script>
|
<script type="text/javascript" th:src="@{/vendor/summernote-0.8.18-dist/summernote-lite.min.js}"></script>
|
||||||
<script type="text/javascript" th:src="@{/vendor/summernote-0.8.18-dist/lang/summernote-ko-KR.min.js}"></script>
|
<script type="text/javascript" th:src="@{/vendor/summernote-0.8.18-dist/lang/summernote-ko-KR.min.js}"></script>
|
||||||
<!--namo cross editor-->
|
<!--namo cross editor-->
|
||||||
<!--<script type="text/javascript" th:src="@{/Crosseditor/js/namo_scripteditor.js}"></script>-->
|
<script type="text/javascript" th:src="@{http://118.219.150.34:50571/Crosseditor/js/namo_scripteditor.js}"></script>
|
||||||
|
|
||||||
<!--sheetJs(excel)-->
|
<!--sheetJs(excel)-->
|
||||||
<script type="text/javascript" th:src="@{/vendor/excel/FileSaver.min.js}"></script>
|
<script type="text/javascript" th:src="@{/vendor/excel/FileSaver.min.js}"></script>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue