단속현황,처리현황,선원세부현황 검색필터 추가
parent
408c7a13f3
commit
c49ed9bd87
|
|
@ -40,7 +40,6 @@ public class CrackdownStatusController {
|
||||||
|
|
||||||
mav.addObject("accessAuth", accessAuth);
|
mav.addObject("accessAuth", accessAuth);
|
||||||
|
|
||||||
crackdownStatus.setQueryInfo();
|
|
||||||
List<CrackdownStatus> crackdownStatusList = crackdownStatusService.selectCrackdownStatusList(crackdownStatus);
|
List<CrackdownStatus> crackdownStatusList = crackdownStatusService.selectCrackdownStatusList(crackdownStatus);
|
||||||
|
|
||||||
for (CrackdownStatus cds:crackdownStatusList) {
|
for (CrackdownStatus cds:crackdownStatusList) {
|
||||||
|
|
@ -51,8 +50,6 @@ public class CrackdownStatusController {
|
||||||
}
|
}
|
||||||
|
|
||||||
mav.addObject("crackdownStatusList", crackdownStatusList);
|
mav.addObject("crackdownStatusList", crackdownStatusList);
|
||||||
crackdownStatus.setContentCnt(crackdownStatusService.selectCrackdownStatusListCnt(crackdownStatus));
|
|
||||||
crackdownStatus.setPaginationInfo();
|
|
||||||
mav.addObject("searchParams", crackdownStatus);
|
mav.addObject("searchParams", crackdownStatus);
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,8 +47,6 @@ public class ProcessResultController {
|
||||||
}
|
}
|
||||||
|
|
||||||
mav.addObject("processResultList", processResultList);
|
mav.addObject("processResultList", processResultList);
|
||||||
processResult.setContentCnt(processResultService.selectProcessResultListCnt(processResult));
|
|
||||||
processResult.setPaginationInfo();
|
|
||||||
mav.addObject("searchParams", processResult);
|
mav.addObject("searchParams", processResult);
|
||||||
return mav;
|
return mav;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,6 @@ public class SailorController {
|
||||||
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/sailor").get(0).getAccessAuth();
|
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/faStatistics/sailor").get(0).getAccessAuth();
|
||||||
|
|
||||||
mav.addObject("accessAuth", accessAuth);
|
mav.addObject("accessAuth", accessAuth);
|
||||||
|
|
||||||
List<Sailor> sailorList = sailorService.selectSailorList(sailor);
|
List<Sailor> sailorList = sailorService.selectSailorList(sailor);
|
||||||
|
|
||||||
for (Sailor s:sailorList) {
|
for (Sailor s:sailorList) {
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,11 @@ import lombok.NoArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import org.hibernate.annotations.DynamicInsert;
|
import org.hibernate.annotations.DynamicInsert;
|
||||||
import org.hibernate.annotations.DynamicUpdate;
|
import org.hibernate.annotations.DynamicUpdate;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
|
|
@ -76,4 +79,127 @@ public class CrackdownStatus extends CrackdownStatusBaseEntity {
|
||||||
private List<Integer> violationDeleteKeyList;
|
private List<Integer> violationDeleteKeyList;
|
||||||
@Transient
|
@Transient
|
||||||
private List<Integer> sailorDeleteKeyList;
|
private List<Integer> sailorDeleteKeyList;
|
||||||
|
|
||||||
|
@Transient
|
||||||
|
private String year;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate napoDate;
|
||||||
|
@Transient
|
||||||
|
private String violation;
|
||||||
|
@Transient
|
||||||
|
private String boatNameKr;
|
||||||
|
@Transient
|
||||||
|
private Integer tonStartCnt;
|
||||||
|
@Transient
|
||||||
|
private Integer tonEndCnt;
|
||||||
|
@Transient
|
||||||
|
private String boatMaterial;
|
||||||
|
@Transient
|
||||||
|
private String boatNnySung;
|
||||||
|
@Transient
|
||||||
|
private String boatNnySi;
|
||||||
|
@Transient
|
||||||
|
private String sailorNameKr;
|
||||||
|
@Transient
|
||||||
|
private String fisheryType;
|
||||||
|
@Transient
|
||||||
|
private String catchFishSpecies;
|
||||||
|
@Transient
|
||||||
|
private String catchCnt;
|
||||||
|
@Transient
|
||||||
|
private String offenseFishSpecies;
|
||||||
|
@Transient
|
||||||
|
private String offenseCatchCnt;
|
||||||
|
@Transient
|
||||||
|
private String offenseIllegalWasteQuantity;
|
||||||
|
@Transient
|
||||||
|
private String offenseQuantity;
|
||||||
|
@Transient
|
||||||
|
private String offenseAmount;
|
||||||
|
@Transient
|
||||||
|
private String processStatus;
|
||||||
|
@Transient
|
||||||
|
private String damboPayment;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate paymentPaymentDate;
|
||||||
|
@Transient
|
||||||
|
private Integer damboUnpaidAmount;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate consignmentStartDate;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate consignmentEndDate;
|
||||||
|
/*@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate evictionDt;*/
|
||||||
|
@Transient
|
||||||
|
private String isEvictionDt;
|
||||||
|
/*@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate returnDt;*/
|
||||||
|
@Transient
|
||||||
|
private String isReturnDt;
|
||||||
|
/*@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate confiscationDt;*/
|
||||||
|
@Transient
|
||||||
|
private String isConfiscationDt;
|
||||||
|
@Transient
|
||||||
|
private String isConsignmentStartDt;
|
||||||
|
@Transient
|
||||||
|
private String isDamboUnpaidAmount;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate boatDisposalDate;
|
||||||
|
@Transient
|
||||||
|
private String boatDisposalType;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate directHandoverDate;
|
||||||
|
@Transient
|
||||||
|
private String isDirectHandoverDt;
|
||||||
|
@Transient
|
||||||
|
private String handoverSeaPointLat;
|
||||||
|
@Transient
|
||||||
|
private String handoverSeaPointLon;
|
||||||
|
@Transient
|
||||||
|
private String handoverSeaPointDetail;
|
||||||
|
@Transient
|
||||||
|
private String handoverBoat;
|
||||||
|
@Transient
|
||||||
|
private String middleTakeoverBoat;
|
||||||
|
@Transient
|
||||||
|
private String captin;
|
||||||
|
@Transient
|
||||||
|
private String mate;
|
||||||
|
@Transient
|
||||||
|
private String warden;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate fieldIvsgtNapoDate;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate fieldIvsgtReleaseDate;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate pressurizedStartDate;
|
||||||
|
@Transient
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private LocalDate pressurizedEndDate;
|
||||||
|
@Transient
|
||||||
|
private String distance;
|
||||||
|
@Transient
|
||||||
|
private String confiscationFrame;
|
||||||
|
@Transient
|
||||||
|
private String confiscationWidth;
|
||||||
|
@Transient
|
||||||
|
private String confiscationJo;
|
||||||
|
@Transient
|
||||||
|
private String confiscationGae;
|
||||||
|
@Transient
|
||||||
|
private String confiscationEtc;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -48,4 +48,13 @@ public class ProcessResult extends ProcessResultBaseEntity {
|
||||||
private List<CrackdownStatus> crackdownStatusList;
|
private List<CrackdownStatus> crackdownStatusList;
|
||||||
@Transient
|
@Transient
|
||||||
private List<FishingBoat> fishingBoatList;
|
private List<FishingBoat> fishingBoatList;
|
||||||
|
|
||||||
|
@Transient
|
||||||
|
private String caseNum;
|
||||||
|
@Transient
|
||||||
|
private String crackdownPolice;
|
||||||
|
@Transient
|
||||||
|
private String year;
|
||||||
|
@Transient
|
||||||
|
private String violation;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,8 @@ import org.hibernate.annotations.DynamicInsert;
|
||||||
import org.hibernate.annotations.DynamicUpdate;
|
import org.hibernate.annotations.DynamicUpdate;
|
||||||
|
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
|
|
@ -39,4 +41,15 @@ public class Sailor extends SailorBaseEntity {
|
||||||
private List<FishingBoat> fishingBoatList;
|
private List<FishingBoat> fishingBoatList;
|
||||||
@Transient
|
@Transient
|
||||||
private List<Violation> violationList;
|
private List<Violation> violationList;
|
||||||
|
|
||||||
|
@Transient
|
||||||
|
private String year;
|
||||||
|
@Transient
|
||||||
|
private String crackdownPolice;
|
||||||
|
@Transient
|
||||||
|
private String crackdownBoat;
|
||||||
|
@Transient
|
||||||
|
private String boatNameKr;
|
||||||
|
@Transient
|
||||||
|
private LocalDateTime napoDt;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,12 +6,265 @@
|
||||||
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.CrackdownStatusMapper">
|
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.CrackdownStatusMapper">
|
||||||
<sql id="selectCrackdownStatusListWhere">
|
<sql id="selectCrackdownStatusListWhere">
|
||||||
<where>
|
<where>
|
||||||
|
<if test='year != null and year != ""'>
|
||||||
|
And EXTRACT(YEAR FROM pr.wrt_dt) = EXTRACT(YEAR FROM CAST(#{year} AS DATE)::TIMESTAMP)
|
||||||
|
</if>
|
||||||
|
<if test='caseNum != null and caseNum != ""'>
|
||||||
|
AND caseNum = #{caseNum}
|
||||||
|
</if>
|
||||||
|
<if test='nll != null and nll != ""'>
|
||||||
|
AND nll = #{nll}
|
||||||
|
</if>
|
||||||
|
<if test='napoDate != null'>
|
||||||
|
AND napo_dt::DATE = #{napoDate}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='violation != null and violation != ""'>
|
||||||
|
AND violation = #{violation}
|
||||||
|
</if>
|
||||||
|
<if test='invasionType != null and invasionType != ""'>
|
||||||
|
AND invasion_type = #{invasionType}
|
||||||
|
</if>
|
||||||
|
<if test='napoSeaPointDetail != null and napoSeaPointDetail != ""'>
|
||||||
|
AND (
|
||||||
|
napo_sea_point_detail LIKE CONCAT('%', #{napoSeaPointDetail}, '%')
|
||||||
|
OR napo_sea_point_lon LIKE CONCAT('%', #{napoSeaPointDetail}, '%')
|
||||||
|
OR napo_sea_point_lat LIKE CONCAT('%', #{napoSeaPointDetail}, '%')
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='obstrExspdCnt != null and obstrExspdCnt != ""'>
|
||||||
|
AND obstr_exspd_cnt = #{obstrExspdCnt}
|
||||||
|
</if>
|
||||||
|
<if test='personDamageCnt != null and personDamageCnt != ""'>
|
||||||
|
AND person_damage_cnt = #{personDamageCnt}
|
||||||
|
</if>
|
||||||
|
<if test='personDamageAmount != null and personDamageAmount != ""'>
|
||||||
|
AND person_damage_amount = #{personDamageAmount}
|
||||||
|
</if>
|
||||||
|
<if test='personDamageDetail != null and personDamageDetail != ""'>
|
||||||
|
AND person_damage_detail LIKE CONCAT('%', #{personDamageDetail}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='materialDamageCnt != null and materialDamageCnt != ""'>
|
||||||
|
AND material_damage_cnt = #{materialDamageCnt}
|
||||||
|
</if>
|
||||||
|
<if test='materialDamageAmount != null and materialDamageAmount != ""'>
|
||||||
|
AND material_damage_amount = #{materialDamageAmount}
|
||||||
|
</if>
|
||||||
|
<if test='materialDamageDetail != null and materialDamageDetail != ""'>
|
||||||
|
AND material_damage_detail LIKE CONCAT('%', #{materialDamageDetail}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='caseAgency != null and caseAgency != ""'>
|
||||||
|
AND case_agency = #{caseAgency}
|
||||||
|
</if>
|
||||||
|
<if test='crackdownPolice != null and crackdownPolice != ""'>
|
||||||
|
AND crackdown_police = #{crackdownPolice}
|
||||||
|
</if>
|
||||||
|
<if test='crackdownBoat != null and crackdownBoat != ""'>
|
||||||
|
AND crackdown_boat = #{crackdownBoat}
|
||||||
|
</if>
|
||||||
|
<if test='mmsi != null and mmsi != ""'>
|
||||||
|
AND mmsi LIKE CONCAT('%', #{mmsi}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='boatNameKr != null and boatNameKr != ""'>
|
||||||
|
AND boat_name_kr LIKE CONCAT('%', #{boatNameKr}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='tonStartCnt != null and tonStartCnt != ""'>
|
||||||
|
AND ton_cnt <![CDATA[>=]]> #{tonStartCnt}
|
||||||
|
</if>
|
||||||
|
<if test='tonEndCnt != null and tonEndCnt != ""'>
|
||||||
|
AND ton_cnt <![CDATA[<=]]> #{tonEndCnt}
|
||||||
|
</if>
|
||||||
|
<if test='boatMaterial != null and boatMaterial != ""'>
|
||||||
|
AND boat_material = #{boatMaterial}
|
||||||
|
</if>
|
||||||
|
<if test='boatNnySung != null and boatNnySung != ""'>
|
||||||
|
AND boat_nny_sung LIKE CONCAT('%', #{boatNnySung}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='boatNnySi != null and boatNnySi != ""'>
|
||||||
|
AND boat_nny_si LIKE CONCAT('%', #{boatNnySi}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='sailorNameKr != null and sailorNameKr != ""'>
|
||||||
|
AND sailor_name_kr LIKE CONCAT('%', #{sailorNameKr}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='fisheryType != null and fisheryType != ""'>
|
||||||
|
AND fishery_type = #{fisheryType}
|
||||||
|
</if>
|
||||||
|
<if test='catchFishSpecies != null and catchFishSpecies != ""'>
|
||||||
|
AND catch_fish_species LIKE CONCAT('%', #{catchFishSpecies}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='catchCnt != null and catchCnt != ""'>
|
||||||
|
AND catch_cnt = #{catchCnt}
|
||||||
|
</if>
|
||||||
|
<if test='offenseFishSpecies != null and offenseFishSpecies != ""'>
|
||||||
|
AND offense_fish_species LIKE CONCAT('%', #{offenseFishSpecies}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='offenseCatchCnt != null and offenseCatchCnt != ""'>
|
||||||
|
AND offense_catch_cnt = #{offenseCatchCnt}
|
||||||
|
</if>
|
||||||
|
<if test='offenseIllegalWasteQuantity != null and offenseIllegalWasteQuantity != ""'>
|
||||||
|
AND offense_illegal_waste_quantity = #{offenseIllegalWasteQuantity}
|
||||||
|
</if>
|
||||||
|
<if test='offenseQuantity != null and offenseQuantity != ""'>
|
||||||
|
AND offense_quantity = #{offenseQuantity}
|
||||||
|
</if>
|
||||||
|
<if test='offenseAmount != null and offenseAmount != ""'>
|
||||||
|
AND offense_amount = #{offenseAmount}
|
||||||
|
</if>
|
||||||
|
<if test='processStatus != null and processStatus != ""'>
|
||||||
|
AND process_status = #{processStatus}
|
||||||
|
</if>
|
||||||
|
<if test='damboPayment != null and damboPayment != ""'>
|
||||||
|
AND dambo_payment = #{damboPayment}
|
||||||
|
</if>
|
||||||
|
<if test='paymentPaymentDate != null'>
|
||||||
|
AND payment_payment_dt::DATE = #{paymentPaymentDate}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='damboUnpaidAmount != null and damboUnpaidAmount != ""'>
|
||||||
|
AND dambo_unpaid_amount = #{damboUnpaidAmount}
|
||||||
|
</if>
|
||||||
|
<if test='isDamboUnpaidAmount != null and isDamboUnpaidAmount != ""'>
|
||||||
|
<if test='isDamboUnpaidAmount == "Y"'>
|
||||||
|
AND (
|
||||||
|
dambo_unpaid_amount IS NOT NULL
|
||||||
|
AND dambo_unpaid_amount > 0
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='isDamboUnpaidAmount == "N"'>
|
||||||
|
AND (
|
||||||
|
direct_handover_dt IS NULL
|
||||||
|
OR dambo_unpaid_amount = 0
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<if test='isDirectHandoverDt != null and isDirectHandoverDt != ""'>
|
||||||
|
<if test='isDirectHandoverDt == "Y"'>
|
||||||
|
AND direct_handover_dt IS NOT NULL
|
||||||
|
</if>
|
||||||
|
<if test='isDirectHandoverDt == "N"'>
|
||||||
|
AND direct_handover_dt IS NULL
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<!--<if test='evictionDt != null'>
|
||||||
|
AND eviction_dt = #{evictionDt}::DATE
|
||||||
|
</if>-->
|
||||||
|
<if test='isEvictionDt != null and isEvictionDt != ""'>
|
||||||
|
<if test='isEvictionDt == "Y"'>
|
||||||
|
AND eviction_dt IS NOT NULL
|
||||||
|
</if>
|
||||||
|
<if test='isEvictionDt == "N"'>
|
||||||
|
AND eviction_dt IS NULL
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<!--<if test='returnDt != null'>
|
||||||
|
AND return_dt = #{returnDt}::DATE
|
||||||
|
</if>-->
|
||||||
|
<if test='isReturnDt != null and isReturnDt != ""'>
|
||||||
|
<if test='isReturnDt == "Y"'>
|
||||||
|
AND return_dt IS NOT NULL
|
||||||
|
</if>
|
||||||
|
<if test='isReturnDt == "N"'>
|
||||||
|
AND return_dt IS NULL
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<if test='consignmentStartDate != null'>
|
||||||
|
AND consignment_start_dt = #{consignmentStartDate}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='consignmentEndDate != null'>
|
||||||
|
AND consignment_end_dt = #{consignmentEndDate}::DATE
|
||||||
|
</if>
|
||||||
|
<!--<if test='confiscationDt != null'>
|
||||||
|
AND confiscation_dt = #{confiscationDt}::DATE
|
||||||
|
</if>-->
|
||||||
|
<if test='isConfiscationDt != null and isConfiscationDt != ""'>
|
||||||
|
<if test='isConfiscationDt == "Y"'>
|
||||||
|
AND confiscation_dt IS NOT NULL
|
||||||
|
</if>
|
||||||
|
<if test='isConfiscationDt == "N"'>
|
||||||
|
AND confiscation_dt IS NULL
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<if test='isConsignmentStartDt != null and isConsignmentStartDt != ""'>
|
||||||
|
<if test='isConsignmentStartDt == "Y"'>
|
||||||
|
AND consignment_start_dt IS NOT NULL
|
||||||
|
</if>
|
||||||
|
<if test='isConsignmentStartDt == "N"'>
|
||||||
|
AND consignment_start_dt IS NULL
|
||||||
|
</if>
|
||||||
|
</if>
|
||||||
|
<!--<if test='isBoatDisposal != null'>
|
||||||
|
AND boat_disposal_dt = #{boatDisposalDt}::DATE
|
||||||
|
</if>-->
|
||||||
|
<if test='boatDisposalType != null and boatDisposalType != ""'>
|
||||||
|
AND boat_disposal_type = #{boatDisposalType}
|
||||||
|
</if>
|
||||||
|
<if test='directHandoverDate != null'>
|
||||||
|
AND direct_handover_dt::DATE = #{directHandoverDate}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='handoverSeaPointDetail != null and handoverSeaPointDetail != ""'>
|
||||||
|
AND (
|
||||||
|
handover_sea_point_lat LIKE CONCAT('%', #{handoverSeaPointDetail}, '%')
|
||||||
|
OR handover_sea_point_lon LIKE CONCAT('%', #{handoverSeaPointDetail}, '%')
|
||||||
|
OR handover_sea_point_detail LIKE CONCAT('%', #{handoverSeaPointDetail}, '%')
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='handoverBoat != null and handoverBoat != ""'>
|
||||||
|
AND handover_boat LIKE CONCAT('%', #{handoverBoat}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='middleTakeoverBoat != null and middleTakeoverBoat != ""'>
|
||||||
|
AND middle_takeover_boat LIKE CONCAT('%', #{middleTakeoverBoat}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='captin != null and captin != ""'>
|
||||||
|
AND (
|
||||||
|
position = 'POS001'
|
||||||
|
AND is_restriction = #{captin}
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='mate != null and mate != ""'>
|
||||||
|
AND (
|
||||||
|
position = 'POS002'
|
||||||
|
AND is_restriction = #{mate}
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='warden != null and warden != ""'>
|
||||||
|
AND (
|
||||||
|
position = 'POS003'
|
||||||
|
AND is_restriction = #{warden}
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
<if test='fieldIvsgtNapoDate != null'>
|
||||||
|
AND field_ivsgt_napo_dt::DATE = #{fieldIvsgtNapoDate}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='fieldIvsgtReleaseDate != null'>
|
||||||
|
AND field_ivsgt_release_dt::DATE = #{fieldIvsgtReleaseDate}::DATE
|
||||||
|
</if>
|
||||||
|
<!--<if test='pressurizedStartDt != null'>
|
||||||
|
AND pressurizedStartDt = #{pressurizedStartDt}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='pressurizedEndDt != null'>
|
||||||
|
AND pressurizedEndDt = #{pressurizedEndDt}::DATE
|
||||||
|
</if>-->
|
||||||
|
<if test='distance != null and distance != ""'>
|
||||||
|
AND distance = #{distance}
|
||||||
|
</if>
|
||||||
|
<if test='confiscationFrame != null and confiscationFrame != ""'>
|
||||||
|
AND confiscation_frame = #{confiscationFrame}
|
||||||
|
</if>
|
||||||
|
<if test='confiscationWidth != null and confiscationWidth != ""'>
|
||||||
|
AND confiscation_width = #{confiscationWidth}
|
||||||
|
</if>
|
||||||
|
<if test='confiscationJo != null and confiscationJo != ""'>
|
||||||
|
AND confiscation_jo = #{confiscationJo}
|
||||||
|
</if>
|
||||||
|
<if test='confiscationGae != null and confiscationGae != ""'>
|
||||||
|
AND confiscation_gae = #{confiscationGae}
|
||||||
|
</if>
|
||||||
|
<if test='confiscationEtc != null and confiscationEtc != ""'>
|
||||||
|
AND confiscation_etc = #{confiscationEtc}
|
||||||
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectCrackdownStatusList" resultType="CrackdownStatus" parameterType="CrackdownStatus">
|
<select id="selectCrackdownStatusList" resultType="CrackdownStatus" parameterType="CrackdownStatus">
|
||||||
SELECT
|
SELECT DISTINCT
|
||||||
cs.cds_key
|
cs.cds_key
|
||||||
, cs.case_num
|
, cs.case_num
|
||||||
, cs.napo_dt
|
, cs.napo_dt
|
||||||
|
|
@ -85,11 +338,11 @@
|
||||||
, (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 = '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.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 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 = 'POS001' AND s.is_restriction = 'N') 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 = '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 = '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 = 'POS002' AND s.is_restriction = 'N') 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.position = 'POS003' AND s.is_restriction = 'N') 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 = '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
|
, (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
|
FROM crackdown_status cs
|
||||||
|
|
@ -97,6 +350,10 @@
|
||||||
ON cs.cds_key = fb.cds_key
|
ON cs.cds_key = fb.cds_key
|
||||||
INNER JOIN process_result pr
|
INNER JOIN process_result pr
|
||||||
ON cs.cds_key = pr.cds_key
|
ON cs.cds_key = pr.cds_key
|
||||||
|
LEFT JOIN sailor s
|
||||||
|
ON fb.fb_key = s.fb_key
|
||||||
|
LEFT JOIN violation v
|
||||||
|
ON fb.fb_key = v.fb_key
|
||||||
<include refid="selectCrackdownStatusListWhere"></include>
|
<include refid="selectCrackdownStatusListWhere"></include>
|
||||||
ORDER BY cs.cds_key DESC
|
ORDER BY cs.cds_key DESC
|
||||||
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
||||||
|
|
|
||||||
|
|
@ -6,12 +6,50 @@
|
||||||
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.ProcessResultMapper">
|
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.ProcessResultMapper">
|
||||||
<sql id="selectProcessResultListWhere">
|
<sql id="selectProcessResultListWhere">
|
||||||
<where>
|
<where>
|
||||||
|
<if test='year != null and year != ""'>
|
||||||
|
And EXTRACT(YEAR FROM pr.wrt_dt) = EXTRACT(YEAR FROM CAST(#{year} AS DATE)::TIMESTAMP)
|
||||||
|
</if>
|
||||||
|
<if test='caseNum != null and caseNum != ""'>
|
||||||
|
AND caseNum = #{caseNum}
|
||||||
|
</if>
|
||||||
|
<if test='crackdownPolice != null and crackdownPolice != ""'>
|
||||||
|
AND crackdown_police = #{crackdownPolice}
|
||||||
|
</if>
|
||||||
|
<if test='boatNameKr != null and boatNameKr != ""'>
|
||||||
|
AND boat_name_kr LIKE CONCAT('%', #{boatNameKr}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='violation != null and violation != ""'>
|
||||||
|
AND violation = #{violation}
|
||||||
|
</if>
|
||||||
|
<if test='sentencingCourt != null and sentencingCourt != ""'>
|
||||||
|
AND sentencing_court LIKE CONCAT('%', #{sentencingCourt}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='sentencingDetail != null and sentencingDetail != ""'>
|
||||||
|
AND sentencing_detail LIKE CONCAT('%', #{sentencingDetail}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='executionDetail != null and executionDetail != ""'>
|
||||||
|
AND execution_detail = #{executionDetail}
|
||||||
|
</if>
|
||||||
|
<if test='returnDt != null'>
|
||||||
|
AND return_dt = #{returnDt}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='consignmentStartDt != null'>
|
||||||
|
AND consignment_start_dt = #{consignmentStartDt}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='consignmentEndDt != null'>
|
||||||
|
AND consignment_end_dt = #{consignmentEndDt}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='confiscationDt != null'>
|
||||||
|
AND confiscation_dt = #{confiscationDt}::DATE
|
||||||
|
</if>
|
||||||
|
<if test='boatDisposalDt != null'>
|
||||||
|
AND boat_disposal_dt = #{boatDisposalDt}::DATE
|
||||||
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectProcessResultList" resultType="ProcessResult" parameterType="ProcessResult">
|
<select id="selectProcessResultList" resultType="ProcessResult" parameterType="ProcessResult">
|
||||||
SELECT
|
SELECT DISTINCT
|
||||||
pr.pr_key
|
pr.pr_key
|
||||||
, cs.cds_key
|
, cs.cds_key
|
||||||
, cs.case_num
|
, cs.case_num
|
||||||
|
|
@ -27,23 +65,16 @@
|
||||||
, pr.consignment_end_dt
|
, pr.consignment_end_dt
|
||||||
, pr.confiscation_dt
|
, pr.confiscation_dt
|
||||||
, pr.boat_disposal_dt
|
, pr.boat_disposal_dt
|
||||||
|
, pr.wrt_dt
|
||||||
FROM process_result pr
|
FROM process_result pr
|
||||||
INNER JOIN crackdown_status cs
|
INNER JOIN crackdown_status cs
|
||||||
ON pr.cds_key = cs.cds_key
|
ON pr.cds_key = cs.cds_key
|
||||||
INNER JOIN fishing_boat fb
|
INNER JOIN fishing_boat fb
|
||||||
ON pr.cds_key = fb.cds_key
|
ON pr.cds_key = fb.cds_key
|
||||||
|
LEFT JOIN violation v
|
||||||
|
ON fb.fb_key = v.fb_key
|
||||||
<include refid="selectProcessResultListWhere"></include>
|
<include refid="selectProcessResultListWhere"></include>
|
||||||
ORDER BY pr.cds_key DESC
|
ORDER BY pr.pr_key DESC
|
||||||
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectProcessResultListCnt" resultType="int" parameterType="ProcessResult">
|
|
||||||
SELECT count(*)
|
|
||||||
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="selectProcessResultListWhere"></include>
|
|
||||||
</select>
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -6,7 +6,39 @@
|
||||||
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.SailorMapper">
|
<mapper namespace="com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.SailorMapper">
|
||||||
<sql id="selectSailorListWhere">
|
<sql id="selectSailorListWhere">
|
||||||
<where>
|
<where>
|
||||||
|
<if test='year != null and year != ""'>
|
||||||
|
And EXTRACT(YEAR FROM s.wrt_dt) = EXTRACT(YEAR FROM CAST(#{year} AS DATE)::TIMESTAMP)
|
||||||
|
</if>
|
||||||
|
<if test='crackdownPolice != null and crackdownPolice != ""'>
|
||||||
|
AND crackdown_police = #{crackdownPolice}
|
||||||
|
</if>
|
||||||
|
<if test='crackdownBoat != null and crackdownBoat != ""'>
|
||||||
|
AND crackdown_boat = #{crackdownBoat}
|
||||||
|
</if>
|
||||||
|
<if test='sailorNameKr != null and sailorNameKr != ""'>
|
||||||
|
AND sailor_name_kr LIKE CONCAT('%', #{sailorNameKr}, '%')
|
||||||
|
</if>
|
||||||
|
<if test='residence != null and residence != ""'>
|
||||||
|
AND residence = #{residence}
|
||||||
|
</if>
|
||||||
|
<if test='education != null and education != ""'>
|
||||||
|
AND education = #{education}
|
||||||
|
</if>
|
||||||
|
<if test='position != null and position != ""'>
|
||||||
|
AND position = #{position}
|
||||||
|
</if>
|
||||||
|
<if test='career != null and career != ""'>
|
||||||
|
AND career = #{career}
|
||||||
|
</if>
|
||||||
|
<if test='similarCriminalHistory != null and similarCriminalHistory != ""'>
|
||||||
|
AND similar_criminal_history = #{similarCriminalHistory}
|
||||||
|
</if>
|
||||||
|
<if test='heterogeneousCriminalHistory != null and heterogeneousCriminalHistory != ""'>
|
||||||
|
AND heterogeneous_criminal_history = #{heterogeneousCriminalHistory}
|
||||||
|
</if>
|
||||||
|
<if test='arrestHistory != null and arrestHistory != ""'>
|
||||||
|
AND arrest_history = #{arrestHistory}
|
||||||
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
|
|
@ -37,8 +69,11 @@
|
||||||
, s.wrt_user_nm
|
, s.wrt_user_nm
|
||||||
, s.wrt_dt
|
, s.wrt_dt
|
||||||
FROM sailor s
|
FROM sailor s
|
||||||
|
INNER JOIN fishing_boat f
|
||||||
|
ON s.fb_key = f.fb_key
|
||||||
|
INNER JOIN crackdown_status cs
|
||||||
|
ON f.cds_key = cs.cds_key
|
||||||
<include refid="selectSailorListWhere"></include>
|
<include refid="selectSailorListWhere"></include>
|
||||||
ORDER BY s.sailor_key DESC
|
ORDER BY s.sailor_key DESC
|
||||||
LIMIT #{rowCnt} OFFSET #{firstIndex}
|
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -1,3 +1,49 @@
|
||||||
|
$(function(){
|
||||||
|
$("#napoDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#paymentPaymentDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#consignmentStartDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#consignmentEndDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#confiscationDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#boatDisposalDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#directHandoverDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#fieldIvsgtNapoDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#fieldIvsgtReleaseDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#pressurizedStartDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#pressurizedEndDate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
});
|
||||||
$(document).on('click', '#crackdownStatusAddBtn', function () {
|
$(document).on('click', '#crackdownStatusAddBtn', function () {
|
||||||
getCrackdownStatusEditModal(null);
|
getCrackdownStatusEditModal(null);
|
||||||
});
|
});
|
||||||
|
|
@ -296,7 +342,6 @@ function getCrackdownStatusEditModal(cdsKey){
|
||||||
|
|
||||||
function saveCrackdownStatus(saveYn){
|
function saveCrackdownStatus(saveYn){
|
||||||
$('input[name="fieldIvsgtTimeTaken"]').val(dateTimeCalc($("#fieldIvsgtNapoDt").val(), $("#fieldIvsgtReleaseDt").val()));
|
$('input[name="fieldIvsgtTimeTaken"]').val(dateTimeCalc($("#fieldIvsgtNapoDt").val(), $("#fieldIvsgtReleaseDt").val()));
|
||||||
$('input[name="warrantReqTakeTime"]').val(dateTimeCalc($("#pressurizedStartDt").val(), $("#pressurizedEndDt").val()));
|
|
||||||
$('input[name="pressurizedTimeTaken"]').val(dateTimeCalc($("#pressurizedStartDt").val(), $("#pressurizedEndDt").val()));
|
$('input[name="pressurizedTimeTaken"]').val(dateTimeCalc($("#pressurizedStartDt").val(), $("#pressurizedEndDt").val()));
|
||||||
|
|
||||||
if(contentCheck()){
|
if(contentCheck()){
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,25 @@
|
||||||
|
$(function(){
|
||||||
|
$("#consignmentStartDt").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#consignmentEndDt").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#returnDt").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#confiscationDt").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
$("#boatDisposalDt").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
|
});
|
||||||
$(document).on('click', '#processResultAddBtn', function () {
|
$(document).on('click', '#processResultAddBtn', function () {
|
||||||
getProcessResultAddModal(null);
|
getProcessResultAddModal(null);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,10 @@ $(document).on('change', '#crackdownBoat', function (){
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$(document).on('change', 'select[name="crackdownPolice"]', function (){
|
||||||
|
dynamicOption('select[name="crackdownBoat"]', $(this).val());
|
||||||
|
});
|
||||||
|
|
||||||
$(document).on('change', 'select[name="boatNameKr"]', function (){
|
$(document).on('change', 'select[name="boatNameKr"]', function (){
|
||||||
$('input[name="fbKey"]').val($('select[name="boatNameKr"] option:selected').data('key'));
|
$('input[name="fbKey"]').val($('select[name="boatNameKr"] option:selected').data('key'));
|
||||||
$('input[name="cdsKey"]').val($('select[name="boatNameKr"] option:selected').data('key2'));
|
$('input[name="cdsKey"]').val($('select[name="boatNameKr"] option:selected').data('key2'));
|
||||||
|
|
@ -202,6 +206,11 @@ function getSailorAddModal(){
|
||||||
success: function(html){
|
success: function(html){
|
||||||
$("#sailorAddModalContent").empty().append(html);
|
$("#sailorAddModalContent").empty().append(html);
|
||||||
$("#sailorAddModal").modal('show');
|
$("#sailorAddModal").modal('show');
|
||||||
|
|
||||||
|
$("#birthdate").datepicker({
|
||||||
|
format: "yyyy-mm-dd",
|
||||||
|
language: "ko"
|
||||||
|
});
|
||||||
},
|
},
|
||||||
error:function(){
|
error:function(){
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,19 +22,306 @@
|
||||||
<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">
|
||||||
<select class="form-select" name="rowCnt" id="rowCnt">
|
<div class="col-auto">
|
||||||
<th:block th:each="num : ${#numbers.sequence(1,5)}">
|
<select class="form-select form-select-sm" name="year">
|
||||||
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt eq num*10}"></option>
|
<option value="">연도</option>
|
||||||
|
<th:block th:each="year : ${#numbers.sequence(2020, 2030)}">
|
||||||
|
<option th:value="${year + '-01-01'}" th:text="${year}" th:selected="${searchParams.year eq year}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-10">
|
||||||
|
<div class="row justify-content-end">
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="napoDate" id="napoDate" placeholder="나포일시" th:value="${#temporals.format(searchParams.napoDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${commonCode.itemCd eq searchParams.violation}"></option>></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<div class="row justify-content-end">
|
<input class="form-control form-control-sm" name="napoSeaPointDetail" id="napoSeaPointDetail" placeholder="위반장소" th:value="${searchParams.napoSeaPointDetail}">
|
||||||
<!--<div class="col-auto">
|
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="사건번호" name="caseNum" th:value="${searchParams.caseNum}">
|
|
||||||
</div>-->
|
|
||||||
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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 searchParams.invasionType}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="nll">
|
||||||
|
<option value="">NLL</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.nll == 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.nll == 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="obstrExspdCnt" id="obstrExspdCnt" placeholder="인적피해 발생건수" th:value="${searchParams.obstrExspdCnt}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="personDamageCnt" id="personDamageCnt" placeholder="인적피해 피해인원" th:value="${searchParams.personDamageCnt}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="personDamageAmount" id="personDamageAmount" placeholder="인적피해 피해액" th:value="${searchParams.personDamageAmount}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="personDamageDetail" id="personDamageDetail" placeholder="인적피해 상세내용" th:value="${searchParams.personDamageDetail}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageCnt" id="materialDamageCnt" placeholder="물적피해 발생건수" th:value="${searchParams.materialDamageCnt}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageAmount" id="materialDamageAmount" placeholder="물적피해 피해액" th:value="${searchParams.materialDamageAmount}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="materialDamageDetail" id="materialDamageDetail" placeholder="물적피해 상세내용" th:value="${searchParams.materialDamageDetail}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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 searchParams.caseAgency}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="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 searchParams.crackdownPolice}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="crackdownBoat">
|
||||||
|
<option value="">단속함정</option>
|
||||||
|
<th:block th:each="num : ${#numbers.sequence(1,#lists.size(session.commonCode.get('CPO')))}">
|
||||||
|
<th:block th:if="${'CPO'+num == searchParams.crackdownPolice}" th:each="commonCode:${session.commonCode.get('CPO'+num)}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${searchParams.crackdownBoat eq commonCode.itemCd}"></option>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="mmsi" id="mmsi" placeholder="MMSI.NO" th:value="${searchParams.mmsi}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatNameKr" id="boatNameKr" placeholder="선명" th:value="${searchParams.boatNameKr}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<div style="display: flex;">
|
||||||
|
<input type="number" min="0" class="form-control form-control-sm" name="tonStartCnt" id="tonStartCnt" placeholder="톤수 (~이상)" th:value="${searchParams.tonStartCnt}">
|
||||||
|
~<input type="number" min="0" class="form-control form-control-sm" name="tonEndCnt" id="tonEndCnt" placeholder="톤수 (~이하)" th:value="${searchParams.tonEndCnt}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${commonCode.itemCd eq searchParams.boatMaterial}"></option>
|
||||||
|
</th:block>
|
||||||
|
<option value="etc">직접입력</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatNnySung" id="boatNnySung" placeholder="선적 성" th:value="${searchParams.boatNnySung}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatNnySi" id="boatNnySi" placeholder="선적 시" th:value="${searchParams.boatNnySi}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="sailorNameKr" id="sailorNameKr" placeholder="선장명" th:value="${searchParams.sailorNameKr}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${commonCode.itemCd eq searchParams.fisheryType}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="catchFishSpecies" id="catchFishSpecies" placeholder="어획물 축소기재 어종" th:value="${searchParams.catchFishSpecies}">
|
||||||
|
</div>
|
||||||
|
<!--<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="catchCnt" id="catchCnt" placeholder="어획물 축소기재 수량" th:value="${searchParams.catchCnt}">
|
||||||
|
</div>-->
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="offenseFishSpecies" id="offenseFishSpecies" placeholder="범칙물 어종" th:value="${searchParams.offenseFishSpecies}">
|
||||||
|
</div>
|
||||||
|
<!--<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="offenseCatchCnt" id="offenseCatchCnt" placeholder="범칙물 어획량" th:value="${searchParams.offenseCatchCnt}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="offenseIllegalWasteQuantity" id="offenseIllegalWasteQuantity" placeholder="범칙물 폐기량" th:value="${searchParams.offenseIllegalWasteQuantity}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="offenseQuantity" id="offenseQuantity" placeholder="범칙물 위판량" th:value="${searchParams.offenseQuantity}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="offenseAmount" id="offenseAmount" placeholder="범칙물 위판금액" th:value="${searchParams.offenseAmount}">
|
||||||
|
</div>-->
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${commonCode.itemCd eq searchParams.processStatus}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<!--<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="damboPayment" id="damboPayment" placeholder="담보금 납부액" th:value="${searchParams.damboPayment}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="paymentPaymentDate" id="paymentPaymentDate" placeholder="담보금 납부일시" th:value="${#temporals.format(searchParams.paymentPaymentDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="damboUnpaidAmount" id="damboUnpaidAmount" placeholder="담보금 미납액" th:value="${searchParams.damboUnpaidAmount}">
|
||||||
|
</div>-->
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="isDamboUnpaidAmount" th:value="${searchParams.isDamboUnpaidAmount}">
|
||||||
|
<option value="">담보금 미납 여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isDamboUnpaidAmount eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isDamboUnpaidAmount eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="isDirectHandoverDt" th:value="${searchParams.isDirectHandoverDt}">
|
||||||
|
<option value="">직접인계 여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isDirectHandoverDt eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isDirectHandoverDt eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<!--<input class="form-control form-control-sm" name="evictionDt" id="evictionDt" placeholder="퇴거일" th:value="${#temporals.format(searchParams.evictionDt, 'yyyy-MM-dd')}">-->
|
||||||
|
<select class="form-select form-select-sm" name="isEvictionDt" th:value="${searchParams.isEvictionDt}">
|
||||||
|
<option value="">퇴거여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isEvictionDt eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isEvictionDt eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<!--<input class="form-control form-control-sm" name="returnDt" id="returnDt" placeholder="환부일" th:value="${#temporals.format(searchParams.returnDt, 'yyyy-MM-dd')}">-->
|
||||||
|
<select class="form-select form-select-sm" name="isReturnDt" th:value="${searchParams.isReturnDt}">
|
||||||
|
<option value="">환부여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isReturnDt eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isReturnDt eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="isConsignmentStartDt" th:value="${searchParams.isConsignmentStartDt}">
|
||||||
|
<option value="">위탁관리 여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isConsignmentStartDt eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isConsignmentStartDt eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="consignmentStartDate" id="consignmentStartDate" placeholder="위탁시작일" th:value="${#temporals.format(searchParams.consignmentStartDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="consignmentEndDate" id="consignmentEndDate" placeholder="위탁종료일" th:value="${#temporals.format(searchParams.consignmentEndDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<!--<input class="form-control form-control-sm" name="confiscationDt" id="confiscationDt" placeholder="몰수확정일" th:value="${#temporals.format(searchParams.confiscationDt, 'yyyy-MM-dd')}">-->
|
||||||
|
<select class="form-select form-select-sm" name="isConfiscationDt" th:value="${searchParams.isConfiscationDt}">
|
||||||
|
<option value="">침몰여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.isConfiscationDt eq 'Y'}">O</option>
|
||||||
|
<option value="N" th:selected="${searchParams.isConfiscationDt eq 'N'}">X</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<!--<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatDisposalDt" id="boatDisposalDt" placeholder="폐선일" th:value="${#temporals.format(searchParams.boatDisposalDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>-->
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="boatDisposalType" th:value="${searchParams.boatDisposalType}">
|
||||||
|
<option value="">폐선종류</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('BDT')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.boatDisposalType}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="directHandoverDate" id="directHandoverDate" placeholder="직접인계일" th:value="${#temporals.format(searchParams.directHandoverDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="handoverSeaPointDetail" id="handoverSeaPointDetail" placeholder="직접인계 해점" th:value="${searchParams.handoverSeaPointDetail}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="handoverBoat" id="handoverBoat" placeholder="인계함정" th:value="${searchParams.handoverBoat}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="middleTakeoverBoat" id="middleTakeoverBoat" placeholder="중측 인수함정" th:value="${searchParams.middleTakeoverBoat}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="captin">
|
||||||
|
<option value="">선장 구속여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.captin eq 'Y'}">구속</option>
|
||||||
|
<option value="N" th:selected="${searchParams.captin eq 'N'}">불구속</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="mate">
|
||||||
|
<option value="">향해장 구속여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.mate eq 'Y'}">구속</option>
|
||||||
|
<option value="N" th:selected="${searchParams.mate eq 'N'}">불구속</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="warden">
|
||||||
|
<option value="">기관장 구속여부</option>
|
||||||
|
<option value="Y" th:selected="${searchParams.warden eq 'Y'}">구속</option>
|
||||||
|
<option value="N" th:selected="${searchParams.warden eq 'N'}">불구속</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="fieldIvsgtNapoDate" id="fieldIvsgtNapoDate" placeholder="현장조사 나포일시" th:value="${#temporals.format(searchParams.fieldIvsgtNapoDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="fieldIvsgtReleaseDate" id="fieldIvsgtReleaseDate" placeholder="현장조사 석방일시" th:value="${#temporals.format(searchParams.fieldIvsgtReleaseDate, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<!--<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="pressurizedStartDt" id="pressurizedStartDt" placeholder="압송시작일" th:value="${#temporals.format(searchParams.pressurizedStartDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="pressurizedEndDt" id="pressurizedEndDt" placeholder="압송종료일" th:value="${#temporals.format(searchParams.pressurizedEndDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>-->
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="distance" id="distance" placeholder="거리" th:value="${searchParams.distance}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationFrame" id="confiscationFrame" placeholder="틀" th:value="${searchParams.confiscationFrame}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationWidth" id="confiscationWidth" placeholder="폭" th:value="${searchParams.confiscationWidth}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationJo" id="confiscationJo" placeholder="조" th:value="${searchParams.confiscationJo}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationGae" id="confiscationGae" placeholder="개" th:value="${searchParams.confiscationGae}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationEtc" id="confiscationEtc" placeholder="기타" th:value="${searchParams.confiscationEtc}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
@ -44,8 +331,8 @@
|
||||||
<tr>
|
<tr>
|
||||||
<th rowspan="4">연번</th>
|
<th rowspan="4">연번</th>
|
||||||
<th rowspan="4">나포일시</th>
|
<th rowspan="4">나포일시</th>
|
||||||
<th rowspan="4">위반장소</th>
|
|
||||||
<th rowspan="4">위반내용</th>
|
<th rowspan="4">위반내용</th>
|
||||||
|
<th rowspan="4">위반장소</th>
|
||||||
<th colspan="4">침범유형</th>
|
<th colspan="4">침범유형</th>
|
||||||
<th rowspan="3">NLL</th>
|
<th rowspan="3">NLL</th>
|
||||||
<th colspan="7">특수공무집행방해</th>
|
<th colspan="7">특수공무집행방해</th>
|
||||||
|
|
@ -116,13 +403,13 @@
|
||||||
<th rowspan="3">중측인수함정</th>
|
<th rowspan="3">중측인수함정</th>
|
||||||
<th rowspan="2">계</th>
|
<th rowspan="2">계</th>
|
||||||
<th rowspan="2">선장</th>
|
<th rowspan="2">선장</th>
|
||||||
<th rowspan="2">향해장</th>
|
<th rowspan="2">항해장</th>
|
||||||
<th rowspan="2">기관장</th>
|
<th rowspan="2">기관장</th>
|
||||||
<th rowspan="2">선원</th>
|
<th rowspan="2">선원</th>
|
||||||
<th rowspan="2">구속척수(몰수판결)</th>
|
<th rowspan="2">구속척수(몰수판결)</th>
|
||||||
<th rowspan="2">계</th>
|
<th rowspan="2">계</th>
|
||||||
<th rowspan="2">선장</th>
|
<th rowspan="2">선장</th>
|
||||||
<th rowspan="2">향해장</th>
|
<th rowspan="2">항해장</th>
|
||||||
<th rowspan="2">기관장</th>
|
<th rowspan="2">기관장</th>
|
||||||
<th rowspan="2">선원</th>
|
<th rowspan="2">선원</th>
|
||||||
<th rowspan="2">불구속척수</th>
|
<th rowspan="2">불구속척수</th>
|
||||||
|
|
@ -224,15 +511,15 @@
|
||||||
<div th:text="${crackdownStatus.napoSeaPointDetail}"></div>
|
<div th:text="${crackdownStatus.napoSeaPointDetail}"></div>
|
||||||
</td>
|
</td>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('IST')}">
|
<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 null && crackdownStatus.invasionType eq commonCode.itemCd}" th:text="1"></td>
|
||||||
<td th:if="${crackdownStatus.invasionType ne commonCode.itemCd}" th:text="0"></td>
|
<td th:if="${crackdownStatus.invasionType ne commonCode.itemCd}" th:text="0"></td>
|
||||||
</th:block>
|
</th:block>
|
||||||
<td th:text="${crackdownStatus.nll eq 'Y' ? 1 : 0}"></td>
|
<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.obstrExspdCnt}"></td>
|
||||||
<td th:text="${crackdownStatus.personDamageCnt}"></td>
|
<td th:text="${crackdownStatus.personDamageCnt}"></td>
|
||||||
<td th:text="${crackdownStatus.personDamageAmount}"></td>
|
<td th:text="${crackdownStatus.personDamageAmount}"></td>
|
||||||
<td th:text="${crackdownStatus.personDamageDetail}"></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.materialDamageCnt}"></td>
|
||||||
<td th:text="${crackdownStatus.materialDamageAmount}"></td>
|
<td th:text="${crackdownStatus.materialDamageAmount}"></td>
|
||||||
<td th:text="${crackdownStatus.materialDamageDetail}"></td>
|
<td th:text="${crackdownStatus.materialDamageDetail}"></td>
|
||||||
<th:block th:each="commonCode:${session.commonCode.get('ATA')}">
|
<th:block th:each="commonCode:${session.commonCode.get('ATA')}">
|
||||||
|
|
@ -346,35 +633,6 @@
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="cdsDownExcel">엑셀 다운로드</button>
|
<button class="btn btn-sm btn-primary col-auto" id="cdsDownExcel">엑셀 다운로드</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>
|
||||||
|
|
||||||
<!-- 페이징 -->
|
|
||||||
<div class="row justify-content-center">
|
|
||||||
<div class="col-auto">
|
|
||||||
<nav aria-label="Page navigation">
|
|
||||||
<ul class="pagination">
|
|
||||||
<th:block th:if="${searchParams.pageIndex>3}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Previous">
|
|
||||||
<span aria-hidden="true">«</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
|
||||||
<li class="page-item" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex eq num?'active':''}">
|
|
||||||
<a class="page-link" href="#" th:text="${num}"></a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Next">
|
|
||||||
<span aria-hidden="true">»</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -35,12 +35,6 @@
|
||||||
<option value="N" th:selected="${crackdownStatus.nll == 'N'}">X</option>
|
<option value="N" th:selected="${crackdownStatus.nll == 'N'}">X</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</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">
|
<div class="col-sm-1">
|
||||||
<label class="col-form-label text-center">위반내용</label>
|
<label class="col-form-label text-center">위반내용</label>
|
||||||
<button type="button" class="btn btn-primary col-auto" id="violationAddBtn">+</button>
|
<button type="button" class="btn btn-primary col-auto" id="violationAddBtn">+</button>
|
||||||
|
|
@ -82,6 +76,12 @@
|
||||||
</th:block>
|
</th:block>
|
||||||
</th:block>
|
</th:block>
|
||||||
</div>
|
</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>
|
||||||
<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="invasionType">
|
<select class="form-select form-select-sm" name="invasionType">
|
||||||
|
|
@ -388,7 +388,7 @@
|
||||||
<option value="N" th:selected="${crackdownStatus.sailorList ne null && #aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
<option value="N" th:selected="${crackdownStatus.sailorList ne null && #aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</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 type="hidden" name="mateSailorKey" th:value="${crackdownStatus.sailorList ne null ? #aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002'].![sailorKey]) : null}">
|
<input type="hidden" name="mateSailorKey" th:value="${crackdownStatus.sailorList ne null ? #aggregates.sum(crackdownStatus.sailorList.?[position == 'POS002'].![sailorKey]) : null}">
|
||||||
<select class="form-select form-select-sm" name="mate">
|
<select class="form-select form-select-sm" name="mate">
|
||||||
|
|
@ -440,9 +440,13 @@
|
||||||
<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" th:value="${#temporals.format(crackdownStatus.fieldIvsgtReleaseDt, 'yyyy-MM-dd HH:mm')}">
|
||||||
</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" readonly>
|
<input class="form-control" name="fieldIvsgtTimeTaken" readonly>
|
||||||
|
</div>-->
|
||||||
|
<label class="col-sm-1 col-form-label text-center">영장청구<br>소요시간</label>
|
||||||
|
<div class="col-sm-2">
|
||||||
|
<input class="form-control" name="warrantReqTakeTime">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
@ -457,10 +461,10 @@
|
||||||
<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" th:value="${#temporals.format(crackdownStatus.pressurizedEndDt, 'yyyy-MM-dd HH:mm')}">
|
||||||
</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" readonly>
|
<input class="form-control" name="pressurizedTimeTaken" 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" th:value="${crackdownStatus.distance}">
|
||||||
|
|
|
||||||
|
|
@ -401,7 +401,7 @@
|
||||||
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</option>
|
<option value="N" th:selected="${#aggregates.sum(crackdownStatus.sailorList.?[position == 'POS001' && isRestriction == 'N'].![1]) != null}">불구속</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>
|
||||||
|
|
|
||||||
|
|
@ -18,20 +18,76 @@
|
||||||
<div class="col-12 card">
|
<div class="col-12 card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form method="get" th:action="@{/faStatistics/processResult}" id="processResultSearchForm">
|
<form method="get" th:action="@{/faStatistics/processResult}" id="processResultSearchForm">
|
||||||
<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">
|
||||||
<select class="form-select" name="rowCnt" id="rowCnt">
|
<div class="col-auto">
|
||||||
<th:block th:each="num : ${#numbers.sequence(1,5)}">
|
<select class="form-select form-select-sm" name="year">
|
||||||
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt eq num*10}"></option>
|
<option value="">연도</option>
|
||||||
|
<th:block th:each="year : ${#numbers.sequence(2020, 2030)}">
|
||||||
|
<option th:value="${year + '-01-01'}" th:text="${year}" th:selected="${searchParams.year eq year}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-10">
|
||||||
|
<div class="row justify-content-end">
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="text" class="form-control form-control-sm" placeholder="사건번호" name="sailorNameKr" th:value="${searchParams.caseNum}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${searchParams.crackdownPolice eq commonCode.itemCd}"></option>
|
||||||
|
</th:block>
|
||||||
|
<option value="etc" th:selected="${searchParams.crackdownPolice ne '' && searchParams.crackdownPolice ne null && !#strings.contains(searchParams.crackdownPolice, 'CPO')}">직접입력</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatNameKr" id="boatNameKr" placeholder="피의자(선박명)" th:value="${searchParams.boatNameKr}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<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="${commonCode.itemCd eq searchParams.violation}"></option>></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<div class="row justify-content-end">
|
<input class="form-control form-control-sm" name="sentencingCourt" id="sentencingCourt" placeholder="선고법원" th:value="${searchParams.sentencingCourt}">
|
||||||
<!--<div class="col-auto">
|
</div>
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="사건번호" name="caseNum" th:value="${searchParams.caseNum}">
|
<div class="col-auto">
|
||||||
</div>-->
|
<input class="form-control form-control-sm" name="sentencingDetail" id="sentencingDetail" placeholder="선고내용" th:value="${searchParams.sentencingDetail}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="executionDetail" id="executionDetail">
|
||||||
|
<option value="">선택</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('PR')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.executionDetail}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="returnDt" id="returnDt" placeholder="환부일" th:value="${#temporals.format(searchParams.returnDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="consignmentStartDt" id="consignmentStartDt" placeholder="위탁시작일" th:value="${#temporals.format(searchParams.consignmentStartDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="consignmentEndDt" id="consignmentEndDt" placeholder="위탁종료일" th:value="${#temporals.format(searchParams.consignmentEndDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="confiscationDt" id="confiscationDt" placeholder="몰수확정일" th:value="${#temporals.format(searchParams.confiscationDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input class="form-control form-control-sm" name="boatDisposalDt" id="boatDisposalDt" placeholder="폐선일" th:value="${#temporals.format(searchParams.boatDisposalDt, 'yyyy-MM-dd')}">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -50,8 +106,8 @@
|
||||||
<th>선고법원</th>
|
<th>선고법원</th>
|
||||||
<th>집행내용</th>
|
<th>집행내용</th>
|
||||||
<th>환부일</th>
|
<th>환부일</th>
|
||||||
<th>위탁종료일</th>
|
|
||||||
<th>위탁시작일</th>
|
<th>위탁시작일</th>
|
||||||
|
<th>위탁종료일</th>
|
||||||
<th>몰수확정일</th>
|
<th>몰수확정일</th>
|
||||||
<th>폐선일(인계한 날짜)</th>
|
<th>폐선일(인계한 날짜)</th>
|
||||||
<th>최종수정일</th>
|
<th>최종수정일</th>
|
||||||
|
|
@ -111,35 +167,6 @@
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="processResultDownExcel">엑셀 다운로드</button>
|
<button class="btn btn-sm btn-primary col-auto" id="processResultDownExcel">엑셀 다운로드</button>
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="processResultAddBtn">등록</button>
|
<button class="btn btn-sm btn-primary col-auto" id="processResultAddBtn">등록</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 페이징 -->
|
|
||||||
<div class="row justify-content-center">
|
|
||||||
<div class="col-auto">
|
|
||||||
<nav aria-label="Page navigation">
|
|
||||||
<ul class="pagination">
|
|
||||||
<th:block th:if="${searchParams.pageIndex>3}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Previous">
|
|
||||||
<span aria-hidden="true">«</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
|
||||||
<li class="page-item" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex eq num?'active':''}">
|
|
||||||
<a class="page-link" href="#" th:text="${num}"></a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Next">
|
|
||||||
<span aria-hidden="true">»</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -18,20 +18,109 @@
|
||||||
<div class="col-12 card">
|
<div class="col-12 card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form method="get" th:action="@{/faStatistics/sailor}" id="sailorSearchForm">
|
<form method="get" th:action="@{/faStatistics/sailor}" id="sailorSearchForm">
|
||||||
<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">
|
||||||
<select class="form-select" name="rowCnt" id="rowCnt">
|
<div class="col-auto">
|
||||||
<th:block th:each="num : ${#numbers.sequence(1,5)}">
|
<select class="form-select form-select-sm" name="year">
|
||||||
<option th:value="${num*10}" th:text="${num*10}" th:selected="${searchParams.rowCnt eq num*10}"></option>
|
<option value="">연도</option>
|
||||||
|
<th:block th:each="year : ${#numbers.sequence(2020, 2030)}">
|
||||||
|
<option th:value="${year + '-01-01'}" th:text="${year}" th:selected="${searchParams.year eq year}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-10">
|
||||||
|
<div class="row justify-content-end">
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="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 searchParams.crackdownPolice}"></option>
|
||||||
</th:block>
|
</th:block>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto">
|
<div class="col-auto">
|
||||||
<div class="row justify-content-end">
|
<select class="form-select form-select-sm" name="crackdownBoat">
|
||||||
<!--<div class="col-auto">
|
<option value="">단속함정</option>
|
||||||
<input type="text" class="form-control form-control-sm" placeholder="사건번호" name="caseNum" th:value="${searchParams.caseNum}">
|
<th:block th:each="num : ${#numbers.sequence(1,#lists.size(session.commonCode.get('CPO')))}">
|
||||||
</div>-->
|
<th:block th:if="${'CPO'+num == searchParams.crackdownPolice}" th:each="commonCode:${session.commonCode.get('CPO'+num)}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}" th:selected="${searchParams.crackdownBoat eq commonCode.itemCd}"></option>
|
||||||
|
</th:block>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<input type="text" class="form-control form-control-sm" placeholder="선원명(한글)" name="sailorNameKr" th:value="${searchParams.sailorNameKr}">
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="residence">
|
||||||
|
<option value="">거주지</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('RSC')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.residence}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="education">
|
||||||
|
<option value="">학력</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('SED')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.education}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="position">
|
||||||
|
<option value="">선박 내 직책</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('POS')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.position}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="career">
|
||||||
|
<option value="">승선경력</option>
|
||||||
|
<th:block th:each="commonCode:${session.commonCode.get('BE')}">
|
||||||
|
<option th:value="${commonCode.itemCd}" th:text="${commonCode.itemValue}"
|
||||||
|
th:selected="${commonCode.itemCd eq searchParams.career}"></option>
|
||||||
|
</th:block>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="similarCriminalHistory">
|
||||||
|
<option value="">동종 범죄경력</option>
|
||||||
|
<option value="1" th:selected="${searchParams.similarCriminalHistory == 1}">1건</option>
|
||||||
|
<option value="2" th:selected="${searchParams.similarCriminalHistory == 2}">2건</option>
|
||||||
|
<option value="3" th:selected="${searchParams.similarCriminalHistory == 3}">3건</option>
|
||||||
|
<option value="4" th:selected="${searchParams.similarCriminalHistory == 4}">4이상</option>
|
||||||
|
<option value="0" th:selected="${searchParams.similarCriminalHistory == 0}">없음</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="heterogeneousCriminalHistory">
|
||||||
|
<option value="">이종 범죄경력</option>
|
||||||
|
<option value="1" th:selected="${searchParams.heterogeneousCriminalHistory == 1}">1건</option>
|
||||||
|
<option value="2" th:selected="${searchParams.heterogeneousCriminalHistory == 2}">2건</option>
|
||||||
|
<option value="3" th:selected="${searchParams.heterogeneousCriminalHistory == 3}">3건</option>
|
||||||
|
<option value="4" th:selected="${searchParams.heterogeneousCriminalHistory == 4}">4이상</option>
|
||||||
|
<option value="0" th:selected="${searchParams.heterogeneousCriminalHistory == 0}">없음</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
|
<select class="form-select form-select-sm" name="arrestHistory">
|
||||||
|
<option value="">검거이력</option>
|
||||||
|
<option value="1" th:selected="${searchParams.arrestHistory == 1}">1건</option>
|
||||||
|
<option value="2" th:selected="${searchParams.arrestHistory == 2}">2건</option>
|
||||||
|
<option value="3" th:selected="${searchParams.arrestHistory == 3}">3건</option>
|
||||||
|
<option value="4" th:selected="${searchParams.arrestHistory == 4}">4이상</option>
|
||||||
|
<option value="0" th:selected="${searchParams.arrestHistory == 0}">없음</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-auto">
|
||||||
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
<input type="submit" class="btn btn-sm btn-primary col-auto" id="searchBtn" value="검색">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -187,11 +276,11 @@
|
||||||
<td th:text="${sailor.position eq 'POS003' ? 1 : 0}"></td>
|
<td th:text="${sailor.position eq 'POS003' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.position eq 'POS005' ? 1 : 0}"></td>
|
<td th:text="${sailor.position eq 'POS005' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.position eq 'POS006' ? 1 : 0}"></td>
|
<td th:text="${sailor.position eq 'POS006' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.education == 'BE001' ? 1 : 0}"></td>
|
<td th:text="${sailor.career == 'BE001' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.education == 'BE002' ? 1 : 0}"></td>
|
<td th:text="${sailor.career == 'BE002' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.education == 'BE003' ? 1 : 0}"></td>
|
<td th:text="${sailor.career == 'BE003' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.education == 'BE004' ? 1 : 0}"></td>
|
<td th:text="${sailor.career == 'BE004' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.education == 'BE005' ? 1 : 0}"></td>
|
<td th:text="${sailor.career == 'BE005' ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.similarCriminalHistory == 1 ? 1 : 0}"></td>
|
<td th:text="${sailor.similarCriminalHistory == 1 ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.similarCriminalHistory == 2 ? 1 : 0}"></td>
|
<td th:text="${sailor.similarCriminalHistory == 2 ? 1 : 0}"></td>
|
||||||
<td th:text="${sailor.similarCriminalHistory == 3 ? 1 : 0}"></td>
|
<td th:text="${sailor.similarCriminalHistory == 3 ? 1 : 0}"></td>
|
||||||
|
|
@ -221,35 +310,6 @@
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="sailorDownExcel">엑셀 다운로드</button>
|
<button class="btn btn-sm btn-primary col-auto" id="sailorDownExcel">엑셀 다운로드</button>
|
||||||
<button class="btn btn-sm btn-primary col-auto" id="sailorAddBtn">등록</button>
|
<button class="btn btn-sm btn-primary col-auto" id="sailorAddBtn">등록</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 페이징 -->
|
|
||||||
<div class="row justify-content-center">
|
|
||||||
<div class="col-auto">
|
|
||||||
<nav aria-label="Page navigation">
|
|
||||||
<ul class="pagination">
|
|
||||||
<th:block th:if="${searchParams.pageIndex>3}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Previous">
|
|
||||||
<span aria-hidden="true">«</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
|
||||||
<li class="page-item" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex eq num?'active':''}">
|
|
||||||
<a class="page-link" href="#" th:text="${num}"></a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
|
||||||
<li class="page-item" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
|
||||||
<a class="page-link" href="#" aria-label="Next">
|
|
||||||
<span aria-hidden="true">»</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</th:block>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue