Compare commits
No commits in common. "79f18b1d24da1a11e1d4c654bf4cfaee4bce2d30" and "d38469999c0b16b82e7530ecb3f0e37cde2acd4f" have entirely different histories.
79f18b1d24
...
d38469999c
|
|
@ -4,12 +4,7 @@ import com.dbnt.faisp.main.authMgt.service.AuthMgtService;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CrackdownStatus;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CrackdownStatus;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.FishingBoat;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.FishingBoat;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.ProcessResult;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.ProcessResult;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository.FishingBoatRepository;
|
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository.ProcessResultRepository;
|
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository.SailorRepository;
|
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository.ViolationRepository;
|
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.service.CrackdownStatusService;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.service.CrackdownStatusService;
|
||||||
import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.InternationalCrimeArrest;
|
|
||||||
import com.dbnt.faisp.main.userInfo.model.UserInfo;
|
import com.dbnt.faisp.main.userInfo.model.UserInfo;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
||||||
|
|
@ -29,10 +24,6 @@ public class CrackdownStatusController {
|
||||||
|
|
||||||
private final AuthMgtService authMgtService;
|
private final AuthMgtService authMgtService;
|
||||||
private final CrackdownStatusService crackdownStatusService;
|
private final CrackdownStatusService crackdownStatusService;
|
||||||
private final ViolationRepository violationRepository;
|
|
||||||
private final ProcessResultRepository processResultRepository;
|
|
||||||
private final FishingBoatRepository fishingBoatRepository;
|
|
||||||
private final SailorRepository sailorRepository;
|
|
||||||
|
|
||||||
@RequestMapping("/crackdownStatus")
|
@RequestMapping("/crackdownStatus")
|
||||||
public ModelAndView crackdownStatus(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus) {
|
public ModelAndView crackdownStatus(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus) {
|
||||||
|
|
@ -46,13 +37,6 @@ public class CrackdownStatusController {
|
||||||
crackdownStatus.setQueryInfo();
|
crackdownStatus.setQueryInfo();
|
||||||
List<CrackdownStatus> crackdownStatusList = crackdownStatusService.selectCrackdownStatusList(crackdownStatus);
|
List<CrackdownStatus> crackdownStatusList = crackdownStatusService.selectCrackdownStatusList(crackdownStatus);
|
||||||
|
|
||||||
for (CrackdownStatus cds:crackdownStatusList) {
|
|
||||||
cds.setViolationList(violationRepository.findByFbKey(cds.getFbKey()));
|
|
||||||
cds.setProcessResult(processResultRepository.findByCdsKey(cds.getCdsKey()));
|
|
||||||
cds.setFishingBoat(fishingBoatRepository.findByCdsKey(cds.getCdsKey()));
|
|
||||||
cds.setSailorList(sailorRepository.findByFbKey(cds.getFbKey()));
|
|
||||||
}
|
|
||||||
|
|
||||||
mav.addObject("crackdownStatusList", crackdownStatusList);
|
mav.addObject("crackdownStatusList", crackdownStatusList);
|
||||||
crackdownStatus.setContentCnt(crackdownStatusService.selectCrackdownStatusListCnt(crackdownStatus));
|
crackdownStatus.setContentCnt(crackdownStatusService.selectCrackdownStatusListCnt(crackdownStatus));
|
||||||
crackdownStatus.setPaginationInfo();
|
crackdownStatus.setPaginationInfo();
|
||||||
|
|
@ -60,31 +44,11 @@ public class CrackdownStatusController {
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/crackdownStatus/crackdownStatusViewModal")
|
|
||||||
public ModelAndView internationalCrimeArrestViewModal(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus){
|
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/crackdownStatus/crackdownStatusViewModal");
|
|
||||||
crackdownStatus = crackdownStatusService.selectCrackdownStatus(crackdownStatus.getCdsKey());
|
|
||||||
crackdownStatus.setFishingBoat(fishingBoatRepository.findByCdsKey(crackdownStatus.getCdsKey()));
|
|
||||||
crackdownStatus.setProcessResult(processResultRepository.findByCdsKey(crackdownStatus.getCdsKey()));
|
|
||||||
crackdownStatus.setViolationList(violationRepository.findByFbKey(crackdownStatus.getFishingBoat().getFbKey()));
|
|
||||||
crackdownStatus.setSailorList(sailorRepository.findByFbKey(crackdownStatus.getFishingBoat().getFbKey()));
|
|
||||||
|
|
||||||
mav.addObject("crackdownStatus", crackdownStatus);
|
|
||||||
mav.addObject("userSeq",loginUser.getUserSeq());
|
|
||||||
//메뉴권한 확인
|
|
||||||
mav.addObject("accessAuth", authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/crackdownStatus").get(0).getAccessAuth());
|
|
||||||
return mav;
|
|
||||||
}
|
|
||||||
|
|
||||||
@GetMapping("/crackdownStatus/crackdownStatusEditModal")
|
@GetMapping("/crackdownStatus/crackdownStatusEditModal")
|
||||||
public ModelAndView crackdownStatusEditModal(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus){
|
public ModelAndView crackdownStatusEditModal(@AuthenticationPrincipal UserInfo loginUser, CrackdownStatus crackdownStatus){
|
||||||
ModelAndView mav = new ModelAndView("faStatistics/crackdownStatus/crackdownStatusEditModal");
|
ModelAndView mav = new ModelAndView("faStatistics/crackdownStatus/crackdownStatusEditModal");
|
||||||
if(crackdownStatus.getCdsKey()!=null){
|
if(crackdownStatus.getCdsKey()!=null){
|
||||||
crackdownStatus = crackdownStatusService.selectCrackdownStatus(crackdownStatus.getCdsKey());
|
crackdownStatus = crackdownStatusService.selectCrackdownStatus(crackdownStatus.getCdsKey());
|
||||||
crackdownStatus.setFishingBoat(fishingBoatRepository.findByCdsKey(crackdownStatus.getCdsKey()));
|
|
||||||
crackdownStatus.setProcessResult(processResultRepository.findByCdsKey(crackdownStatus.getCdsKey()));
|
|
||||||
crackdownStatus.setViolationList(violationRepository.findByFbKey(crackdownStatus.getFishingBoat().getFbKey()));
|
|
||||||
crackdownStatus.setSailorList(sailorRepository.findByFbKey(crackdownStatus.getFishingBoat().getFbKey()));
|
|
||||||
}else{
|
}else{
|
||||||
crackdownStatus.setWrtOrgan(loginUser.getOgCd());
|
crackdownStatus.setWrtOrgan(loginUser.getOgCd());
|
||||||
crackdownStatus.setWrtNm(loginUser.getUserNm());
|
crackdownStatus.setWrtNm(loginUser.getUserNm());
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import org.hibernate.annotations.DynamicUpdate;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -65,8 +64,8 @@ public class CrackdownStatus extends BaseModel {
|
||||||
private String mmsi;
|
private String mmsi;
|
||||||
|
|
||||||
@Column(name = "field_ivsgt")
|
@Column(name = "field_ivsgt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate fieldIvsgt;
|
private LocalDateTime fieldIvsgt;
|
||||||
|
|
||||||
@Column(name = "obstr_exspd_cnt")
|
@Column(name = "obstr_exspd_cnt")
|
||||||
private Integer obstrExspdCnt;
|
private Integer obstrExspdCnt;
|
||||||
|
|
@ -138,36 +137,4 @@ public class CrackdownStatus extends BaseModel {
|
||||||
private String crackdownPoliceEtc;
|
private String crackdownPoliceEtc;
|
||||||
@Transient
|
@Transient
|
||||||
private String crackdownBoatEtc;
|
private String crackdownBoatEtc;
|
||||||
|
|
||||||
@Transient
|
|
||||||
private Integer fbKey;
|
|
||||||
|
|
||||||
@Transient
|
|
||||||
private Integer restrictionCaptin;
|
|
||||||
@Transient
|
|
||||||
private Integer notRestrictionCaptin;
|
|
||||||
@Transient
|
|
||||||
private Integer restrictionMate;
|
|
||||||
@Transient
|
|
||||||
private Integer notRestrictionMate;
|
|
||||||
@Transient
|
|
||||||
private Integer restrictionWarden;
|
|
||||||
@Transient
|
|
||||||
private Integer notRestrictionWarden;
|
|
||||||
@Transient
|
|
||||||
private Integer restrictionSailor;
|
|
||||||
@Transient
|
|
||||||
private Integer notRestrictionSailor;
|
|
||||||
@Transient
|
|
||||||
private Integer restrictionTotal;
|
|
||||||
@Transient
|
|
||||||
private Integer notRestrictionTotal;
|
|
||||||
@Transient
|
|
||||||
private Integer unlicensedOperationTotal;
|
|
||||||
@Transient
|
|
||||||
private Integer specificImpossibilityTotal;
|
|
||||||
@Transient
|
|
||||||
private Integer eezTotal;
|
|
||||||
@Transient
|
|
||||||
private Integer invasionTerritorialWatersTotal;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -122,6 +122,4 @@ public class FishingBoat extends BaseModel {
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
private String boatMaterialEtc;
|
private String boatMaterialEtc;
|
||||||
@Transient
|
|
||||||
private String fisheryTypeEtc;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import org.hibernate.annotations.DynamicUpdate;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
|
|
@ -44,12 +43,12 @@ public class ProcessResult extends BaseModel {
|
||||||
private String isIvsgtStop;
|
private String isIvsgtStop;
|
||||||
|
|
||||||
@Column(name = "eviction_dt")
|
@Column(name = "eviction_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate evictionDt;
|
private String evictionDt;
|
||||||
|
|
||||||
@Column(name = "direct_handover_dt")
|
@Column(name = "direct_handover_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate directHandoverDt;
|
private LocalDateTime directHandoverDt;
|
||||||
|
|
||||||
@Column(name = "handover_sea_point_lon")
|
@Column(name = "handover_sea_point_lon")
|
||||||
private String handoverSeaPointLon;
|
private String handoverSeaPointLon;
|
||||||
|
|
@ -67,34 +66,34 @@ public class ProcessResult extends BaseModel {
|
||||||
private String middleTakeoverBoat;
|
private String middleTakeoverBoat;
|
||||||
|
|
||||||
@Column(name = "consignment_start_dt")
|
@Column(name = "consignment_start_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate consignmentStartDt;
|
private LocalDateTime consignmentStartDt;
|
||||||
|
|
||||||
@Column(name = "consignment_end_dt")
|
@Column(name = "consignment_end_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate consignmentEndDt;
|
private LocalDateTime consignmentEndDt;
|
||||||
|
|
||||||
@Column(name = "confiscation_dt")
|
@Column(name = "confiscation_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate confiscationDt;
|
private LocalDateTime confiscationDt;
|
||||||
|
|
||||||
@Column(name = "boat_disposal_dt")
|
@Column(name = "boat_disposal_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate boatDisposalDt;
|
private LocalDateTime boatDisposalDt;
|
||||||
|
|
||||||
@Column(name = "boat_disposal_type")
|
@Column(name = "boat_disposal_type")
|
||||||
private String boatDisposalType;
|
private String boatDisposalType;
|
||||||
|
|
||||||
@Column(name = "return_dt")
|
@Column(name = "return_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate returnDt;
|
private LocalDateTime returnDt;
|
||||||
|
|
||||||
@Column(name = "exile_cnt")
|
@Column(name = "exile_cnt")
|
||||||
private Integer exileCnt;
|
private Integer exileCnt;
|
||||||
|
|
||||||
@Column(name = "exile_dt")
|
@Column(name = "exile_dt")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||||
private LocalDate exileDt;
|
private LocalDateTime exileDt;
|
||||||
|
|
||||||
@Column(name = "flight")
|
@Column(name = "flight")
|
||||||
private String flight;
|
private String flight;
|
||||||
|
|
|
||||||
|
|
@ -4,5 +4,5 @@ import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.FishingBoat;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
public interface FishingBoatRepository extends JpaRepository<FishingBoat, Integer> {
|
public interface FishingBoatRepository extends JpaRepository<FishingBoat, Integer> {
|
||||||
FishingBoat findByCdsKey(Integer cdsKey);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,5 +4,5 @@ import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.ProcessResult;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
public interface ProcessResultRepository extends JpaRepository<ProcessResult, Integer> {
|
public interface ProcessResultRepository extends JpaRepository<ProcessResult, Integer> {
|
||||||
ProcessResult findByCdsKey(Integer cdsKey);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.Sailor;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.Sailor;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface SailorRepository extends JpaRepository<Sailor, Integer> {
|
public interface SailorRepository extends JpaRepository<Sailor, Integer> {
|
||||||
List<Sailor> findByFbKey(Integer fbKey);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,8 +3,6 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.Violation;
|
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.Violation;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface ViolationRepository extends JpaRepository<Violation, Integer> {
|
public interface ViolationRepository extends JpaRepository<Violation, Integer> {
|
||||||
List<Violation> findByFbKey(Integer fbKey);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -54,10 +54,6 @@ public class CrackdownStatusService extends BaseService {
|
||||||
if (crackdownStatus.getFishingBoat().getBoatMaterialEtc() != null) {
|
if (crackdownStatus.getFishingBoat().getBoatMaterialEtc() != null) {
|
||||||
crackdownStatus.getFishingBoat().setBoatMaterial(crackdownStatus.getFishingBoat().getBoatMaterialEtc());
|
crackdownStatus.getFishingBoat().setBoatMaterial(crackdownStatus.getFishingBoat().getBoatMaterialEtc());
|
||||||
}
|
}
|
||||||
if (crackdownStatus.getFishingBoat().getFisheryTypeEtc() != null) {
|
|
||||||
crackdownStatus.getFishingBoat().setFisheryType(crackdownStatus.getFishingBoat().getFisheryTypeEtc());
|
|
||||||
}
|
|
||||||
|
|
||||||
crackdownStatus.getFishingBoat().setCdsKey(cdsKey);
|
crackdownStatus.getFishingBoat().setCdsKey(cdsKey);
|
||||||
Integer fbKey = fishingBoatRepository.save(crackdownStatus.getFishingBoat()).getFbKey();
|
Integer fbKey = fishingBoatRepository.save(crackdownStatus.getFishingBoat()).getFbKey();
|
||||||
crackdownStatus.getFishingBoat().setFbKey(fbKey);
|
crackdownStatus.getFishingBoat().setFbKey(fbKey);
|
||||||
|
|
|
||||||
|
|
@ -12,103 +12,46 @@
|
||||||
|
|
||||||
<select id="selectCrackdownStatusList" resultType="CrackdownStatus" parameterType="CrackdownStatus">
|
<select id="selectCrackdownStatusList" resultType="CrackdownStatus" parameterType="CrackdownStatus">
|
||||||
SELECT
|
SELECT
|
||||||
cs.cds_key
|
c.cds_key
|
||||||
, cs.case_num
|
, c.case_num
|
||||||
, cs.napo_dt
|
, c.napo_dt
|
||||||
, cs.napo_sea_point_lon
|
, c.napo_sea_point_lon
|
||||||
, cs.napo_sea_point_lat
|
, c.napo_sea_point_lat
|
||||||
, cs.napo_sea_point_detail
|
, c.napo_sea_point_detail
|
||||||
, cs.invasion_type
|
, c.invasion_type
|
||||||
, cs.nll
|
, c.nll
|
||||||
, cs.case_agency
|
, c.case_agency
|
||||||
, cs.case_police_officer
|
, c.case_police_officer
|
||||||
, cs.crackdown_boat
|
, c.crackdown_boat
|
||||||
, cs.crackdown_police
|
, c.crackdown_police
|
||||||
, cs.mmsi
|
, c.mmsi
|
||||||
, cs.field_ivsgt
|
, c.field_ivsgt
|
||||||
, cs.obstr_exspd_cnt
|
, c.obstr_exspd_cnt
|
||||||
, cs.person_damage_cnt
|
, c.person_damage_cnt
|
||||||
, cs.person_damage_amount
|
, c.person_damage_amount
|
||||||
, cs.person_damage_detail
|
, c.person_damage_detail
|
||||||
, cs.material_damage_cnt
|
, c.material_damage_cnt
|
||||||
, cs.material_damage_amount
|
, c.material_damage_amount
|
||||||
, cs.material_damage_detail
|
, c.material_damage_detail
|
||||||
, cs.field_ivsgt_napo_dt
|
, c.field_ivsgt_napo_dt
|
||||||
, cs.field_ivsgt_release_dt
|
, c.field_ivsgt_release_dt
|
||||||
, cs.field_ivsgt_time_taken
|
, c.field_ivsgt_time_taken
|
||||||
, cs.pressurized_start_dt
|
, c.pressurized_start_dt
|
||||||
, cs.pressurized_end_dt
|
, c.pressurized_end_dt
|
||||||
, cs.distance
|
, c.distance
|
||||||
, cs.wrt_organ
|
, c.wrt_organ
|
||||||
, cs.wrt_user_seq
|
, c.wrt_user_seq
|
||||||
, cs.wrt_nm
|
, c.wrt_nm
|
||||||
, cs.wrt_dt
|
, c.wrt_dt
|
||||||
, fb.fb_key
|
FROM crackdown_status c
|
||||||
, fb.boat_name_kr
|
|
||||||
, fb.boat_name_cn
|
|
||||||
, fb.ton_cnt
|
|
||||||
, fb.fishery_type
|
|
||||||
, fb.boat_material
|
|
||||||
, fb.boat_nny_sung
|
|
||||||
, fb.boat_nny_si
|
|
||||||
, fb.offense_quantity
|
|
||||||
, fb.offense_amount
|
|
||||||
, fb.offense_illegal_waste_quantity
|
|
||||||
, fb.dambo_unpaid_amount
|
|
||||||
, fb.dambo_payment
|
|
||||||
, fb.payment_payment_dt
|
|
||||||
, fb.confiscation_frame
|
|
||||||
, fb.confiscation_width
|
|
||||||
, fb.confiscation_jo
|
|
||||||
, fb.confiscation_gae
|
|
||||||
, fb.confiscation_etc
|
|
||||||
, fb.catch_fish_species
|
|
||||||
, fb.catch_cnt
|
|
||||||
, fb.offense_fish_species
|
|
||||||
, fb.offense_catch_cnt
|
|
||||||
, fb.save_yn
|
|
||||||
, pr.pr_key
|
|
||||||
, pr.process_status
|
|
||||||
, pr.eviction_dt
|
|
||||||
, pr.direct_handover_dt
|
|
||||||
, pr.handover_sea_point_lon
|
|
||||||
, pr.handover_sea_point_lat
|
|
||||||
, pr.handover_sea_point_detail
|
|
||||||
, pr.handover_boat
|
|
||||||
, pr.middle_takeover_boat
|
|
||||||
, pr.consignment_start_dt
|
|
||||||
, pr.consignment_end_dt
|
|
||||||
, pr.confiscation_dt
|
|
||||||
, pr.boat_disposal_dt
|
|
||||||
, pr.boat_disposal_type
|
|
||||||
, pr.return_dt
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.is_restriction = 'Y' AND s.position != 'POS004') AS restrictionTotal
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.is_restriction = 'N' AND s.position != 'POS004') AS notRestrictionTotal
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS001' AND s.is_restriction = 'Y') AS restrictionCaptin
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS001' AND s.is_restriction = 'Y') AS notRestrictionCaptin
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS002' AND s.is_restriction = 'Y') AS restrictionMate
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS003' AND s.is_restriction = 'Y') AS restrictionWarden
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS002' AND s.is_restriction = 'Y') AS notRestrictionMate
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.position = 'POS003' AND s.is_restriction = 'Y') AS notRestrictionWarden
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.is_restriction = 'Y' AND (s.position = 'POS005' or s."position" = 'POS006')) AS restrictionSailor
|
|
||||||
, (SELECT count(*) FROM sailor s WHERE s.fb_key = fb.fb_key AND s.is_restriction = 'N' AND (s.position = 'POS005' or s."position" = 'POS006')) AS notRestrictionSailor
|
|
||||||
FROM crackdown_status cs
|
|
||||||
INNER JOIN fishing_boat fb
|
|
||||||
ON cs.cds_key = fb.cds_key
|
|
||||||
INNER JOIN process_result pr
|
|
||||||
ON cs.cds_key = pr.cds_key
|
|
||||||
<include refid="selectCrackdownStatusListWhere"></include>
|
<include refid="selectCrackdownStatusListWhere"></include>
|
||||||
ORDER BY cs.cds_key DESC
|
ORDER BY c.cds_key DESC
|
||||||
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectCrackdownStatusListCnt" resultType="int" parameterType="CrackdownStatus">
|
<select id="selectCrackdownStatusListCnt" resultType="int" parameterType="CrackdownStatus">
|
||||||
SELECT count(*)
|
SELECT count(*)
|
||||||
FROM crackdown_status cs
|
FROM crackdown_status
|
||||||
INNER JOIN fishing_boat fb
|
|
||||||
ON cs.cds_key = fb.cds_key
|
|
||||||
INNER JOIN process_result pr
|
|
||||||
ON cs.cds_key = pr.cds_key
|
|
||||||
<include refid="selectCrackdownStatusListWhere"></include>
|
<include refid="selectCrackdownStatusListWhere"></include>
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -7,10 +7,6 @@ $(document).on('click', '#crackdownStatusEditBtn', function () {
|
||||||
getCrackdownStatusEditModal(Number($("#icaViewBody").find("[name='cdsKey']").val()));
|
getCrackdownStatusEditModal(Number($("#icaViewBody").find("[name='cdsKey']").val()));
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('click', '#cdsEditBtn', function () {
|
|
||||||
$("#crackdownStatusViewModal").modal('hide');
|
|
||||||
getCrackdownStatusEditModal(Number($("#crackdownStatusViewBody").find("[name='cdsKey']").val()));
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).on('click', '#saveCrackdownStatusBtn', function (){
|
$(document).on('click', '#saveCrackdownStatusBtn', function (){
|
||||||
saveCrackdownStatus('N')
|
saveCrackdownStatus('N')
|
||||||
|
|
@ -51,8 +47,8 @@ $(document).on('click', '#violationAddBtn', function (){
|
||||||
})
|
})
|
||||||
|
|
||||||
$('#violationDiv').append(
|
$('#violationDiv').append(
|
||||||
'<div class="row">'
|
'<div>'
|
||||||
+ '<select class="form-select form-select-sm violation" name="violation">'
|
+ '<select class="form-select form-select-sm" name="violation">'
|
||||||
+ '<option value="">선택</option>'
|
+ '<option value="">선택</option>'
|
||||||
+ violation
|
+ violation
|
||||||
+ '<option value="etc">직접입력</option>'
|
+ '<option value="etc">직접입력</option>'
|
||||||
|
|
@ -72,23 +68,10 @@ $(document).on('click', '#violationRemoveBtn', function (){
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('change', '.violation', function (){
|
$(document).on('change', '.violation', function (){
|
||||||
if ($(this).val() == 'etc') {
|
|
||||||
$(this).after(
|
|
||||||
'<div class="row col-auto etcDiv">'
|
|
||||||
+ '<input type="text" class="form-control" name="violationEtc">'
|
|
||||||
+ '</div>'
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
$(this).next('.etcDiv').remove();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
$(document).on('change', '#fisheryType', function (){
|
|
||||||
if ($(this).val() == 'etc') {
|
if ($(this).val() == 'etc') {
|
||||||
$(this).after(
|
$(this).after(
|
||||||
'<div class="col-auto">'
|
'<div class="col-auto">'
|
||||||
+ '<input type="text" class="form-control" name="fisheryTypeEtc">'
|
+ '<input type="text" class="form-control" name="violationEtc">'
|
||||||
+ '</div>'
|
+ '</div>'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -144,26 +127,6 @@ $(document).on('change', '#processStatus', function (){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('click', '#cdsDownExcel', function (){
|
|
||||||
exportExcel('불법조업 불법어선 단속현황');
|
|
||||||
});
|
|
||||||
|
|
||||||
function getCrackdownStatusViewModal(cdsKey){
|
|
||||||
$.ajax({
|
|
||||||
url: '/faStatistics/crackdownStatus/crackdownStatusViewModal',
|
|
||||||
data: {cdsKey: cdsKey},
|
|
||||||
type: 'GET',
|
|
||||||
dataType:"html",
|
|
||||||
success: function(html){
|
|
||||||
$("#crackdownStatusViewBody").empty().append(html)
|
|
||||||
$("#crackdownStatusViewModal").modal('show');
|
|
||||||
},
|
|
||||||
error:function(){
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
function getCrackdownStatusEditModal(cdsKey){
|
function getCrackdownStatusEditModal(cdsKey){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/faStatistics/crackdownStatus/crackdownStatusEditModal',
|
url: '/faStatistics/crackdownStatus/crackdownStatusEditModal',
|
||||||
|
|
@ -177,17 +140,17 @@ function getCrackdownStatusEditModal(cdsKey){
|
||||||
$("#crackdownStatusEditModalContent").empty().append(html);
|
$("#crackdownStatusEditModalContent").empty().append(html);
|
||||||
$("#crackdownStatusEditModal").modal('show');
|
$("#crackdownStatusEditModal").modal('show');
|
||||||
|
|
||||||
$("#napoDt").datetimepicker({
|
$("#napoDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#birthdate").datepicker({
|
$("#birthdate").datepicker({
|
||||||
format: "yyyy-mm-dd",
|
format: "yyyy-mm-dd",
|
||||||
language: "ko"
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#paymentPaymentDt").datetimepicker({
|
$("#paymentPaymentDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#consignmentStartDt").datepicker({
|
$("#consignmentStartDt").datepicker({
|
||||||
format: "yyyy-mm-dd",
|
format: "yyyy-mm-dd",
|
||||||
|
|
@ -217,22 +180,23 @@ function getCrackdownStatusEditModal(cdsKey){
|
||||||
format: "yyyy-mm-dd",
|
format: "yyyy-mm-dd",
|
||||||
language: "ko"
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#fieldIvsgtNapoDt").datetimepicker({
|
$("#fieldIvsgtNapoDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#fieldIvsgtReleaseDt").datetimepicker({
|
$("#fieldIvsgtReleaseDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#pressurizedStartDt").datetimepicker({
|
$("#pressurizedStartDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
$("#pressurizedEndDt").datetimepicker({
|
$("#pressurizedEndDt").datepicker({
|
||||||
format:'Y-m-d H:i',
|
format: "yyyy-mm-dd",
|
||||||
lang:'kr'
|
language: "ko"
|
||||||
});
|
});
|
||||||
|
|
||||||
},
|
},
|
||||||
error:function(){
|
error:function(){
|
||||||
|
|
||||||
|
|
@ -251,27 +215,14 @@ function saveCrackdownStatus(saveYn){
|
||||||
let sailorList = [];
|
let sailorList = [];
|
||||||
|
|
||||||
sailorList.push(
|
sailorList.push(
|
||||||
{
|
{ position: 'POS001', sailorNameKr: null, isRestriction: $("#cdsEditForm").find('select[name="captin"]').val() != '' ? $("#cdsEditForm").find('select[name="captin"]').val() : null },
|
||||||
position: 'POS001',
|
{ position: 'POS002', sailorNameKr: null, isRestriction: $("#cdsEditForm").find('select[name="mate"]').val() != '' ? $("#cdsEditForm").find('select[name="mate"]').val() : null },
|
||||||
sailorNameKr: $("#cdsEditForm").find('input[name="sailorNameKr"]').val() != '' ? $("#cdsEditForm").find('input[name="sailorNameKr"]').val() : null,
|
{ position: 'POS003', sailorNameKr: null, isRestriction: $("#cdsEditForm").find('select[name="warden"]').val() != '' ? $("#cdsEditForm").find('select[name="warden"]').val() : null }
|
||||||
isRestriction: $("#cdsEditForm").find('select[name="captin"]').val() != '' ? $("#cdsEditForm").find('select[name="captin"]').val() : null,
|
|
||||||
birthdate: $("#cdsEditForm").find('input[name="birthdate"]').val() != '' ? $("#cdsEditForm").find('input[name="birthdate"]').val() : null
|
|
||||||
},
|
|
||||||
{
|
|
||||||
position: 'POS002',
|
|
||||||
sailorNameKr: null,
|
|
||||||
isRestriction: $("#cdsEditForm").find('select[name="mate"]').val() != '' ? $("#cdsEditForm").find('select[name="mate"]').val() : null
|
|
||||||
},
|
|
||||||
{
|
|
||||||
position: 'POS003',
|
|
||||||
sailorNameKr: null,
|
|
||||||
isRestriction: $("#cdsEditForm").find('select[name="warden"]').val() != '' ? $("#cdsEditForm").find('select[name="warden"]').val() : null
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
$("select[name='sailor']").each(function (){
|
$(".sailor-list").each(function (){
|
||||||
sailorList.push({
|
sailorList.push({
|
||||||
sailorKey: $(this).parent().parent().find('input[name="sailorKey"]').val() != undefined ? Number($(this).parent().parent().find('input[name="sailorKey"]').val()) : null,
|
sailorKey: $(this).parent().parent().find('input[name="sailorKey"]').val() != undefined ? Number($(this).find('input[name="sailorKey"]').val()) : null,
|
||||||
sailorNameKr: $(this).parent().parent().find('input[name="sailorNameKr"]').val(),
|
sailorNameKr: $(this).parent().parent().find('input[name="sailorNameKr"]').val(),
|
||||||
position: 'POS006',
|
position: 'POS006',
|
||||||
isRestriction: $(this).val() != undefined ? $(this).val() : null
|
isRestriction: $(this).val() != undefined ? $(this).val() : null
|
||||||
|
|
@ -289,17 +240,14 @@ function saveCrackdownStatus(saveYn){
|
||||||
if (sailorList[i].isRestriction != null) {
|
if (sailorList[i].isRestriction != null) {
|
||||||
formData.append(`sailorList[${i}].isRestriction`, sailorList[i].isRestriction);
|
formData.append(`sailorList[${i}].isRestriction`, sailorList[i].isRestriction);
|
||||||
}
|
}
|
||||||
if (sailorList[i].birthdate != null) {
|
|
||||||
formData.append(`sailorList[${i}].birthdate`, sailorList[i].birthdate);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$(".violation").each(function (){
|
$(".violation").each(function (){
|
||||||
violationList.push({
|
violationList.push({
|
||||||
violationKey: $(this).parent().find('input[name="violationKey"]').val() != undefined ? Number($(this).parent().find('input[name="violationKey"]').val()) : null,
|
violationKey: $(this).parent().find('input[name="violationKey"]').val() != undefined ? Number($(this).find('input[name="violationKey"]').val()) : null,
|
||||||
fbKey: $("#cdsEditForm").find('input[name="fbKey"]').val() != undefined ? Number($("#cdsEditForm").find('input[name="fbKey"]').val()) : null,
|
fbKey: $("#cdsEditForm").find('input[name="fbKey"]').val() != undefined ? Number($(this).find('input[name="fbKey"]').val()) : null,
|
||||||
violation: $(this).val() != '' ? $(this).val() : null,
|
violation: $(this).val() != '' ? $(this).val() : null,
|
||||||
violationEtc: $(this).parent().find('input[name="violationEtc"]').val() != undefined ? $(this).parent().find('input[name="violationEtc"]').val() : null
|
violationEtc: $(this).parent().find('input[name="violationEtc"]').val() != undefined ? $(this).find('input[name="violationEtc"]').val() : null
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -355,46 +303,3 @@ function contentCheck(){
|
||||||
|
|
||||||
return flag;
|
return flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
function exportExcel(name){
|
|
||||||
var excelHandler = {
|
|
||||||
getExcelFileName : function(){
|
|
||||||
return name+getToday()+'.xlsx'; //파일명
|
|
||||||
},
|
|
||||||
getSheetName : function(){
|
|
||||||
return name;
|
|
||||||
},
|
|
||||||
getExcelData : function(){
|
|
||||||
return document.getElementById('cdsTable'); //TABLE id
|
|
||||||
},
|
|
||||||
getWorksheet : function(){
|
|
||||||
return XLSX.utils.table_to_sheet(this.getExcelData());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// step 1. workbook 생성
|
|
||||||
var wb = XLSX.utils.book_new();
|
|
||||||
|
|
||||||
// step 2. 시트 만들기
|
|
||||||
var newWorksheet = excelHandler.getWorksheet();
|
|
||||||
|
|
||||||
// step 3. workbook에 새로만든 워크시트에 이름을 주고 붙인다.
|
|
||||||
XLSX.utils.book_append_sheet(wb, newWorksheet, excelHandler.getSheetName());
|
|
||||||
|
|
||||||
// step 4. 엑셀 파일 만들기
|
|
||||||
var wbout = XLSX.write(wb, {bookType:'xlsx', type: 'binary'});
|
|
||||||
|
|
||||||
// step 5. 엑셀 파일 내보내기
|
|
||||||
saveAs(new Blob([s2ab(wbout)],{type:"application/octet-stream"}), excelHandler.getExcelFileName());
|
|
||||||
}
|
|
||||||
|
|
||||||
function s2ab(s) {
|
|
||||||
var buf = new ArrayBuffer(s.length); //convert s to arrayBuffer
|
|
||||||
var view = new Uint8Array(buf); //create uint8array as viewer
|
|
||||||
for (var i=0; i<s.length; i++) view[i] = s.charCodeAt(i) & 0xFF; //convert to octet
|
|
||||||
return buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getToday() {
|
|
||||||
var date = new Date();
|
|
||||||
var year = date.getFullYear();
|
|
||||||
}
|
|
||||||
|
|
@ -11,6 +11,7 @@ $(document).on('click', '#icaAddBtn', function () {
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('click', '#icaEditBtn', function () {
|
$(document).on('click', '#icaEditBtn', function () {
|
||||||
|
$("#icaViewModal").modal('hide');
|
||||||
$("#icaViewModal").modal('hide');
|
$("#icaViewModal").modal('hide');
|
||||||
getIcaEditModal(Number($("#icaViewBody").find("[name='icaKey']").val()));
|
getIcaEditModal(Number($("#icaViewBody").find("[name='icaKey']").val()));
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,568 +0,0 @@
|
||||||
.xdsoft_datetimepicker {
|
|
||||||
box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.506);
|
|
||||||
background: #fff;
|
|
||||||
border-bottom: 1px solid #bbb;
|
|
||||||
border-left: 1px solid #ccc;
|
|
||||||
border-right: 1px solid #ccc;
|
|
||||||
border-top: 1px solid #ccc;
|
|
||||||
color: #333;
|
|
||||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
||||||
padding: 8px;
|
|
||||||
padding-left: 0;
|
|
||||||
padding-top: 2px;
|
|
||||||
position: absolute;
|
|
||||||
z-index: 9999;
|
|
||||||
-moz-box-sizing: border-box;
|
|
||||||
box-sizing: border-box;
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl {
|
|
||||||
padding: 8px 0 8px 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker iframe {
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
width: 75px;
|
|
||||||
height: 210px;
|
|
||||||
background: transparent;
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*For IE8 or lower*/
|
|
||||||
.xdsoft_datetimepicker button {
|
|
||||||
border: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_noselect {
|
|
||||||
-webkit-touch-callout: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
-khtml-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-ms-user-select: none;
|
|
||||||
-o-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_noselect::selection { background: transparent }
|
|
||||||
.xdsoft_noselect::-moz-selection { background: transparent }
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_inline {
|
|
||||||
display: inline-block;
|
|
||||||
position: static;
|
|
||||||
box-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker * {
|
|
||||||
-moz-box-sizing: border-box;
|
|
||||||
box-sizing: border-box;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_datepicker, .xdsoft_datetimepicker .xdsoft_timepicker {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_datepicker.active, .xdsoft_datetimepicker .xdsoft_timepicker.active {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_datepicker {
|
|
||||||
width: 224px;
|
|
||||||
float: left;
|
|
||||||
margin-left: 8px;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_datepicker {
|
|
||||||
float: right;
|
|
||||||
margin-right: 8px;
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_datepicker {
|
|
||||||
width: 256px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker {
|
|
||||||
width: 58px;
|
|
||||||
float: left;
|
|
||||||
text-align: center;
|
|
||||||
margin-left: 8px;
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker {
|
|
||||||
float: right;
|
|
||||||
margin-right: 8px;
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_datepicker.active+.xdsoft_timepicker {
|
|
||||||
margin-top: 8px;
|
|
||||||
margin-bottom: 3px
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_monthpicker {
|
|
||||||
position: relative;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label i,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_prev,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_next,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_today_button {
|
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0NBRjI1NjM0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0NBRjI1NjQ0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQ0FGMjU2MTQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQ0FGMjU2MjQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoNEP54AAAIOSURBVHja7Jq9TsMwEMcxrZD4WpBYeKUCe+kTMCACHZh4BFfHO/AAIHZGFhYkBBsSEqxsLCAgXKhbXYOTxh9pfJVP+qutnZ5s/5Lz2Y5I03QhWji2GIcgAokWgfCxNvcOCCGKqiSqhUp0laHOne05vdEyGMfkdxJDVjgwDlEQgYQBgx+ULJaWSXXS6r/ER5FBVR8VfGftTKcITNs+a1XpcFoExREIDF14AVIFxgQUS+h520cdud6wNkC0UBw6BCO/HoCYwBhD8QCkQ/x1mwDyD4plh4D6DDV0TAGyo4HcawLIBBSLDkHeH0Mg2yVP3l4TQMZQDDsEOl/MgHQqhMNuE0D+oBh0CIr8MAKyazBH9WyBuKxDWgbXfjNf32TZ1KWm/Ap1oSk/R53UtQ5xTh3LUlMmT8gt6g51Q9p+SobxgJQ/qmsfZhWywGFSl0yBjCLJCMgXail3b7+rumdVJ2YRss4cN+r6qAHDkPWjPjdJCF4n9RmAD/V9A/Wp4NQassDjwlB6XBiCxcJQWmZZb8THFilfy/lfrTvLghq2TqTHrRMTKNJ0sIhdo15RT+RpyWwFdY96UZ/LdQKBGjcXpcc1AlSFEfLmouD+1knuxBDUVrvOBmoOC/rEcN7OQxKVeJTCiAdUzUJhA2Oez9QTkp72OTVcxDcXY8iKNkxGAJXmJCOQwOa6dhyXsOa6XwEGAKdeb5ET3rQdAAAAAElFTkSuQmCC);
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label i {
|
|
||||||
opacity: 0.5;
|
|
||||||
background-position: -92px -19px;
|
|
||||||
display: inline-block;
|
|
||||||
width: 9px;
|
|
||||||
height: 20px;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_prev {
|
|
||||||
float: left;
|
|
||||||
background-position: -20px 0;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker .xdsoft_today_button {
|
|
||||||
float: left;
|
|
||||||
background-position: -70px 0;
|
|
||||||
margin-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_next {
|
|
||||||
float: right;
|
|
||||||
background-position: 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_next,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_prev ,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_today_button {
|
|
||||||
background-color: transparent;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
border: 0 none;
|
|
||||||
cursor: pointer;
|
|
||||||
display: block;
|
|
||||||
height: 30px;
|
|
||||||
opacity: 0.5;
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
|
|
||||||
outline: medium none;
|
|
||||||
overflow: hidden;
|
|
||||||
padding: 0;
|
|
||||||
position: relative;
|
|
||||||
text-indent: 100%;
|
|
||||||
white-space: nowrap;
|
|
||||||
width: 20px;
|
|
||||||
min-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
|
|
||||||
float: none;
|
|
||||||
background-position: -40px -15px;
|
|
||||||
height: 15px;
|
|
||||||
width: 30px;
|
|
||||||
display: block;
|
|
||||||
margin-left: 14px;
|
|
||||||
margin-top: 7px;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_prev,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_next {
|
|
||||||
float: none;
|
|
||||||
margin-left: 0;
|
|
||||||
margin-right: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev {
|
|
||||||
background-position: -40px 0;
|
|
||||||
margin-bottom: 7px;
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
|
|
||||||
height: 151px;
|
|
||||||
overflow: hidden;
|
|
||||||
border-bottom: 1px solid #ddd;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div {
|
|
||||||
background: #f5f5f5;
|
|
||||||
border-top: 1px solid #ddd;
|
|
||||||
color: #666;
|
|
||||||
font-size: 12px;
|
|
||||||
text-align: center;
|
|
||||||
border-collapse: collapse;
|
|
||||||
cursor: pointer;
|
|
||||||
border-bottom-width: 0;
|
|
||||||
height: 25px;
|
|
||||||
line-height: 25px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div > div:first-child {
|
|
||||||
border-top-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_today_button:hover,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_next:hover,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_prev:hover {
|
|
||||||
opacity: 1;
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label {
|
|
||||||
display: inline;
|
|
||||||
position: relative;
|
|
||||||
z-index: 9999;
|
|
||||||
margin: 0;
|
|
||||||
padding: 5px 3px;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 20px;
|
|
||||||
font-weight: bold;
|
|
||||||
background-color: #fff;
|
|
||||||
float: left;
|
|
||||||
width: 182px;
|
|
||||||
text-align: center;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label:hover>span {
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label:hover i {
|
|
||||||
opacity: 1.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select {
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 30px;
|
|
||||||
z-index: 101;
|
|
||||||
display: none;
|
|
||||||
background: #fff;
|
|
||||||
max-height: 160px;
|
|
||||||
overflow-y: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_monthselect{ right: -7px }
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect{ right: 2px }
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover {
|
|
||||||
color: #fff;
|
|
||||||
background: #ff8000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option {
|
|
||||||
padding: 2px 10px 2px 5px;
|
|
||||||
text-decoration: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current {
|
|
||||||
background: #33aaff;
|
|
||||||
box-shadow: #178fe5 0 1px 3px 0 inset;
|
|
||||||
color: #fff;
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_month {
|
|
||||||
width: 100px;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar {
|
|
||||||
clear: both;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_year{
|
|
||||||
width: 48px;
|
|
||||||
margin-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar table {
|
|
||||||
border-collapse: collapse;
|
|
||||||
width: 100%;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td > div {
|
|
||||||
padding-right: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar th {
|
|
||||||
height: 25px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td,.xdsoft_datetimepicker .xdsoft_calendar th {
|
|
||||||
width: 14.2857142%;
|
|
||||||
background: #f5f5f5;
|
|
||||||
border: 1px solid #ddd;
|
|
||||||
color: #666;
|
|
||||||
font-size: 12px;
|
|
||||||
text-align: right;
|
|
||||||
vertical-align: middle;
|
|
||||||
padding: 0;
|
|
||||||
border-collapse: collapse;
|
|
||||||
cursor: pointer;
|
|
||||||
height: 25px;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar td,.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar th {
|
|
||||||
width: 12.5%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar th {
|
|
||||||
background: #f1f1f1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
|
|
||||||
color: #33aaff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_default {
|
|
||||||
background: #ffe9d2;
|
|
||||||
box-shadow: #ffb871 0 1px 4px 0 inset;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_mint {
|
|
||||||
background: #c1ffc9;
|
|
||||||
box-shadow: #00dd1c 0 1px 4px 0 inset;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current {
|
|
||||||
background: #33aaff;
|
|
||||||
box-shadow: #178fe5 0 1px 3px 0 inset;
|
|
||||||
color: #fff;
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_time_box >div >div.xdsoft_disabled {
|
|
||||||
opacity: 0.5;
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
|
|
||||||
cursor: default;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month.xdsoft_disabled {
|
|
||||||
opacity: 0.2;
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td:hover,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div:hover {
|
|
||||||
color: #fff !important;
|
|
||||||
background: #ff8000 !important;
|
|
||||||
box-shadow: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current.xdsoft_disabled:hover,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current.xdsoft_disabled:hover {
|
|
||||||
background: #33aaff !important;
|
|
||||||
box-shadow: #178fe5 0 1px 3px 0 inset !important;
|
|
||||||
color: #fff !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover,
|
|
||||||
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_disabled:hover {
|
|
||||||
color: inherit !important;
|
|
||||||
background: inherit !important;
|
|
||||||
box-shadow: inherit !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_calendar th {
|
|
||||||
font-weight: 700;
|
|
||||||
text-align: center;
|
|
||||||
color: #999;
|
|
||||||
cursor: default;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_copyright {
|
|
||||||
color: #ccc !important;
|
|
||||||
font-size: 10px;
|
|
||||||
clear: both;
|
|
||||||
float: none;
|
|
||||||
margin-left: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker .xdsoft_copyright a { color: #eee !important }
|
|
||||||
.xdsoft_datetimepicker .xdsoft_copyright a:hover { color: #aaa !important }
|
|
||||||
|
|
||||||
.xdsoft_time_box {
|
|
||||||
position: relative;
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
}
|
|
||||||
.xdsoft_scrollbar >.xdsoft_scroller {
|
|
||||||
background: #ccc !important;
|
|
||||||
height: 20px;
|
|
||||||
border-radius: 3px;
|
|
||||||
}
|
|
||||||
.xdsoft_scrollbar {
|
|
||||||
position: absolute;
|
|
||||||
width: 7px;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
bottom: 0;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_scrollbar {
|
|
||||||
left: 0;
|
|
||||||
right: auto;
|
|
||||||
}
|
|
||||||
.xdsoft_scroller_box {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark {
|
|
||||||
box-shadow: 0 5px 15px -5px rgba(255, 255, 255, 0.506);
|
|
||||||
background: #000;
|
|
||||||
border-bottom: 1px solid #444;
|
|
||||||
border-left: 1px solid #333;
|
|
||||||
border-right: 1px solid #333;
|
|
||||||
border-top: 1px solid #333;
|
|
||||||
color: #ccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box {
|
|
||||||
border-bottom: 1px solid #222;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div {
|
|
||||||
background: #0a0a0a;
|
|
||||||
border-top: 1px solid #222;
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label {
|
|
||||||
background-color: #000;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select {
|
|
||||||
border: 1px solid #333;
|
|
||||||
background: #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option:hover {
|
|
||||||
color: #000;
|
|
||||||
background: #007fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select > div > .xdsoft_option.xdsoft_current {
|
|
||||||
background: #cc5500;
|
|
||||||
box-shadow: #b03e00 0 1px 3px 0 inset;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label i,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_prev,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_next,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_today_button {
|
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUExQUUzOTA0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUExQUUzOTE0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQTFBRTM4RTQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQTFBRTM4RjQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp0VxGEAAAIASURBVHja7JrNSgMxEMebtgh+3MSLr1T1Xn2CHoSKB08+QmR8Bx9A8e7RixdB9CKCoNdexIugxFlJa7rNZneTbLIpM/CnNLsdMvNjM8l0mRCiQ9Ye61IKCAgZAUnH+mU3MMZaHYChBnJUDzWOFZdVfc5+ZFLbrWDeXPwbxIqrLLfaeS0hEBVGIRQCEiZoHQwtlGSByCCdYBl8g8egTTAWoKQMRBRBcZxYlhzhKegqMOageErsCHVkk3hXIFooDgHB1KkHIHVgzKB4ADJQ/A1jAFmAYhkQqA5TOBtocrKrgXwQA8gcFIuAIO8sQSA7hidvPwaQGZSaAYHOUWJABhWWw2EMIH9QagQERU4SArJXo0ZZL18uvaxejXt/Em8xjVBXmvFr1KVm/AJ10tRe2XnraNqaJvKE3KHuUbfK1E+VHB0q40/y3sdQSxY4FHWeKJCunP8UyDdqJZenT3ntVV5jIYCAh20vT7ioP8tpf6E2lfEMwERe+whV1MHjwZB7PBiCxcGQWwKZKD62lfGNnP/1poFAA60T7rF1UgcKd2id3KDeUS+oLWV8DfWAepOfq00CgQabi9zjcgJVYVD7PVzQUAUGAQkbNJTBICDhgwYTjDYD6XeW08ZKh+A4pYkzenOxXUbvZcWz7E8ykRMnIHGX1XPl+1m2vPYpL+2qdb8CDAARlKFEz/ZVkAAAAABJRU5ErkJggg==);
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
|
||||||
background: #0a0a0a;
|
|
||||||
border: 1px solid #222;
|
|
||||||
color: #999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
|
||||||
background: #0e0e0e;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_today {
|
|
||||||
color: #cc5500;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_highlighted_default {
|
|
||||||
background: #ffe9d2;
|
|
||||||
box-shadow: #ffb871 0 1px 4px 0 inset;
|
|
||||||
color:#000;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_highlighted_mint {
|
|
||||||
background: #c1ffc9;
|
|
||||||
box-shadow: #00dd1c 0 1px 4px 0 inset;
|
|
||||||
color:#000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div.xdsoft_current {
|
|
||||||
background: #cc5500;
|
|
||||||
box-shadow: #b03e00 0 1px 3px 0 inset;
|
|
||||||
color: #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td:hover,
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box >div >div:hover {
|
|
||||||
color: #000 !important;
|
|
||||||
background: #007fff !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
|
|
||||||
color: #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright { color: #333 !important }
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a { color: #111 !important }
|
|
||||||
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a:hover { color: #555 !important }
|
|
||||||
|
|
||||||
.xdsoft_dark .xdsoft_time_box {
|
|
||||||
border: 1px solid #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.xdsoft_dark .xdsoft_scrollbar >.xdsoft_scroller {
|
|
||||||
background: #333 !important;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker .xdsoft_save_selected {
|
|
||||||
display: block;
|
|
||||||
border: 1px solid #dddddd !important;
|
|
||||||
margin-top: 5px;
|
|
||||||
width: 100%;
|
|
||||||
color: #454551;
|
|
||||||
font-size: 13px;
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker .blue-gradient-button {
|
|
||||||
font-family: "museo-sans", "Book Antiqua", sans-serif;
|
|
||||||
font-size: 12px;
|
|
||||||
font-weight: 300;
|
|
||||||
color: #82878c;
|
|
||||||
height: 28px;
|
|
||||||
position: relative;
|
|
||||||
padding: 4px 17px 4px 33px;
|
|
||||||
border: 1px solid #d7d8da;
|
|
||||||
background: -moz-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
|
||||||
/* FF3.6+ */
|
|
||||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(73%, #f4f8fa));
|
|
||||||
/* Chrome,Safari4+ */
|
|
||||||
background: -webkit-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
|
||||||
/* Chrome10+,Safari5.1+ */
|
|
||||||
background: -o-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
|
||||||
/* Opera 11.10+ */
|
|
||||||
background: -ms-linear-gradient(top, #fff 0%, #f4f8fa 73%);
|
|
||||||
/* IE10+ */
|
|
||||||
background: linear-gradient(to bottom, #fff 0%, #f4f8fa 73%);
|
|
||||||
/* W3C */
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#f4f8fa',GradientType=0 );
|
|
||||||
/* IE6-9 */
|
|
||||||
}
|
|
||||||
.xdsoft_datetimepicker .blue-gradient-button:hover, .xdsoft_datetimepicker .blue-gradient-button:focus, .xdsoft_datetimepicker .blue-gradient-button:hover span, .xdsoft_datetimepicker .blue-gradient-button:focus span {
|
|
||||||
color: #454551;
|
|
||||||
background: -moz-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
|
||||||
/* FF3.6+ */
|
|
||||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f4f8fa), color-stop(73%, #FFF));
|
|
||||||
/* Chrome,Safari4+ */
|
|
||||||
background: -webkit-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
|
||||||
/* Chrome10+,Safari5.1+ */
|
|
||||||
background: -o-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
|
||||||
/* Opera 11.10+ */
|
|
||||||
background: -ms-linear-gradient(top, #f4f8fa 0%, #FFF 73%);
|
|
||||||
/* IE10+ */
|
|
||||||
background: linear-gradient(to bottom, #f4f8fa 0%, #FFF 73%);
|
|
||||||
/* W3C */
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f8fa', endColorstr='#FFF',GradientType=0 );
|
|
||||||
/* IE6-9 */
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
|
|
@ -6,7 +6,6 @@
|
||||||
<th:block layout:fragment="script">
|
<th:block layout:fragment="script">
|
||||||
<script th:inline="javascript">
|
<script th:inline="javascript">
|
||||||
const commonCode = [[${session.commonCode}]];
|
const commonCode = [[${session.commonCode}]];
|
||||||
let totalPersonDamageAmount = 0;
|
|
||||||
</script>
|
</script>
|
||||||
<script type="text/javascript" th:src="@{/js/faStatistics/crackdownStatus.js}"></script>
|
<script type="text/javascript" th:src="@{/js/faStatistics/crackdownStatus.js}"></script>
|
||||||
</th:block>
|
</th:block>
|
||||||
|
|
@ -18,7 +17,7 @@
|
||||||
<div class="row mx-0">
|
<div class="row mx-0">
|
||||||
<div class="col-12 card">
|
<div class="col-12 card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form method="get" th:action="@{/faStatistics/crackdownStatus}" id="cdsSearchForm">
|
<form method="get" th:action="@{/faStatistics/crackdownStatus}" id="icaSearchForm">
|
||||||
<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 pe-3 py-1">
|
<div class="row justify-content-between pe-3 py-1">
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
|
|
@ -39,7 +38,7 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<div class="row justify-content-start" style="overflow: hidden; overflow-x: scroll">
|
<div class="row justify-content-start" style="overflow: hidden; overflow-x: scroll">
|
||||||
<table class="table table-striped" style="max-width: none; width: auto;" id="cdsTable">
|
<table class="table table-striped">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th rowspan="4">연번</th>
|
<th rowspan="4">연번</th>
|
||||||
|
|
@ -110,7 +109,7 @@
|
||||||
<th colspan="2">폐선</th>
|
<th colspan="2">폐선</th>
|
||||||
<th rowspan="2">침몰</th>
|
<th rowspan="2">침몰</th>
|
||||||
<th rowspan="2">환부</th>
|
<th rowspan="2">환부</th>
|
||||||
<th rowspan="3">일시</th>
|
<th colspan="3">일시</th>
|
||||||
<th rowspan="3">해점</th>
|
<th rowspan="3">해점</th>
|
||||||
<th rowspan="3">인계함정</th>
|
<th rowspan="3">인계함정</th>
|
||||||
<th rowspan="3">중측인수함정</th>
|
<th rowspan="3">중측인수함정</th>
|
||||||
|
|
@ -143,16 +142,16 @@
|
||||||
<th>폐선조건부공매</th>
|
<th>폐선조건부공매</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[invasionType == 'IST001'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[invasionType == 'IST001'].![1]) : 0}"></th>
|
<th>3</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[invasionType == 'IST002'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[invasionType == 'IST002'].![1]) : 0}"></th>
|
<th>4</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[invasionType == 'IST003'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[invasionType == 'IST003'].![1]) : 0}"></th>
|
<th>2</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[invasionType == 'IST004'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[invasionType == 'IST004'].![1]) : 0}"></th>
|
<th>1</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[nll == 'Y'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[nll == 'Y'].![1]) : 0}"></th>
|
<th>4</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[personDamageCnt > 0 || personDamageAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
<th>3</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![personDamageCnt])}"></th>
|
<th>4</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![personDamageAmount])}"></th>
|
<th>9000,000</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[materialDamageCnt > 0 || materialDamageAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
<th>4</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![materialDamageAmount])}"></th>
|
<th>9099,099</th>
|
||||||
<th>단속경찰서</th>
|
<th>단속경찰서</th>
|
||||||
<th>단속함정</th>
|
<th>단속함정</th>
|
||||||
<th>성</th>
|
<th>성</th>
|
||||||
|
|
@ -161,187 +160,57 @@
|
||||||
<th>출생년도</th>
|
<th>출생년도</th>
|
||||||
<th>어종</th>
|
<th>어종</th>
|
||||||
<th>수량</th>
|
<th>수량</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.offenseCatchCnt])}"></th>
|
<th>100</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.offenseIllegalWasteQuantity])}"></th>
|
<th>100</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.offenseQuantity])}"></th>
|
<th>100</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.offenseAmount])}"></th>
|
<th>8888700</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.processStatus == 'PR001'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.processStatus == 'PR001'].![1]) : 0}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.processStatus == 'PR009'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.processStatus == 'PR009'].![1]) : 0}"></th>
|
<th>8</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.damboPayment > 0].![1]) ne null ? 1 : 0}"></th>
|
<th>400</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.damboPayment])}"></th>
|
<th>4000</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.damboUnpaidAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![fishingBoat.damboUnpaidAmount])}"></th>
|
<th>80000</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.consignmentStartDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>11</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.evictionDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.directHandoverDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>11</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT001'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT001'].![1]) : 0}"></th>
|
<th>12</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT002'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT002'].![1]) : 0}"></th>
|
<th>8</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT003'].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT003'].![1]) : 0}"></th>
|
<th>2</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.confiscationDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>7</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.returnDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>6</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![restrictionTotal])}"></th>
|
<th>20</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![restrictionCaptin])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![restrictionMate])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![restrictionWarden])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![restrictionSailor])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.confiscationDt != null].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[processResult.confiscationDt != null].![1]) : 0}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![notRestrictionTotal])}"></th>
|
<th>20</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![notRestrictionCaptin])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![notRestrictionMate])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![notRestrictionWarden])}"></th>
|
<th>2</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.![notRestrictionSailor])}"></th>
|
<th>11</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[processResult.confiscationDt != null].![1]) ne null ? 0 : #aggregates.sum(crackdownStatusList.?[processResult.confiscationDt != null].![1])}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fieldIvsgtNapoDt != null].![1]) ne null ? 1 : 0}"></th>
|
<th>10</th>
|
||||||
<th>나포일시</th>
|
<th>나포일시</th>
|
||||||
<th>석방일시</th>
|
<th>석방일시</th>
|
||||||
<th>소요시간</th>
|
<th>소요시간</th>
|
||||||
<th>소요시간</th>
|
<th>소요시간</th>
|
||||||
<th>거리(해리)</th>
|
<th>거리(해리)</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationFrame != ''].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationFrame != ''].![1]) : 0}"></th>
|
<th>7</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationWidth != ''].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationWidth != null && fishingBoat.confiscationWidth != ''].![1]) : 0}"></th>
|
<th>8</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationJo != ''].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationJo != null && fishingBoat.confiscationJo != ''].![1]) : 0}"></th>
|
<th>10</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationGae != ''].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationGae != null && fishingBoat.confiscationGae != ''].![1]) : 0}"></th>
|
<th>11</th>
|
||||||
<th th:text="${#aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationEtc != ''].![1]) ne null ? #aggregates.sum(crackdownStatusList.?[fishingBoat.confiscationEtc != null && fishingBoat.confiscationEtc != ''].![1]) : 0}"></th>
|
<th>12</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<th:block th:each="crackdownStatus:${crackdownStatusList}">
|
|
||||||
<tr class="tr" th:data-key="${crackdownStatus.cdsKey}">
|
|
||||||
<td th:text="${crackdownStatus.cdsKey}"></td>
|
|
||||||
<td th:text="${crackdownStatus.napoDt}"></td>
|
|
||||||
<td>
|
|
||||||
<th:block th:if="${#lists.size(crackdownStatus.violationList) >= 1}">
|
|
||||||
<th:block th:each="violation:${crackdownStatus.violationList}">
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
|
||||||
<div th:if="${violation.violation eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></div>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<span th:text="${crackdownStatus.napoSeaPointLat}"> ~ </span>
|
|
||||||
<span th:text="${crackdownStatus.napoSeaPointLon}"></span>
|
|
||||||
<div th:text="${crackdownStatus.napoSeaPointDetail}"></div>
|
|
||||||
</td>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('IST')}">
|
|
||||||
<td th:if="${crackdownStatus.invasionType ne null && crackdownStatus.invasionType eq 'IST001' && crackdownStatus.invasionType eq commonCode.itemCd}" th:text="1"></td>
|
|
||||||
<td th:if="${crackdownStatus.invasionType ne commonCode.itemCd}" th:text="0"></td>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="${crackdownStatus.nll eq 'Y' ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.personDamageCnt ne 0 && crackdownStatus.personDamageAmount ne 0 ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.personDamageCnt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.personDamageAmount}"></td>
|
|
||||||
<td th:text="${crackdownStatus.personDamageDetail}"></td>
|
|
||||||
<td th:text="${crackdownStatus.materialDamageCnt ne 0 && crackdownStatus.materialDamageAmount ne 0 ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.materialDamageAmount}"></td>
|
|
||||||
<td th:text="${crackdownStatus.materialDamageDetail}"></td>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('ATA')}">
|
|
||||||
<td th:if="${crackdownStatus.caseAgency eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${crackdownStatus.caseAgency eq null || crackdownStatus.caseAgency eq ''}">
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CPO')}">
|
|
||||||
<td th:if="${crackdownStatus.crackdownPolice eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${!#strings.contains(crackdownStatus.crackdownPolice, 'CPO')}">
|
|
||||||
<td th:text="${crackdownStatus.crackdownPolice}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CDB')}">
|
|
||||||
<td th:if="${crackdownStatus.crackdownBoat eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${!#strings.contains(crackdownStatus.crackdownBoat, 'CDB')}">
|
|
||||||
<td th:text="${crackdownStatus.crackdownBoat}"></td>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="${crackdownStatus.mmsi}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.boatNameKr}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.tonCnt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionSailor + crackdownStatus.notRestrictionSailor}"></td>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BM')}">
|
|
||||||
<td th:if="${crackdownStatus.fishingBoat.boatMaterial eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${!#strings.contains(crackdownStatus.fishingBoat.boatMaterial, 'BM')}">
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.boatMaterial}"></td>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.boatNnySung}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.boatNnySi}"></td>
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}">
|
|
||||||
<td th:if="${sailor.position eq 'POS001'}" th:text="${sailor.sailorNameKr}"></td>
|
|
||||||
<td th:if="${sailor.position eq 'POS001'}" th:text="${sailor.birthdate}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#lists.size(crackdownStatus.sailorList) == 0}">
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
|
||||||
<td th:if="${crackdownStatus.fishingBoat.fisheryType eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${!#strings.contains(crackdownStatus.fishingBoat.fisheryType, 'FT')}">
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.fisheryType}"></td>
|
|
||||||
</th:block>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.catchFishSpecies}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.catchCnt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.offenseFishSpecies}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.offenseCatchCnt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.offenseQuantity}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.offenseAmount}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.processStatus eq 'PR001' ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.processStatus eq 'PR009' ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.damboPayment ne 0 ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.damboPayment}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.paymentPaymentDt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.damboUnpaidAmount ne 0 ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.damboUnpaidAmount}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.consignmentStartDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.consignmentStartDt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.consignmentEndDt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.evictionDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.directHandoverDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.boatDisposalDt ne null && crackdownStatus.processResult.boatDisposalType eq 'BDT001'? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.boatDisposalDt ne null && crackdownStatus.processResult.boatDisposalType eq 'BDT002'? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.boatDisposalDt ne null && crackdownStatus.processResult.boatDisposalType eq 'BDT003'? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.confiscationDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.returnDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.directHandoverDt}"></td>
|
|
||||||
<td>
|
|
||||||
<span th:text="${crackdownStatus.processResult.handoverSeaPointLat}"> ~ </span>
|
|
||||||
<span th:text="${crackdownStatus.processResult.handoverSeaPointLon}"></span>
|
|
||||||
</td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.handoverBoat}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.middleTakeoverBoat}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionTotal}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionCaptin}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionMate}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionWarden}"></td>
|
|
||||||
<td th:text="${crackdownStatus.restrictionSailor}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.confiscationDt ne null ? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.notRestrictionTotal}"></td>
|
|
||||||
<td th:text="${crackdownStatus.notRestrictionCaptin}"></td>
|
|
||||||
<td th:text="${crackdownStatus.notRestrictionMate}"></td>
|
|
||||||
<td th:text="${crackdownStatus.notRestrictionWarden}"></td>
|
|
||||||
<td th:text="${crackdownStatus.notRestrictionSailor}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.confiscationDt ne null ? 0 : 1}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fieldIvsgtNapoDt ne null? 1 : 0}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fieldIvsgtNapoDt }"></td>
|
|
||||||
<td th:text="${crackdownStatus.fieldIvsgtReleaseDt}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fieldIvsgtTimeTaken}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.pressurizedTimeTaken}"></td>
|
|
||||||
<td th:text="${crackdownStatus.distance}"></td>
|
|
||||||
<td th:text="${crackdownStatus.processResult.warrantReqTakeTime}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.confiscationFrame}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.confiscationWidth}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.confiscationJo}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.confiscationGae}"></td>
|
|
||||||
<td th:text="${crackdownStatus.fishingBoat.confiscationEtc}"></td>
|
|
||||||
</tr>
|
|
||||||
</th:block>
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content">
|
<div class="row justify-content">
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="">관리자마감</button>
|
<button class="btn btn-sm btn-primary col-auto" id="">관리자마감</button>
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="cdsDownExcel">엑셀 다운로드</button>
|
<button class="btn btn-sm btn-primary col-auto" id="crackdownStatusExcelDownBtn">엑셀 다운로드</button>
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="crackdownStatusAddBtn">등록</button>
|
<button class="btn btn-sm btn-primary col-auto" id="crackdownStatusAddBtn">등록</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,17 +29,17 @@
|
||||||
<label class="col-auto col-form-label text-center">NLL</label>
|
<label class="col-auto col-form-label text-center">NLL</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="napoDt" id="napoDt" th:value="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="napoDt" id="napoDt">
|
||||||
<select class="form-select form-select-sm" name="nll">
|
<select class="form-select form-select-sm" name="nll">
|
||||||
<option value="Y" th:selected="${crackdownStatus.nll == 'Y'}">O</option>
|
<option value="Y">O</option>
|
||||||
<option value="N" th:selected="${crackdownStatus.nll == 'N'}">X</option>
|
<option value="N">X</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">위반장소</label>
|
<label class="col-sm-1 col-form-label text-center">위반장소</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" placeholder="위도" name="napoSeaPointLat" th:value="${crackdownStatus.napoSeaPointLat}">
|
<input class="form-control" placeholder="위도" name="napoSeaPointLat">
|
||||||
<input class="form-control" placeholder="경도" name="napoSeaPointLon" th:value="${crackdownStatus.napoSeaPointLon}">
|
<input class="form-control" placeholder="경도" name="napoSeaPointLon">
|
||||||
<input class="form-control" placeholder="상세내용" name="napoSeaPointDetail" th:value="${crackdownStatus.napoSeaPointDetail}">
|
<input class="form-control" placeholder="상세내용" name="napoSeaPointDetail">
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-1">
|
<div class="col-sm-1">
|
||||||
<label class="col-form-label text-center">위반내용</label>
|
<label class="col-form-label text-center">위반내용</label>
|
||||||
|
|
@ -47,7 +47,6 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-2" id="violationDiv">
|
<div class="col-sm-2" id="violationDiv">
|
||||||
<th:block th:if="${#lists.isEmpty(crackdownStatus.violationList)}">
|
<th:block th:if="${#lists.isEmpty(crackdownStatus.violationList)}">
|
||||||
<div class="row">
|
|
||||||
<select class="form-select form-select-sm violation" name="violation">
|
<select class="form-select form-select-sm violation" name="violation">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
||||||
|
|
@ -55,21 +54,18 @@
|
||||||
</th:block>
|
</th:block>
|
||||||
<option value="etc">직접입력</option>
|
<option value="etc">직접입력</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
|
||||||
</th:block>
|
</th:block>
|
||||||
<th:block th:if="${!#lists.isEmpty(crackdownStatus.violationList)}">
|
<th:block th:if="${!#lists.isEmpty(crackdownStatus.violationList)}">
|
||||||
<th:block th:each="violation : ${crackdownStatus.violationList}">
|
<th:block th:each="violation : ${crackdownStatus.violationList}">
|
||||||
<div class="row">
|
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
||||||
<input type="hidden" name="violationKey" th:value="${violation.violationKey}">
|
<input type="hidden" name="violationKey" th:value="${violation.violationKey}">
|
||||||
<select class="form-select form-select-sm violation" name="violation">
|
<select class="form-select form-select-sm violation" name="violation">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
th:selected="${crackdownStatus.violationList != null and commonCode.itemCd eq violation.violation}"></option>
|
th:selected="${crackdownStatus.violationList != null and commonCode.itemCd eq crackdownStatus.violationList.violation}"></option>
|
||||||
<option value="etc">직접입력</option>
|
<option value="etc">직접입력</option>
|
||||||
</th:block>
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</th:block>
|
||||||
</th:block>
|
</th:block>
|
||||||
</th:block>
|
</th:block>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -90,31 +86,31 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="obstrExspdCnt" th:value="${crackdownStatus.obstrExspdCnt}">
|
<input type="number" min="0" class="form-control" name="obstrExspdCnt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">피해인원</label>
|
<label class="col-sm-1 col-form-label text-center">피해인원</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="personDamageCnt" th:value="${crackdownStatus.personDamageCnt}">
|
<input type="number" min="0" class="form-control" name="personDamageCnt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="personDamageAmount" th:value="${crackdownStatus.personDamageAmount}">
|
<input type="number" min="0" class="form-control" name="personDamageAmount">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="personDamageDetail" th:value="${crackdownStatus.personDamageDetail}">
|
<input class="form-control" name="personDamageDetail">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="materialDamageCnt" th:value="${crackdownStatus.materialDamageCnt}">
|
<input type="number" min="0" class="form-control" name="materialDamageCnt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="materialDamageAmount" th:value="${crackdownStatus.materialDamageAmount}">
|
<input type="number" min="0" class="form-control" name="materialDamageAmount">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="materialDamageDetail" th:value="${crackdownStatus.materialDamageDetail}">
|
<input class="form-control" name="materialDamageDetail">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -148,14 +144,14 @@
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CDB')}">
|
<th:block th:each="commonCode:${session.commonCode.get('CDB')}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
th:selected="${commonCode.itemCd eq crackdownStatus.crackdownBoat}"></option>
|
th:selected="${commonCode.itemCd eq crackdownStatus.crackdownPolice}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
<option value="etc">직접입력</option>
|
<option value="etc">직접입력</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">MMSI.NO</label>
|
<label class="col-sm-1 col-form-label text-center">MMSI.NO</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="mmsi" th:value="${crackdownStatus.mmsi}">
|
<input class="form-control" name="mmsi">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -164,11 +160,11 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">선명</label>
|
<label class="col-sm-1 col-form-label text-center">선명</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="boatNameKr" th:value="${crackdownStatus.fishingBoat.boatNameKr}">
|
<input class="form-control" name="boatNameKr">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">톤수</label>
|
<label class="col-sm-1 col-form-label text-center">톤수</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="tonCnt" th:value="${crackdownStatus.fishingBoat.tonCnt}">
|
<input type="number" min="0" class="form-control" name="tonCnt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">선질</label>
|
<label class="col-sm-1 col-form-label text-center">선질</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
|
|
@ -183,45 +179,23 @@
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">선적 성</label>
|
<label class="col-sm-1 col-form-label text-center">선적 성</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="boatNnySung" th:value="${crackdownStatus.fishingBoat.boatNnySung}">
|
<input class="form-control" name="boatNnySung">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">선적 시</label>
|
<label class="col-sm-1 col-form-label text-center">선적 시</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="boatNnySi" th:value="${crackdownStatus.fishingBoat.boatNnySi}">
|
<input class="form-control" name="boatNnyAi">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">선장명</label>
|
<label class="col-sm-1 col-form-label text-center">선장명</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS001')}">
|
|
||||||
<input th:if="${sailor.position eq 'POS001'}" class="form-control" name="sailorNameKr" th:value="${sailor.sailorNameKr}">
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001'].![1]) == null}">
|
|
||||||
<input class="form-control" name="sailorNameKr">
|
<input class="form-control" name="sailorNameKr">
|
||||||
</th:block>
|
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">출생년도</label>
|
<label class="col-sm-1 col-form-label text-center">출생년도</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS001')}">
|
|
||||||
<input th:if="${sailor.position eq 'POS001'}" class="form-control" name="birthdate" id="birthdate" th:value="${#temporals.format(sailor.birthdate, 'yyyy-MM-dd')}">
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001'].![1]) == null}">
|
|
||||||
<input class="form-control" name="birthdate" id="birthdate">
|
<input class="form-control" name="birthdate" id="birthdate">
|
||||||
</th:block>
|
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">선종</label>
|
<label class="col-sm-1 col-form-label text-center">선종</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm" name="fisheryType" id="fisheryType">
|
<input class="form-control" name="fisheryType">
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.fishingBoat ne null && commonCode.itemCd eq crackdownStatus.fishingBoat.fisheryType}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option th:selected="${crackdownStatus.fishingBoat.fisheryType ne null && !#strings.contains(crackdownStatus.fishingBoat.fisheryType, 'FT')}" value="etc">기타</option>
|
|
||||||
</select>
|
|
||||||
<th:block th:if="${crackdownStatus.fishingBoat.fisheryType ne null && !#strings.contains(crackdownStatus.fishingBoat.fisheryType, 'FT')}">
|
|
||||||
<div class="col-auto">
|
|
||||||
<input type="text" class="form-control" name="fisheryTypeEtc" th:value="${crackdownStatus.fishingBoat.fisheryType}">
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -230,11 +204,11 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">어종</label>
|
<label class="col-sm-1 col-form-label text-center">어종</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="catchFishSpecies" th:value="${crackdownStatus.fishingBoat.catchFishSpecies}">
|
<input class="form-control" name="catchFishSpecies">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">수량</label>
|
<label class="col-sm-1 col-form-label text-center">수량</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="catchCnt" th:value="${crackdownStatus.fishingBoat.catchCnt}">
|
<input type="number" min="0" class="form-control" name="catchCnt">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -243,23 +217,23 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">어종</label>
|
<label class="col-sm-1 col-form-label text-center">어종</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="offenseFishSpecies" th:value="${crackdownStatus.fishingBoat.offenseFishSpecies}">
|
<input class="form-control" name="offenseFishSpecies">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">어획량</label>
|
<label class="col-sm-1 col-form-label text-center">어획량</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="offenseCatchCnt" th:value="${crackdownStatus.fishingBoat.offenseCatchCnt}">
|
<input type="number" min="0" class="form-control" name="offenseCatchCnt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">폐기량</label>
|
<label class="col-sm-1 col-form-label text-center">폐기량</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="offenseIllegalWasteQuantity" th:value="${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity}">
|
<input type="number" min="0" class="form-control" name="offenseIllegalWasteQuantity">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">위판량</label>
|
<label class="col-sm-1 col-form-label text-center">위판량</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="offenseQuantity" th:value="${crackdownStatus.fishingBoat.offenseQuantity}">
|
<input type="number" min="0" class="form-control" name="offenseQuantity">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">위판금액</label>
|
<label class="col-sm-1 col-form-label text-center">위판금액</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="offenseAmount" th:value="${crackdownStatus.fishingBoat.offenseAmount}">
|
<input type="number" min="0" class="form-control" name="offenseAmount">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -274,13 +248,8 @@
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
th:selected="${crackdownStatus.processResult ne null && commonCode.itemCd eq crackdownStatus.processResult.processStatus}"></option>
|
th:selected="${crackdownStatus.processResult ne null && commonCode.itemCd eq crackdownStatus.processResult.processStatus}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
<option th:selected="${crackdownStatus.processResult.processStatus ne null && !#strings.contains(crackdownStatus.processResult.processStatus, 'PR')}" value="etc">직접입력</option>
|
<option value="etc">직접입력</option>
|
||||||
</select>
|
</select>
|
||||||
<th:block th:if="${crackdownStatus.processResult.processStatus ne null && !#strings.contains(crackdownStatus.processResult.processStatus, 'PR')}">
|
|
||||||
<div class="col-auto">
|
|
||||||
<input type="text" class="form-control" name="processStatusEtc" th:value="${crackdownStatus.processResult.processStatus}">
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -289,11 +258,11 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">납부액</label>
|
<label class="col-sm-1 col-form-label text-center">납부액</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="damboPayment" th:value="${crackdownStatus.fishingBoat.damboPayment}">
|
<input type="number" min="0" class="form-control" name="damboPayment">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">납부일시</label>
|
<label class="col-sm-1 col-form-label text-center">납부일시</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="paymentPaymentDt" id="paymentPaymentDt" th:value="${#temporals.format(crackdownStatus.fishingBoat.paymentPaymentDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="paymentPaymentDt" id="paymentPaymentDt">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -302,7 +271,7 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">미납액</label>
|
<label class="col-sm-1 col-form-label text-center">미납액</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input type="number" min="0" class="form-control" name="damboUnpaidAmount" th:value="${crackdownStatus.fishingBoat.damboUnpaidAmount}">
|
<input type="number" min="0" class="form-control" name="damboUnpaidAmount">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -311,31 +280,31 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">위탁시작일</label>
|
<label class="col-sm-1 col-form-label text-center">위탁시작일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="consignmentStartDt" id="consignmentStartDt" th:value="${#temporals.format(crackdownStatus.processResult.consignmentStartDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="consignmentStartDt" id="consignmentStartDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">위탁종료일</label>
|
<label class="col-sm-1 col-form-label text-center">위탁종료일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="consignmentEndDt" id="consignmentEndDt" th:value="${#temporals.format(crackdownStatus.processResult.consignmentEndDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="consignmentEndDt" id="consignmentEndDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">퇴거일</label>
|
<label class="col-sm-1 col-form-label text-center">퇴거일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="evictionDt" id="evictionDt" th:value="${#temporals.format(crackdownStatus.processResult.evictionDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="evictionDt" id="evictionDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">환부일</label>
|
<label class="col-sm-1 col-form-label text-center">환부일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="returnDt" id="returnDt" th:value="${#temporals.format(crackdownStatus.processResult.returnDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="returnDt" id="returnDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">몰수확정일</label>
|
<label class="col-sm-1 col-form-label text-center">몰수확정일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationDt" id="confiscationDt" th:value="${#temporals.format(crackdownStatus.processResult.confiscationDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="confiscationDt" id="confiscationDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">폐선일</label>
|
<label class="col-sm-1 col-form-label text-center">폐선일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="boatDisposalDt" id="boatDisposalDt" th:value="${#temporals.format(crackdownStatus.processResult.boatDisposalDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="boatDisposalDt" id="boatDisposalDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">폐선종류</label>
|
<label class="col-sm-1 col-form-label text-center">폐선종류</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm" name="boatDisposalType" th:value="${crackdownStatus.processResult.boatDisposalType}">
|
<select class="form-select form-select-sm" name="boatDisposalType">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BDT')}">
|
<th:block th:each="commonCode:${session.commonCode.get('BDT')}">
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
|
@ -350,21 +319,21 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">직접인계일</label>
|
<label class="col-sm-1 col-form-label text-center">직접인계일</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="directHandoverDt" id="directHandoverDt" th:value="${#temporals.format(crackdownStatus.processResult.directHandoverDt, 'yyyy-MM-dd')}">
|
<input class="form-control" name="directHandoverDt" id="directHandoverDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">해점</label>
|
<label class="col-sm-1 col-form-label text-center">해점</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" placeholder="위도" name="handoverSeaPointLat" th:value="${crackdownStatus.processResult.handoverSeaPointLat}">
|
<input class="form-control" placeholder="경도" name="handoverSeaPointLon">
|
||||||
<input class="form-control" placeholder="경도" name="handoverSeaPointLon" th:value="${crackdownStatus.processResult.handoverSeaPointLon}">
|
<input class="form-control" placeholder="위도" name="handoverSeaPointLat">
|
||||||
<input class="form-control" placeholder="상세내용" name="handoverSeaPointDetail" th:value="${crackdownStatus.processResult.handoverSeaPointDetail}">
|
<input class="form-control" placeholder="상세내용" name="handoverSeaPointDetail">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">인계함정</label>
|
<label class="col-sm-1 col-form-label text-center">인계함정</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="handoverBoat" th:value="${crackdownStatus.processResult.handoverBoat}">
|
<input class="form-control" name="handoverBoat">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">중측</br>인수함정</label>
|
<label class="col-sm-1 col-form-label text-center">중측</br>인수함정</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="middleTakeoverBoat" th:value="${crackdownStatus.processResult.middleTakeoverBoat}">
|
<input class="form-control" name="middleTakeoverBoat">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -375,46 +344,45 @@
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm" name="captin">
|
<select class="form-select form-select-sm" name="captin">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
<option value="Y">구속</option>
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
<option value="N">불구속</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">향해장</label>
|
<label class="col-sm-1 col-form-label text-center">향해장</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm" name="mate">
|
<select class="form-select form-select-sm" name="mate">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
<option value="Y">구속</option>
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
<option value="N">불구속</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">기관장</label>
|
<label class="col-sm-1 col-form-label text-center">기관장</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm" name="warden">
|
<select class="form-select form-select-sm" name="warden">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS003' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
<option value="Y">구속</option>
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS003' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
<option value="N">불구속</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn btn-primary col-auto" id="sailorAddBtn">선원 추가</button>
|
<button type="button" class="btn btn-primary col-auto" id="sailorAddBtn">선원 추가</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row" id="sailorDiv">
|
<div class="mb-3 row" id="sailorDiv">
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS005') || #strings.contains(sailor.position, 'POS006')}">
|
<!--
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<input type="hidden" name="sailorKey" th:value="${sailor.sailorKey}">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선원 이름</label>
|
<label class="col-sm-1 col-form-label text-center">선원 이름</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="sailorNameKr" th:value="${sailor.sailorNameKr}">
|
<input class="form-control" name="sailorNameKr">
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<select class="form-select form-select-sm sailor-list" name="sailor">
|
<select class="form-select form-select-sm sailor-list" name="sailor">
|
||||||
<option value="">선택</option>
|
<option value="">선택</option>
|
||||||
<option value="Y" th:selected="${sailor.isRestriction == 'Y'}">구속</option>
|
<option value="Y">구속</option>
|
||||||
<option value="N" th:selected="${sailor.isRestriction == 'N'}">불구속</option>
|
<option value="N">불구속</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn btn-primary col-auto" id="sailorRemoveBtn">-</button>
|
<button type="button" class="btn btn-primary col-auto" id="sailorRemoveBtn">-</button>
|
||||||
</div>
|
</div>
|
||||||
</th:block>
|
-->
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
현장조사
|
현장조사
|
||||||
|
|
@ -422,15 +390,15 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">나포일시</label>
|
<label class="col-sm-1 col-form-label text-center">나포일시</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="fieldIvsgtNapoDt" id="fieldIvsgtNapoDt" th:value="${#temporals.format(crackdownStatus.fieldIvsgtNapoDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="fieldIvsgtNapoDt" id="fieldIvsgtNapoDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">석방일시</label>
|
<label class="col-sm-1 col-form-label text-center">석방일시</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="fieldIvsgtReleaseDt" id="fieldIvsgtReleaseDt" th:value="${#temporals.format(crackdownStatus.fieldIvsgtReleaseDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="fieldIvsgtReleaseDt" id="fieldIvsgtReleaseDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">소요시간</label>
|
<label class="col-sm-1 col-form-label text-center">소요시간</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="fieldIvsgtTimeTaken" th:value="${#temporals.format(crackdownStatus.fieldIvsgtTimeTaken, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="fieldIvsgtTimeTaken">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -439,19 +407,19 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">압송시작</label>
|
<label class="col-sm-1 col-form-label text-center">압송시작</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="pressurizedStartDt" id="pressurizedStartDt" th:value="${#temporals.format(crackdownStatus.pressurizedStartDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="pressurizedStartDt" id="pressurizedStartDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">압송종료</label>
|
<label class="col-sm-1 col-form-label text-center">압송종료</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="pressurizedEndDt" id="pressurizedEndDt" th:value="${#temporals.format(crackdownStatus.pressurizedEndDt, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="pressurizedEndDt" id="pressurizedEndDt">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">영장청구<br>소요시간</label>
|
<label class="col-sm-1 col-form-label text-center">영장청구<br>소요시간</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="warrantReqTakeTime" th:value="${#temporals.format(crackdownStatus.processResult.warrantReqTakeTime, 'yyyy-MM-dd HH:mm')}">
|
<input class="form-control" name="warrantReqTakeTime" readonly>
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">거리</label>
|
<label class="col-sm-1 col-form-label text-center">거리</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="distance" th:value="${crackdownStatus.distance}">
|
<input class="form-control" name="distance">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -460,23 +428,23 @@
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
<label class="col-sm-1 col-form-label text-center">틀</label>
|
<label class="col-sm-1 col-form-label text-center">틀</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationFrame" th:value="${crackdownStatus.fishingBoat.confiscationFrame}">
|
<input class="form-control" name="confiscationFrame">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">폭</label>
|
<label class="col-sm-1 col-form-label text-center">폭</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationWidth" th:value="${crackdownStatus.fishingBoat.confiscationWidth}">
|
<input class="form-control" name="confiscationWidth">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">조</label>
|
<label class="col-sm-1 col-form-label text-center">조</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationJo" th:value="${crackdownStatus.fishingBoat.confiscationJo}">
|
<input class="form-control" name="confiscationJo">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">개</label>
|
<label class="col-sm-1 col-form-label text-center">개</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationGae" th:value="${crackdownStatus.fishingBoat.confiscationGae}">
|
<input class="form-control" name="confiscationGae">
|
||||||
</div>
|
</div>
|
||||||
<label class="col-sm-1 col-form-label text-center">기타</label>
|
<label class="col-sm-1 col-form-label text-center">기타</label>
|
||||||
<div class="col-sm-2">
|
<div class="col-sm-2">
|
||||||
<input class="form-control" name="confiscationEtc" th:value="${crackdownStatus.fishingBoat.confiscationEtc}">
|
<input class="form-control" name="confiscationEtc">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
||||||
|
|
@ -1,490 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h5 class="modal-title" id="crackdownStatusEditModalLabel" th:text="${crackdownStatus.cdsKey eq null ? '불법조업 외국어선 단속등록' : '불법조업 외국어선 단속수정'}">></h5>
|
|
||||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body" id="cdsEditBody">
|
|
||||||
<form action="#" method="post" id="cdsEditForm">
|
|
||||||
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
|
|
||||||
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
|
|
||||||
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
|
|
||||||
<input type="hidden" name="cdsKey" th:value="${crackdownStatus.cdsKey}">
|
|
||||||
<th:block th:if="${crackdownStatus.fishingBoat ne null}">
|
|
||||||
<input type="hidden" name="fbKey" th:value="${crackdownStatus.fishingBoat.fbKey}">
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${crackdownStatus.processResult ne null}">
|
|
||||||
<input type="hidden" name="prKey" th:value="${crackdownStatus.processResult.prKey}">
|
|
||||||
</th:block>
|
|
||||||
<input type="hidden" name="wrtOrgan" th:value="${crackdownStatus.wrtOrgan}">
|
|
||||||
<input type="hidden" name="wrtNm" th:value="${crackdownStatus.wrtNm}">
|
|
||||||
<input type="hidden" name="wrtDt" th:value="${#temporals.format(crackdownStatus.wrtDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
<input type="hidden" id="saveYn" name="saveYn">
|
|
||||||
<div class="mb-3 row">
|
|
||||||
나포정보
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<div class="col-sm-1">
|
|
||||||
<label class="col-auto col-form-label text-center">나포일시</label>
|
|
||||||
<label class="col-auto col-form-label text-center">NLL</label>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="napoDt" id="napoDt" th:value="${#temporals.format(crackdownStatus.napoDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
<select class="form-select form-select-sm" name="nll">
|
|
||||||
<option value="Y" th:selected="${crackdownStatus.nll == 'Y'}">O</option>
|
|
||||||
<option value="N" th:selected="${crackdownStatus.nll == 'N'}">X</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">위반장소</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" placeholder="위도" name="napoSeaPointLat" th:value="${crackdownStatus.napoSeaPointLat}">
|
|
||||||
<input class="form-control" placeholder="경도" name="napoSeaPointLon" th:value="${crackdownStatus.napoSeaPointLon}">
|
|
||||||
<input class="form-control" placeholder="상세내용" name="napoSeaPointDetail" th:value="${crackdownStatus.napoSeaPointDetail}">
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-1">
|
|
||||||
<label class="col-form-label text-center">위반내용</label>
|
|
||||||
<button type="button" class="btn btn-primary col-auto" id="violationAddBtn">+</button>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-2" id="violationDiv">
|
|
||||||
<th:block th:if="${#lists.isEmpty(crackdownStatus.violationList)}">
|
|
||||||
<div class="row">
|
|
||||||
<select class="form-select form-select-sm violation" name="violation">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option value="etc">직접입력</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${!#lists.isEmpty(crackdownStatus.violationList)}">
|
|
||||||
<th:block th:each="violation : ${crackdownStatus.violationList}">
|
|
||||||
<div class="row">
|
|
||||||
<input type="hidden" name="violationKey" th:value="${violation.violationKey}">
|
|
||||||
<select class="form-select form-select-sm violation" name="violation">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('VT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.violationList != null and commonCode.itemCd eq violation.violation}"></option>
|
|
||||||
<option value="etc">직접입력</option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">침범유형</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="invasionType">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('IST')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${commonCode.itemCd eq crackdownStatus.invasionType}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
특수공무집행방해
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="obstrExspdCnt" th:value="${crackdownStatus.obstrExspdCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">피해인원</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="personDamageCnt" th:value="${crackdownStatus.personDamageCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="personDamageAmount" th:value="${crackdownStatus.personDamageAmount}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="personDamageDetail" th:value="${crackdownStatus.personDamageDetail}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">발생건수</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="materialDamageCnt" th:value="${crackdownStatus.materialDamageCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">피해액</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="materialDamageAmount" th:value="${crackdownStatus.materialDamageAmount}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">상세내용</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="materialDamageDetail" th:value="${crackdownStatus.materialDamageDetail}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
검거기관
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">사건담당 기관</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="caseAgency">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('ATA')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${commonCode.itemCd eq crackdownStatus.caseAgency}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">단속<br>경찰서</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="crackdownPolice" id="crackdownPolice">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CPO')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${commonCode.itemCd eq crackdownStatus.crackdownPolice}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option value="etc">직접입력</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">단속함정</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="crackdownBoat" id="crackdownBoat">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('CDB')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${commonCode.itemCd eq crackdownStatus.crackdownBoat}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option value="etc">직접입력</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">MMSI.NO</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="mmsi" th:value="${crackdownStatus.mmsi}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
선박제원
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선명</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="boatNameKr" th:value="${crackdownStatus.fishingBoat.boatNameKr}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">톤수</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="tonCnt" th:value="${crackdownStatus.fishingBoat.tonCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선질</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="boatMaterial" id="boatMaterial">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BM')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.fishingBoat ne null && commonCode.itemCd eq crackdownStatus.fishingBoat.boatMaterial}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option value="etc">직접입력</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선적 성</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="boatNnySung" th:value="${crackdownStatus.fishingBoat.boatNnySung}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선적 시</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="boatNnySi" th:value="${crackdownStatus.fishingBoat.boatNnySi}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선장명</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS001')}">
|
|
||||||
<input th:if="${sailor.position eq 'POS001'}" class="form-control" name="sailorNameKr" th:value="${sailor.sailorNameKr}">
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001'].![1]) == null}">
|
|
||||||
<input class="form-control" name="sailorNameKr">
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">출생년도</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS001')}">
|
|
||||||
<input th:if="${sailor.position eq 'POS001'}" class="form-control" name="birthdate" id="birthdate" th:value="${#temporals.format(sailor.birthdate, 'yyyy-MM-dd')}">
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001'].![1]) == null}">
|
|
||||||
<input class="form-control" name="birthdate" id="birthdate">
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선종</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="fisheryType" id="fisheryType">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('FT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.fishingBoat ne null && commonCode.itemCd eq crackdownStatus.fishingBoat.fisheryType}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option th:selected="${crackdownStatus.fishingBoat.fisheryType ne null && !#strings.contains(crackdownStatus.fishingBoat.fisheryType, 'FT')}" value="etc">기타</option>
|
|
||||||
</select>
|
|
||||||
<th:block th:if="${crackdownStatus.fishingBoat.fisheryType ne null && !#strings.contains(crackdownStatus.fishingBoat.fisheryType, 'FT')}">
|
|
||||||
<div class="col-auto">
|
|
||||||
<input type="text" class="form-control" name="fisheryTypeEtc" th:value="${crackdownStatus.fishingBoat.fisheryType}">
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
어획물 축소기재
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">어종</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="catchFishSpecies" th:value="${crackdownStatus.fishingBoat.catchFishSpecies}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">수량</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="catchCnt" th:value="${crackdownStatus.fishingBoat.catchCnt}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
범칙물
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">어종</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="offenseFishSpecies" th:value="${crackdownStatus.fishingBoat.offenseFishSpecies}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">어획량</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="offenseCatchCnt" th:value="${crackdownStatus.fishingBoat.offenseCatchCnt}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">폐기량</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="offenseIllegalWasteQuantity" th:value="${crackdownStatus.fishingBoat.offenseIllegalWasteQuantity}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">위판량</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="offenseQuantity" th:value="${crackdownStatus.fishingBoat.offenseQuantity}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">위판금액</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="offenseAmount" th:value="${crackdownStatus.fishingBoat.offenseAmount}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
처리결과
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">처리현황</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="processStatus" id="processStatus">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('PR')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.processResult ne null && commonCode.itemCd eq crackdownStatus.processResult.processStatus}"></option>
|
|
||||||
</th:block>
|
|
||||||
<option th:selected="${crackdownStatus.processResult.processStatus ne null && !#strings.contains(crackdownStatus.processResult.processStatus, 'PR')}" value="etc">직접입력</option>
|
|
||||||
</select>
|
|
||||||
<th:block th:if="${crackdownStatus.processResult.processStatus ne null && !#strings.contains(crackdownStatus.processResult.processStatus, 'PR')}">
|
|
||||||
<div class="col-auto">
|
|
||||||
<input type="text" class="form-control" name="processStatusEtc" th:value="${crackdownStatus.processResult.processStatus}">
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
담보금 납부
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">납부액</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="damboPayment" th:value="${crackdownStatus.fishingBoat.damboPayment}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">납부일시</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="paymentPaymentDt" id="paymentPaymentDt" th:value="${#temporals.format(crackdownStatus.fishingBoat.paymentPaymentDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
담보금 미납
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">미납액</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input type="number" min="0" class="form-control" name="damboUnpaidAmount" th:value="${crackdownStatus.fishingBoat.damboUnpaidAmount}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
선박처리
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">위탁시작일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="consignmentStartDt" id="consignmentStartDt" th:value="${#temporals.format(crackdownStatus.processResult.consignmentStartDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">위탁종료일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="consignmentEndDt" id="consignmentEndDt" th:value="${#temporals.format(crackdownStatus.processResult.consignmentEndDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">퇴거일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="evictionDt" id="evictionDt" th:value="${#temporals.format(crackdownStatus.processResult.evictionDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">환부일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="returnDt" id="returnDt" th:value="${#temporals.format(crackdownStatus.processResult.returnDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">몰수확정일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationDt" id="confiscationDt" th:value="${#temporals.format(crackdownStatus.processResult.confiscationDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">폐선일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="boatDisposalDt" id="boatDisposalDt" th:value="${#temporals.format(crackdownStatus.processResult.boatDisposalDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">폐선종류</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="boatDisposalType" th:value="${crackdownStatus.processResult.boatDisposalType}">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('BDT')}">
|
|
||||||
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
|
||||||
th:selected="${crackdownStatus.processResult ne null && commonCode.itemCd eq crackdownStatus.processResult.boatDisposalType}"></option>
|
|
||||||
</th:block>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
직접인계
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">직접인계일</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="directHandoverDt" id="directHandoverDt" th:value="${#temporals.format(crackdownStatus.processResult.directHandoverDt, 'yyyy-MM-dd')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">해점</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" placeholder="위도" name="handoverSeaPointLat" th:value="${crackdownStatus.processResult.handoverSeaPointLat}">
|
|
||||||
<input class="form-control" placeholder="경도" name="handoverSeaPointLon" th:value="${crackdownStatus.processResult.handoverSeaPointLon}">
|
|
||||||
<input class="form-control" placeholder="상세내용" name="handoverSeaPointDetail" th:value="${crackdownStatus.processResult.handoverSeaPointDetail}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">인계함정</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="handoverBoat" th:value="${crackdownStatus.processResult.handoverBoat}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">중측</br>인수함정</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="middleTakeoverBoat" th:value="${crackdownStatus.processResult.middleTakeoverBoat}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
구속/ 불구속
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선장</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="captin">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">향해장</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="mate">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">기관장</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm" name="warden">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<option value="Y" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS003' && isRestriction == 'Y'].![1]) != null}">구속</option>
|
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS003' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<button type="button" class="btn btn-primary col-auto" id="sailorAddBtn">선원 추가</button>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row" id="sailorDiv">
|
|
||||||
<th:block th:each="sailor:${crackdownStatus.sailorList}" th:if="${#strings.contains(sailor.position, 'POS005') || #strings.contains(sailor.position, 'POS006')}">
|
|
||||||
<div class="row">
|
|
||||||
<input type="hidden" name="sailorKey" th:value="${sailor.sailorKey}">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">선원 이름</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="sailorNameKr" th:value="${sailor.sailorNameKr}">
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<select class="form-select form-select-sm sailor-list" name="sailor">
|
|
||||||
<option value="">선택</option>
|
|
||||||
<option value="Y" th:selected="${sailor.isRestriction == 'Y'}">구속</option>
|
|
||||||
<option value="N" th:selected="${sailor.isRestriction == 'N'}">불구속</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<button type="button" class="btn btn-primary col-auto" id="sailorRemoveBtn">-</button>
|
|
||||||
</div>
|
|
||||||
</th:block>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
현장조사
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">나포일시</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="fieldIvsgtNapoDt" id="fieldIvsgtNapoDt" th:value="${#temporals.format(crackdownStatus.fieldIvsgtNapoDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">석방일시</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="fieldIvsgtReleaseDt" id="fieldIvsgtReleaseDt" th:value="${#temporals.format(crackdownStatus.fieldIvsgtReleaseDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">소요시간</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="fieldIvsgtTimeTaken" th:value="${#temporals.format(crackdownStatus.fieldIvsgtTimeTaken, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
압송
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">압송시작</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="pressurizedStartDt" id="pressurizedStartDt" th:value="${#temporals.format(crackdownStatus.pressurizedStartDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">압송종료</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="pressurizedEndDt" id="pressurizedEndDt" th:value="${#temporals.format(crackdownStatus.pressurizedEndDt, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">영장청구<br>소요시간</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="warrantReqTakeTime" th:value="${#temporals.format(crackdownStatus.processResult.warrantReqTakeTime, 'yyyy-MM-dd HH:mm')}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">거리</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="distance" th:value="${crackdownStatus.distance}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
압수어구
|
|
||||||
</div>
|
|
||||||
<div class="mb-3 row">
|
|
||||||
<label class="col-sm-1 col-form-label text-center">틀</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationFrame" th:value="${crackdownStatus.fishingBoat.confiscationFrame}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">폭</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationWidth" th:value="${crackdownStatus.fishingBoat.confiscationWidth}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">조</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationJo" th:value="${crackdownStatus.fishingBoat.confiscationJo}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">개</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationGae" th:value="${crackdownStatus.fishingBoat.confiscationGae}">
|
|
||||||
</div>
|
|
||||||
<label class="col-sm-1 col-form-label text-center">기타</label>
|
|
||||||
<div class="col-sm-2">
|
|
||||||
<input class="form-control" name="confiscationEtc" th:value="${crackdownStatus.fishingBoat.confiscationEtc}">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<th:block th:if="${userSeq eq crackdownStatus.wrtUserSeq or accessAuth eq 'ACC003'}"><!--작성자일 경우 수정 허용--><!--관리자일 경우 수정 허용-->
|
|
||||||
<button type="button" class="btn btn-warning" id="cdsEditBtn">수정</button>
|
|
||||||
</th:block>
|
|
||||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">닫기</button>
|
|
||||||
</div>
|
|
||||||
</html>
|
|
||||||
|
|
@ -12,8 +12,6 @@
|
||||||
<link rel="stylesheet" th:href="@{/img/bootstrap-icons-1.9.1/bootstrap-icons.css}">
|
<link rel="stylesheet" th:href="@{/img/bootstrap-icons-1.9.1/bootstrap-icons.css}">
|
||||||
<!--bootstrap-datepicker-->
|
<!--bootstrap-datepicker-->
|
||||||
<link rel="stylesheet" th:href="@{/vendor/bootstrap-datepicker-1.9.0-dist/css/bootstrap-datepicker.min.css}">
|
<link rel="stylesheet" th:href="@{/vendor/bootstrap-datepicker-1.9.0-dist/css/bootstrap-datepicker.min.css}">
|
||||||
<!--datetimepicker-->
|
|
||||||
<link rel="stylesheet" th:href="@{/vendor/datetimepicker/css/datetimepicker.css}">
|
|
||||||
<!--summernote-->
|
<!--summernote-->
|
||||||
<link rel="stylesheet" th:href="@{/vendor/summernote-0.8.18-dist/summernote-lite.min.css}">
|
<link rel="stylesheet" th:href="@{/vendor/summernote-0.8.18-dist/summernote-lite.min.css}">
|
||||||
|
|
||||||
|
|
@ -28,9 +26,6 @@
|
||||||
<!--bootstrap-datepicker-->
|
<!--bootstrap-datepicker-->
|
||||||
<script type="text/javascript" th:src="@{/vendor/bootstrap-datepicker-1.9.0-dist/js/bootstrap-datepicker.min.js}"></script>
|
<script type="text/javascript" th:src="@{/vendor/bootstrap-datepicker-1.9.0-dist/js/bootstrap-datepicker.min.js}"></script>
|
||||||
<script type="text/javascript" th:src="@{/vendor/bootstrap-datepicker-1.9.0-dist/locales/bootstrap-datepicker.ko.min.js}"></script>
|
<script type="text/javascript" th:src="@{/vendor/bootstrap-datepicker-1.9.0-dist/locales/bootstrap-datepicker.ko.min.js}"></script>
|
||||||
<!--datetimepicker-->
|
|
||||||
<script type="text/javascript" th:src="@{/vendor/datetimepicker/js/datetimepicker.full.min.js}"></script>
|
|
||||||
<script type="text/javascript" th:src="@{/vendor/datetimepicker/js/datetimepicker.js}"></script>
|
|
||||||
<!--summernote-->
|
<!--summernote-->
|
||||||
<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>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue