불법조업 외국어선 처리현황 작업중.
parent
1a46d190ac
commit
b73de9c067
|
|
@ -172,11 +172,9 @@ public class UnlawfulFishingController {
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/isiSelectModal")
|
@GetMapping("/isiSelectModal")
|
||||||
public ModelAndView illegalShipInfoSelectModal(@AuthenticationPrincipal UserInfo loginUser, IllegalShipInfo params){
|
public ModelAndView illegalShipInfoSelectModal(@AuthenticationPrincipal UserInfo loginUser, UnlawfulFishingParam params){
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/illegalShipInfo/isiSelectModal");
|
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/illegalShipInfo/isiSelectModal");
|
||||||
List<CrackdownStatusDTO> csDTOList = new ArrayList<>();
|
mav.addObject("illegalShipInfoList", unlawfulFishingService.selectIllegalShipInfoList(params));
|
||||||
|
|
||||||
mav.addObject("crackdownInfoList", csDTOList);
|
|
||||||
mav.addObject("searchParams", params);
|
mav.addObject("searchParams", params);
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
@ -188,19 +186,11 @@ public class UnlawfulFishingController {
|
||||||
AccessConfig accessConfig = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/unlawfulFishing/shipProcessInfo").get(0);
|
AccessConfig accessConfig = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/unlawfulFishing/shipProcessInfo").get(0);
|
||||||
mav.addObject("menuKey", accessConfig.getMenuKey());
|
mav.addObject("menuKey", accessConfig.getMenuKey());
|
||||||
mav.addObject("accessAuth", accessConfig.getAccessAuth());
|
mav.addObject("accessAuth", accessConfig.getAccessAuth());
|
||||||
|
params.setQueryInfo();
|
||||||
|
mav.addObject("shipProcessInfoList", unlawfulFishingService.selectShipProcessInfoList(params));
|
||||||
|
params.setContentCnt(unlawfulFishingService.selectShipProcessInfoListCnt(params));
|
||||||
|
params.setPaginationInfo();
|
||||||
|
|
||||||
if(params.getYear()==null){
|
|
||||||
params.setYear(LocalDateTime.now().getYear());
|
|
||||||
}
|
|
||||||
List<Integer> yearList = unlawfulFishingService.selectFishingBoatYearParam();
|
|
||||||
if(!yearList.contains(params.getYear())){
|
|
||||||
yearList.add(params.getYear());
|
|
||||||
}
|
|
||||||
List<CrackdownStatusDTO> csDTOList = new ArrayList<>();
|
|
||||||
CSStatistics statistics = new CSStatistics();
|
|
||||||
|
|
||||||
mav.addObject("shipProcessInfoList", csDTOList);
|
|
||||||
mav.addObject("yearList", yearList);
|
|
||||||
mav.addObject("searchParams", params);
|
mav.addObject("searchParams", params);
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
@ -208,7 +198,7 @@ public class UnlawfulFishingController {
|
||||||
@GetMapping("/spiEditModal")
|
@GetMapping("/spiEditModal")
|
||||||
public ModelAndView shipProcessInfoEditModal(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo shipProcessInfo){
|
public ModelAndView shipProcessInfoEditModal(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo shipProcessInfo){
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/shipProcessInfo/spiEditModal");
|
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/shipProcessInfo/spiEditModal");
|
||||||
if(shipProcessInfo.getCdsKey()!=null){
|
if(shipProcessInfo.getPrKey()!=null){
|
||||||
shipProcessInfo = unlawfulFishingService.selectShipProcessInfo(shipProcessInfo.getPrKey());
|
shipProcessInfo = unlawfulFishingService.selectShipProcessInfo(shipProcessInfo.getPrKey());
|
||||||
}else{
|
}else{
|
||||||
shipProcessInfo.setWrtOrgan(loginUser.getOgCd());
|
shipProcessInfo.setWrtOrgan(loginUser.getOgCd());
|
||||||
|
|
@ -222,6 +212,28 @@ public class UnlawfulFishingController {
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/spiViewModal")
|
||||||
|
public ModelAndView shipProcessInfoViewModal(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo spi){
|
||||||
|
ModelAndView mav = new ModelAndView("faStatistics/unlawfulFishing/illegalShipInfo/spiViewModal");
|
||||||
|
spi = unlawfulFishingService.selectShipProcessInfo(spi.getPrKey());
|
||||||
|
spi.setHistoryList(unlawfulFishingService.selectShipProcessInfoHistory(spi.getPrKey()));
|
||||||
|
mav.addObject("processInfo", spi);
|
||||||
|
IllegalShipInfo shipInfo = unlawfulFishingService.selectIllegalShipInfo(spi.getFbKey());
|
||||||
|
mav.addObject("shipInfo", shipInfo);
|
||||||
|
mav.addObject("crackdownInfo", unlawfulFishingService.selectCrackdownInfo(shipInfo.getCdsKey()));
|
||||||
|
|
||||||
|
AccessConfig accessConfig = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/unlawfulFishing/shipProcessInfo").get(0);
|
||||||
|
mav.addObject("accessAuth", accessConfig.getAccessAuth());
|
||||||
|
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
|
||||||
|
mav.addObject("userSeq", loginUser.getUserSeq());
|
||||||
|
return mav;
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/saveShipProcessInfo")
|
||||||
|
public Integer saveShipProcessInfo(@AuthenticationPrincipal UserInfo loginUser, ShipProcessInfo processInfo){
|
||||||
|
processInfo.setWrtDt(LocalDateTime.now());
|
||||||
|
return unlawfulFishingService.saveShipProcessInfo(processInfo);
|
||||||
|
}
|
||||||
|
|
||||||
@GetMapping("/illegalShipSailor")
|
@GetMapping("/illegalShipSailor")
|
||||||
public ModelAndView illegalShipSailorPage(@AuthenticationPrincipal UserInfo loginUser, UnlawfulFishingParam params){
|
public ModelAndView illegalShipSailorPage(@AuthenticationPrincipal UserInfo loginUser, UnlawfulFishingParam params){
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.dbnt.faisp.main.faStatistics.unlawfulFishing.mapper;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.UnlawfulFishingParam;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.UnlawfulFishingParam;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.crackdownStatus.CrackdownInfo;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.crackdownStatus.CrackdownInfo;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfo;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfo;
|
||||||
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfo;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -19,4 +20,8 @@ public interface UnlawfulFishingMapper {
|
||||||
List<IllegalShipInfo> selectIllegalShipInfoList(UnlawfulFishingParam params);
|
List<IllegalShipInfo> selectIllegalShipInfoList(UnlawfulFishingParam params);
|
||||||
|
|
||||||
Integer selectIllegalShipInfoListCnt(UnlawfulFishingParam params);
|
Integer selectIllegalShipInfoListCnt(UnlawfulFishingParam params);
|
||||||
|
|
||||||
|
List<ShipProcessInfo> selectShipProcessInfoList(UnlawfulFishingParam params);
|
||||||
|
|
||||||
|
Integer selectShipProcessInfoListCnt(UnlawfulFishingParam params);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,41 +28,12 @@ public class ShipProcessInfo extends ProcessResultBaseEntity {
|
||||||
@Column(name = "pr_key")
|
@Column(name = "pr_key")
|
||||||
private Integer prKey;
|
private Integer prKey;
|
||||||
|
|
||||||
@Column(name = "cds_key")
|
@Column(name = "fb_key")
|
||||||
private Integer cdsKey;
|
private Integer fbKey;
|
||||||
|
|
||||||
@Column(name="status")
|
@Column(name="status")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
private List<ShipProcessInfoHistory> historyList;
|
||||||
private LocalDateTime updDt;
|
|
||||||
@Transient
|
|
||||||
private CrackdownStatus crackdownStatus;
|
|
||||||
@Transient
|
|
||||||
private List<Violation> violationList;
|
|
||||||
@Transient
|
|
||||||
private FishingBoat fishingBoat;
|
|
||||||
@Transient
|
|
||||||
private String boatNameKr;
|
|
||||||
|
|
||||||
@Transient
|
|
||||||
private Integer fbKey;
|
|
||||||
@Transient
|
|
||||||
private String processStatusEtc;
|
|
||||||
@Transient
|
|
||||||
private String executionDetailEtc;
|
|
||||||
@Transient
|
|
||||||
private List<CrackdownStatus> crackdownStatusList;
|
|
||||||
@Transient
|
|
||||||
private List<FishingBoat> fishingBoatList;
|
|
||||||
|
|
||||||
@Transient
|
|
||||||
private String caseNum;
|
|
||||||
@Transient
|
|
||||||
private String crackdownPolice;
|
|
||||||
@Transient
|
|
||||||
private Integer year;
|
|
||||||
@Transient
|
|
||||||
private String violation;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
public interface ShipProcessInfoHistoryRepository extends JpaRepository<ShipProcessInfoHistory, ShipProcessInfoHistory.ShipProcessInfoHistoryId> {
|
public interface ShipProcessInfoHistoryRepository extends JpaRepository<ShipProcessInfoHistory, ShipProcessInfoHistory.ShipProcessInfoHistoryId> {
|
||||||
Optional<ShipProcessInfoHistory> findTopByPrKeyOrderByVersionNoDesc(Integer prKey);
|
Optional<ShipProcessInfoHistory> findTop1ByPrKeyOrderByVersionNoDesc(Integer prKey);
|
||||||
List<ShipProcessInfoHistory> findByPrKey(Integer prKey);
|
List<ShipProcessInfoHistory> findByPrKeyOrderByVersionNoDesc(Integer prKey);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,6 @@ import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
public interface ShipProcessInfoRepository extends JpaRepository<ShipProcessInfo, Integer> {
|
public interface ShipProcessInfoRepository extends JpaRepository<ShipProcessInfo, Integer> {
|
||||||
Optional<ShipProcessInfo> findByCdsKey(Integer cdsKey);
|
Optional<ShipProcessInfo> findByFbKey(Integer fbKey);
|
||||||
Optional<ShipProcessInfo> findByPrKey(Integer prKey);
|
Optional<ShipProcessInfo> findByPrKey(Integer prKey);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.Fishin
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfo;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfo;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfoHistory;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.fishingBoat.IllegalShipInfoHistory;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfo;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfo;
|
||||||
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.processResult.ShipProcessInfoHistory;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.sailor.IllegalShipSailor;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.sailor.IllegalShipSailor;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.sailor.Sailor;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.model.sailor.Sailor;
|
||||||
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.mapper.UnlawfulFishingMapper;
|
import com.dbnt.faisp.main.faStatistics.unlawfulFishing.mapper.UnlawfulFishingMapper;
|
||||||
|
|
@ -167,6 +168,10 @@ public class UnlawfulFishingService {
|
||||||
return spiRepository.findByPrKey(prKey).orElse(new ShipProcessInfo());
|
return spiRepository.findByPrKey(prKey).orElse(new ShipProcessInfo());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<ShipProcessInfoHistory> selectShipProcessInfoHistory(Integer prKey) {
|
||||||
|
return spihRepository.findByPrKeyOrderByVersionNoDesc(prKey);
|
||||||
|
}
|
||||||
|
|
||||||
public IllegalShipSailor selectIllegalShipSailor(Integer sailorKey) {
|
public IllegalShipSailor selectIllegalShipSailor(Integer sailorKey) {
|
||||||
return issRepository.findBySailorKey(sailorKey).orElse(new IllegalShipSailor());
|
return issRepository.findBySailorKey(sailorKey).orElse(new IllegalShipSailor());
|
||||||
}
|
}
|
||||||
|
|
@ -207,4 +212,24 @@ public class UnlawfulFishingService {
|
||||||
public Integer selectIllegalShipInfoListCnt(UnlawfulFishingParam params) {
|
public Integer selectIllegalShipInfoListCnt(UnlawfulFishingParam params) {
|
||||||
return unlawfulFishingMapper.selectIllegalShipInfoListCnt(params);
|
return unlawfulFishingMapper.selectIllegalShipInfoListCnt(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional
|
||||||
|
public Integer saveShipProcessInfo(ShipProcessInfo processInfo) {
|
||||||
|
Integer prKey = spiRepository.save(processInfo).getPrKey();
|
||||||
|
if(!processInfo.getStatus().equals("DST001")){
|
||||||
|
ShipProcessInfoHistory lastHistory = spihRepository.findTop1ByPrKeyOrderByVersionNoDesc(prKey).orElse(null);
|
||||||
|
ShipProcessInfoHistory spiHistory = new ShipProcessInfoHistory();
|
||||||
|
BeanUtils.copyProperties(processInfo, spiHistory);
|
||||||
|
spiHistory.setVersionNo(lastHistory==null?1:lastHistory.getVersionNo()+1);
|
||||||
|
spihRepository.save(spiHistory);
|
||||||
|
}
|
||||||
|
return prKey;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<ShipProcessInfo> selectShipProcessInfoList(UnlawfulFishingParam params) {
|
||||||
|
return unlawfulFishingMapper.selectShipProcessInfoList(params);
|
||||||
|
}
|
||||||
|
public Integer selectShipProcessInfoListCnt(UnlawfulFishingParam params) {
|
||||||
|
return unlawfulFishingMapper.selectShipProcessInfoListCnt(params);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -169,4 +169,11 @@
|
||||||
</if>
|
</if>
|
||||||
</if>
|
</if>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
<select id="selectShipProcessInfoList" resultType="ShipProcessInfo" parameterType="UnlawfulFishingParam">
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<select id="selectShipProcessInfoListCnt" resultType="int" parameterType="UnlawfulFishingParam">
|
||||||
|
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -3,6 +3,23 @@ $(document).on('click', '#selectIllegalShipInfoBtn', function (){
|
||||||
getIsiSelectModal(null);
|
getIsiSelectModal(null);
|
||||||
})
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '.isiTr', function (){
|
||||||
|
$(".isiCheckbox").prop('checked', false)
|
||||||
|
$(this).find('.isiCheckbox').prop('checked', true)
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '#isiSelectBtn', function (){
|
||||||
|
const selectedCheckbox = $(".isiCheckbox:checked")
|
||||||
|
if(selectedCheckbox.length>0){
|
||||||
|
const editForm = $("#spiEditForm")
|
||||||
|
editForm.find("#fbKey").val(selectedCheckbox.attr('data-fbkey'))
|
||||||
|
editForm.find("#boatNameKr").val(selectedCheckbox.attr('data-boatnamekr'))
|
||||||
|
$("#isiSelectModal").modal('hide');
|
||||||
|
}else{
|
||||||
|
alert("대상을 선택해주세요.")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
function getIsiSelectModal(){
|
function getIsiSelectModal(){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/unlawfulFishing/isiSelectModal',
|
url: '/unlawfulFishing/isiSelectModal',
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,34 @@
|
||||||
|
|
||||||
|
$(function(){
|
||||||
|
$(".dateSelector").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko",
|
||||||
|
autoclose: true
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
$(document).on('click', '#addShipProcessInfoBtn', function (){
|
$(document).on('click', '#addShipProcessInfoBtn', function (){
|
||||||
getSpiEditModal(null);
|
getSpiEditModal(null);
|
||||||
})
|
})
|
||||||
|
|
||||||
|
$(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', '#offenseSelector', function (){
|
||||||
|
childInputStateChange(Number(this.value), $("#offenseIllegalWasteQuantity"))
|
||||||
|
childInputStateChange(Number(this.value), $("#offenseQuantity"))
|
||||||
|
childInputStateChange(Number(this.value), $("#offenseAmount"))
|
||||||
|
})
|
||||||
|
|
||||||
|
$(document).on('click', '.saveEditInfoBtn', function (){
|
||||||
|
saveShipProcessInfo($(this).attr("data-status"))
|
||||||
|
})
|
||||||
|
|
||||||
function getSpiEditModal(prKey){
|
function getSpiEditModal(prKey){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/unlawfulFishing/spiEditModal',
|
url: '/unlawfulFishing/spiEditModal',
|
||||||
|
|
@ -24,3 +50,51 @@ function getSpiEditModal(prKey){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
function childInputStateChange(selectorValue, inputs){
|
||||||
|
switch (selectorValue){
|
||||||
|
case 1:
|
||||||
|
inputs.val('').attr('disabled', 'disabled')
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
inputs.removeAttr('disabled')
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}function saveShipProcessInfo(status){
|
||||||
|
if (confirm("저장하시겠습니까?")) {
|
||||||
|
if (valueCheck(status)) {
|
||||||
|
$("#infoStatus").val(status)
|
||||||
|
contentFade("in");
|
||||||
|
const formData = new FormData($("#spiEditForm")[0]);
|
||||||
|
$.ajax({
|
||||||
|
type : 'POST',
|
||||||
|
data : formData,
|
||||||
|
url : "/unlawfulFishing/saveShipProcessInfo",
|
||||||
|
processData: false,
|
||||||
|
contentType: false,
|
||||||
|
beforeSend: function (xhr){
|
||||||
|
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
|
||||||
|
},
|
||||||
|
success : function() {
|
||||||
|
alert("저장되었습니다.");
|
||||||
|
contentFade("out");
|
||||||
|
location.reload();
|
||||||
|
},
|
||||||
|
error : function(xhr, status) {
|
||||||
|
alert("저장에 실패하였습니다.");
|
||||||
|
contentFade("out");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function valueCheck(status){
|
||||||
|
if(status === "DST007"){
|
||||||
|
const spiEditForm = $("#spiEditForm")
|
||||||
|
if(!spiEditForm.find("#boatNameKr").val()){
|
||||||
|
alert("어선명을 불러와주세요.")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
@ -152,19 +152,19 @@
|
||||||
<nav aria-label="Page navigation">
|
<nav aria-label="Page navigation">
|
||||||
<ul class="pagination mb-0">
|
<ul class="pagination mb-0">
|
||||||
<th:block th:if="${searchParams.pageIndex>3}">
|
<th:block th:if="${searchParams.pageIndex>3}">
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
<li class="page-item modalPage" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
||||||
<a class="page-link" href="#" aria-label="Previous">
|
<a class="page-link" href="#" aria-label="Previous">
|
||||||
<span aria-hidden="true">«</span>
|
<span aria-hidden="true">«</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
<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':''}">
|
<li class="page-item modalPage" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex eq num?'active':''}">
|
||||||
<a class="page-link" href="#" th:text="${num}"></a>
|
<a class="page-link" href="#" th:text="${num}"></a>
|
||||||
</li>
|
</li>
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
<li class="page-item modalPage" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
||||||
<a class="page-link" href="#" aria-label="Next">
|
<a class="page-link" href="#" aria-label="Next">
|
||||||
<span aria-hidden="true">»</span>
|
<span aria-hidden="true">»</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<div class="row mx-0">
|
<div class="row mx-0">
|
||||||
<div class="col-12 card bg-light text-center">
|
<div class="col-12 card bg-light text-center">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form method="get" th:action="@{/faStatistics/crackdownInfo}" id="cdsSearchForm">
|
<form method="get" th:action="@{/unlawfulFishing/illegalShipInfo}" id="isiSearchForm">
|
||||||
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
||||||
<div class="row justify-content-end py-1">
|
<div class="row justify-content-end py-1">
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
|
|
@ -16,52 +16,42 @@
|
||||||
<div class="col-11">
|
<div class="col-11">
|
||||||
<div class="row justify-content-end pb-1">
|
<div class="row justify-content-end pb-1">
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<select class="form-select form-select-sm " id="caseAgency" name="caseAgency">
|
<input type="text" class="form-control form-control-sm" name="caseNum" placeholder="사건번호" th:value="${searchParams.caseNum}">
|
||||||
<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>
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="사건담당경찰관">
|
<input type="text" class="form-control form-control-sm" name="permitNum" placeholder="허가번호" th:value="${searchParams.permitNum}">
|
||||||
</div>
|
</div>
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<select class="form-select form-select-sm" name="crackdownPolice" id="searchFormPolice">
|
<input type="text" class="form-control form-control-sm" name="boatName" placeholder="선명" th:value="${searchParams.boatName}">
|
||||||
<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>
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<select class="form-select form-select-sm" name="crackdownBoat" id="searchFormBoat" disabled>
|
<input type="text" class="form-control form-control-sm" name="boatNny" placeholder="선적지" th:value="${searchParams.boatNny}">
|
||||||
<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>
|
</div>
|
||||||
<div class="row justify-content-end pb-1">
|
<div class="row justify-content-end pb-1">
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="사건번호">
|
<select class="form-select form-select-sm " name="fisheryType" id="searchFisheryType">
|
||||||
|
<option value="">선종</option>
|
||||||
|
<th:block th:each="code:${session.commonCode.get('FT')}">
|
||||||
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}"
|
||||||
|
th:selected="${code.itemCd eq searchParams.fisheryType}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-2">
|
<div class="col-2">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="MMSI.NO">
|
<select class="form-select form-select-sm" name="boatMaterial" id="searchBoatMaterial">
|
||||||
</div>
|
<option value="">선질</option>
|
||||||
<div class="col-2">
|
<th:block th:each="code:${session.commonCode.get('BM')}">
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="나포장소">
|
<option th:value="${code.itemCd}" th:text="${code.itemValue}"
|
||||||
|
th:selected="${code.itemCd eq searchParams.boatMaterial}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<div class="input-group w-auto input-daterange" id="dateSelectorDiv">
|
<div class="input-group w-auto input-daterange" id="dateSelectorDiv">
|
||||||
<select class="form-select form-select-sm w-30" name="dateSelector">
|
<select class="form-select form-select-sm w-30" name="dateSelector">
|
||||||
<option value="">조건선택</option>
|
<option value="">조건선택</option>
|
||||||
<option value="napoDt" th:selected="${searchParams.dateSelector eq 'napoDt'}">나포일시</option>
|
<option value="napoDt" th:selected="${searchParams.dateSelector eq 'paymentDt'}">담보금 납부일시</option>
|
||||||
<option value="wrtDt" th:selected="${searchParams.dateSelector eq 'wrtDt'}">작성일시</option>
|
<option value="wrtDt" th:selected="${searchParams.dateSelector eq 'wrtDt'}">작성일시</option>
|
||||||
</select>
|
</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="startDate" name="startDate" placeholder="시작일" autocomplete="off" readonly th:value="${searchParams.startDate}">
|
||||||
|
|
@ -84,38 +74,74 @@
|
||||||
<table class="table table-sm table-hover table-bordered text-nowrap" id="cdsTable">
|
<table class="table table-sm table-hover table-bordered text-nowrap" id="cdsTable">
|
||||||
<thead class="align-middle">
|
<thead class="align-middle">
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th>순번</th>
|
<th></th>
|
||||||
<th>사건번호</th>
|
<th>사건번호</th>
|
||||||
<th>MMSI.NO</th>
|
<th>선명</th>
|
||||||
<th>나포일시</th>
|
<th>허가번호</th>
|
||||||
<th>나포장소</th>
|
<th>국적</th>
|
||||||
<th>사건담당경찰서</th>
|
<th>승선원</th>
|
||||||
<th>사건담당경찰관</th>
|
<th>톤수</th>
|
||||||
<th>단속경찰서</th>
|
<th>선종</th>
|
||||||
<th>단속함정</th>
|
<th>선질</th>
|
||||||
<th>침범유형</th>
|
<th>선적지</th>
|
||||||
<th>NLL침범여부</th>
|
|
||||||
<th>압송여부</th>
|
|
||||||
<th>작성자</th>
|
|
||||||
<th>작성일시</th>
|
<th>작성일시</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody class="table-group-divider align-middle">
|
<tbody class="table-group-divider align-middle">
|
||||||
<th:block th:each="dto,cnt:${crackdownInfoList}">
|
<th:block th:each="shipInfo:${illegalShipInfoList}">
|
||||||
<tr class="crackdownStatusTr" th:data-cdskey="${dto.cdsKey}" data-modaltype="viewOnly">
|
<tr class="isiTr" th:data-fbkey="${shipInfo.fbKey}">
|
||||||
<td th:text="${cnt.count}"></td>
|
<td><input type="checkbox" class="isiCheckbox" th:data-fbkey="${shipInfo.fbKey}" th:data-boatnamekr="${shipInfo.boatNameKr}"> </td>
|
||||||
<td th:text="${#temporals.format(dto.napoDt, 'yyyy-MM-dd HH:mm')}"></td>
|
<td th:text="${shipInfo.caseNum}"></td>
|
||||||
|
<td th:text="${shipInfo.boatNameKr}"></td>
|
||||||
|
<td th:text="${shipInfo.permitNum}"></td>
|
||||||
|
<td th:text="${shipInfo.nationality}"></td>
|
||||||
|
<td th:text="${shipInfo.sailorCnt}"></td>
|
||||||
|
<td th:text="${shipInfo.tonCnt}"></td>
|
||||||
<td>
|
<td>
|
||||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) and !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, ' ~ ', dto.napoSeaPointLat)}"></div>
|
<th:block th:each="code:${session.commonCode.get('FT')}">
|
||||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) or !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, dto.napoSeaPointLat)}"></div>
|
<th:block th:if="${code.itemCd eq shipInfo.fisheryType}" th:text="${code.itemValue}"></th:block>
|
||||||
<div th:text="${dto.napoSeaPointDetail}"></div>
|
</th:block>
|
||||||
</td>
|
</td>
|
||||||
|
<td>
|
||||||
|
<th:block th:each="code:${session.commonCode.get('BM')}">
|
||||||
|
<th:block th:if="${code.itemCd eq shipInfo.boatMaterial}" th:text="${code.itemValue}"></th:block>
|
||||||
|
</th:block>
|
||||||
|
</td>
|
||||||
|
<td th:text="|${shipInfo.boatNnySung} ${shipInfo.boatNnySi}|"></td>
|
||||||
|
<td th:text="${#temporals.format(shipInfo.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
||||||
</tr>
|
</tr>
|
||||||
</th:block>
|
</th:block>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row justify-content-center pt-1">
|
||||||
|
<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 modalPage" 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 modalPage" 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 modalPage" 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>
|
||||||
|
|
@ -123,6 +149,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-primary">불러오기</button>
|
<button type="button" class="btn btn-primary" id="isiSelectBtn">불러오기</button>
|
||||||
</div>
|
</div>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
||||||
|
|
@ -29,24 +29,7 @@
|
||||||
<form method="get" th:action="@{/faStatistics/shipProcessInfo}" id="cdsSearchForm">
|
<form method="get" th:action="@{/faStatistics/shipProcessInfo}" id="cdsSearchForm">
|
||||||
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
|
||||||
<div class="row justify-content-between py-1">
|
<div class="row justify-content-between py-1">
|
||||||
<div class="col-auto">
|
<div class="col-auto"></div>
|
||||||
<div>
|
|
||||||
<select class="form-select form-select-sm" name="year">
|
|
||||||
<option value="">연도</option>
|
|
||||||
<th:block th:each="year : ${yearList}">
|
|
||||||
<option th:value="${year}" th:text="|${year}년|" th:selected="${searchParams.year eq year}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<select class="form-select form-select-sm" name="month">
|
|
||||||
<option value="">월 선택</option>
|
|
||||||
<th:block th:each="month : ${#numbers.sequence(1, 12)}">
|
|
||||||
<option th:value="${month}" th:text="|${month}월|" th:selected="${searchParams.month eq month}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-11">
|
<div class="col-11">
|
||||||
|
|
@ -122,30 +105,23 @@
|
||||||
<tr class="table-secondary">
|
<tr class="table-secondary">
|
||||||
<th>순번</th>
|
<th>순번</th>
|
||||||
<th>사건번호</th>
|
<th>사건번호</th>
|
||||||
<th>MMSI.NO</th>
|
<th>어선명</th>
|
||||||
<th>나포일시</th>
|
<th>나포일시</th>
|
||||||
<th>나포장소</th>
|
<th>처리현황</th>
|
||||||
<th>사건담당경찰서</th>
|
<th>수사중지여부</th>
|
||||||
<th>사건담당경찰관</th>
|
<th>선고법원</th>
|
||||||
<th>단속경찰서</th>
|
<th>선고내용</th>
|
||||||
<th>단속함정</th>
|
|
||||||
<th>침범유형</th>
|
|
||||||
<th>NLL침범여부</th>
|
|
||||||
<th>압송여부</th>
|
|
||||||
<th>작성자</th>
|
<th>작성자</th>
|
||||||
<th>작성일시</th>
|
<th>작성일시</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody class="table-group-divider align-middle">
|
<tbody class="table-group-divider align-middle">
|
||||||
<th:block th:each="dto,cnt:${crackdownInfoList}">
|
<th:block th:each="spi,cnt:${shipProcessInfoList}">
|
||||||
<tr class="crackdownStatusTr" th:data-cdskey="${dto.cdsKey}" data-modaltype="viewOnly">
|
<tr class="spiTr" th:data-prkey="${spi.prKey}">
|
||||||
<td th:text="${cnt.count}"></td>
|
<td th:text="${cnt.count}"></td>
|
||||||
<td th:text="${#temporals.format(dto.napoDt, 'yyyy-MM-dd HH:mm')}"></td>
|
<td th:text="${spi.caseNum}"></td>
|
||||||
<td>
|
<td th:text="${spi.boatNameKr}"></td>
|
||||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) and !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, ' ~ ', dto.napoSeaPointLat)}"></div>
|
<td th:text="${#temporals.format(spi.wrtDt, 'yyyy-MM-dd HH:mm')}"></td>
|
||||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) or !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, dto.napoSeaPointLat)}"></div>
|
|
||||||
<div th:text="${dto.napoSeaPointDetail}"></div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</th:block>
|
</th:block>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,13 @@
|
||||||
<input type="hidden" name="wrtUserSeq" th:value="${shipProcessInfo.wrtUserSeq}">
|
<input type="hidden" name="wrtUserSeq" th:value="${shipProcessInfo.wrtUserSeq}">
|
||||||
<input type="hidden" name="wrtUserGrd" th:value="${shipProcessInfo.wrtUserGrd}">
|
<input type="hidden" name="wrtUserGrd" th:value="${shipProcessInfo.wrtUserGrd}">
|
||||||
<input type="hidden" name="wrtUserNm" th:value="${shipProcessInfo.wrtUserNm}">
|
<input type="hidden" name="wrtUserNm" th:value="${shipProcessInfo.wrtUserNm}">
|
||||||
<input type="hidden" name="wrtDt" th:value="${#temporals.format(shipProcessInfo.wrtDt, 'yyyy-MM-dd HH:mm:ss')}">
|
<input type="hidden" name="wrtDt" th:value="${#temporals.format(shipProcessInfo.wrtDt, 'yyyy-MM-dd HH:mm')}">
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label for="caseNum" class="col-sm-1 col-form-label col-form-label-sm text-center">선명</label>
|
<label for="fbKey" class="col-sm-1 col-form-label col-form-label-sm text-center">선명</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input type="text" class="form-control form-control-sm " id="caseNum" name="caseNum">
|
<input type="hidden" id="fbKey" name="fbKey">
|
||||||
|
<input type="text" class="form-control form-control-sm " id="boatNameKr" name="boatNameKr">
|
||||||
<input type="button" class="btn btn-sm btn-outline-primary w-auto" id="selectIllegalShipInfoBtn" value="불러오기">
|
<input type="button" class="btn btn-sm btn-outline-primary w-auto" id="selectIllegalShipInfoBtn" value="불러오기">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -33,7 +34,6 @@
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<th:block th:if="${shipProcessInfo.cdsKey ne null}">
|
|
||||||
<label for="isIvsgtStop" class="col-sm-1 col-form-label col-form-label-sm text-center">수사중지여부</label>
|
<label for="isIvsgtStop" class="col-sm-1 col-form-label col-form-label-sm text-center">수사중지여부</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm " id="isIvsgtStop" name="isIvsgtStop">
|
<select class="form-select form-select-sm " id="isIvsgtStop" name="isIvsgtStop">
|
||||||
|
|
@ -42,7 +42,6 @@
|
||||||
<option value="N" th:selected="${shipProcessInfo.isIvsgtStop eq 'N'}">X</option>
|
<option value="N" th:selected="${shipProcessInfo.isIvsgtStop eq 'N'}">X</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</th:block>
|
|
||||||
<label class="col-sm-1 col-form-label col-form-label-sm text-center">선고법원</label>
|
<label class="col-sm-1 col-form-label col-form-label-sm text-center">선고법원</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control form-control-sm" name="sentencingCourt" id="sentencingCourt" th:value="${shipProcessInfo.sentencingCourt}">
|
<input class="form-control form-control-sm" name="sentencingCourt" id="sentencingCourt" th:value="${shipProcessInfo.sentencingCourt}">
|
||||||
|
|
@ -77,13 +76,7 @@
|
||||||
<input type="hidden" class="" name="warrantReqTakeTime" id="warrantReqTake" th:value="${wrtt}">
|
<input type="hidden" class="" name="warrantReqTakeTime" id="warrantReqTake" th:value="${wrtt}">
|
||||||
</th:block>
|
</th:block>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<label for="releaseDt" class="col-sm-1 col-form-label col-form-label-sm text-center">석방일시</label>
|
||||||
<div class="row mb-1">
|
|
||||||
<label for="napoDt" 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" id="napoDt" name="napoDt" placeholder="단속정보에서 입력" readonly><!--th:value="${#temporals.format(shipProcessInfo.napoDt, 'yyyy-MM-dd hh:mm')}"-->
|
|
||||||
</div>
|
|
||||||
<label for="napoDt" class="col-sm-1 col-form-label col-form-label-sm text-center">석방일시</label>
|
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<input type="hidden" id="releaseDt" name="releaseDt" th:value="${#temporals.format(shipProcessInfo.releaseDt, 'yyyy-MM-dd hh:mm')}">
|
<input type="hidden" id="releaseDt" name="releaseDt" th:value="${#temporals.format(shipProcessInfo.releaseDt, 'yyyy-MM-dd hh:mm')}">
|
||||||
|
|
@ -91,11 +84,12 @@
|
||||||
<input type="text" class="form-control form-control-sm timeInputer" id="releaseTime" th:value="${#temporals.format(shipProcessInfo.releaseDt, 'HH:mm')}" placeholder="hh:mm">
|
<input type="text" class="form-control form-control-sm timeInputer" id="releaseTime" th:value="${#temporals.format(shipProcessInfo.releaseDt, 'HH:mm')}" placeholder="hh:mm">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<label for="napoDt" 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" id="releaseToNapo" placeholder="석방일시-나포일시" readonly>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
<th:block th:with="directHandoverFlag=${shipProcessInfo.directHandoverDt ne null ||
|
||||||
|
shipProcessInfo.handoverSeaPointLon ne null ||
|
||||||
|
shipProcessInfo.handoverSeaPointLat ne null ||
|
||||||
|
shipProcessInfo.handoverBoat ne null ||
|
||||||
|
shipProcessInfo.middleTakeoverBoat ne null}">
|
||||||
<div class="row mb-1">
|
<div class="row mb-1">
|
||||||
<label for="consignmentStartDt" class="col-sm-1 col-form-label col-form-label-sm text-center">위탁여부</label>
|
<label for="consignmentStartDt" class="col-sm-1 col-form-label col-form-label-sm text-center">위탁여부</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
|
|
@ -120,13 +114,6 @@
|
||||||
<input type="text" class="form-control form-control-sm w-70 dateSelector" id="evictionDt" name="evictionDt" placeholder="퇴거일" th:value="${shipProcessInfo.evictionDt}" th:disabled="${!evictionFlag}" autocomplete="off">
|
<input type="text" class="form-control form-control-sm w-70 dateSelector" id="evictionDt" name="evictionDt" placeholder="퇴거일" th:value="${shipProcessInfo.evictionDt}" th:disabled="${!evictionFlag}" autocomplete="off">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<th:block th:with="directHandoverFlag=${shipProcessInfo.directHandoverDt ne null ||
|
|
||||||
shipProcessInfo.handoverSeaPointLon ne null ||
|
|
||||||
shipProcessInfo.handoverSeaPointLat ne null ||
|
|
||||||
shipProcessInfo.handoverBoat ne null ||
|
|
||||||
shipProcessInfo.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>
|
<label for="directHandoverSelector" class="col-sm-1 col-form-label col-form-label-sm text-center">직접인계여부</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm " id="directHandoverSelector">
|
<select class="form-select form-select-sm " id="directHandoverSelector">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue