외국어선 단속현황 검색기능 작업, 페이지내 통계 작업.
asf 코로나19 페이지 외국어선 단속현황 모달 수정. 삭제된 사용자 재가입 오류 수정.master
parent
4ca14a3b06
commit
11363c487f
|
|
@ -2,6 +2,7 @@ package com.dbnt.faisp.config;
|
|||
|
||||
import com.dbnt.faisp.main.codeMgt.service.CodeMgtService;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.UnlawfulFishingParam;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CSStatistics;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatusDTO;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository.FishingBoatRepository;
|
||||
|
|
@ -74,7 +75,10 @@ public class ModalController {
|
|||
if(!yearList.contains(params.getYear())){
|
||||
yearList.add(params.getYear());
|
||||
}
|
||||
mav.addObject("crackdownStatusList", fishingBoatService.selectCrackdownStatusList(params));
|
||||
List<CrackdownStatusDTO> csDTOList = fishingBoatService.selectCrackdownStatusList(params);
|
||||
CSStatistics statistics = fishingBoatService.calculationCSStatistics(csDTOList);
|
||||
mav.addObject("statistics", statistics);
|
||||
mav.addObject("crackdownStatusList", csDTOList);
|
||||
mav.addObject("yearList", yearList);
|
||||
mav.addObject("searchParams", params);
|
||||
return mav;
|
||||
|
|
|
|||
|
|
@ -30,16 +30,13 @@ public class KwmsController {
|
|||
mav.addObject("msg", "*-포함 입력 ex) M00-00000");
|
||||
}else{
|
||||
UserInfo savedUser = userInfoService.selectUserInfoToDicCode(empInfo.getDic());
|
||||
if(savedUser == null || savedUser.getUserStatus().equals("USC004")){
|
||||
if(savedUser == null){
|
||||
UserInfo userInfo = kwmsService.selectEmpInfo(empInfo.getDic());
|
||||
if(userInfo==null){
|
||||
mav.addObject("joinFlag", "F");
|
||||
mav.addObject("userInfo", empInfo);
|
||||
mav.addObject("msg", "검색 결과가 없습니다.");
|
||||
}else{
|
||||
if(savedUser!=null && savedUser.getUserStatus().equals("USC004")){
|
||||
userInfo.setUserSeq(savedUser.getUserSeq());
|
||||
}
|
||||
mav.addObject("joinFlag", "T");
|
||||
mav.addObject("userInfo", userInfo);
|
||||
mav.addObject("ogList", codeMgtService.selectCodeMgtList("OG"));
|
||||
|
|
@ -51,9 +48,23 @@ public class KwmsController {
|
|||
mav.addObject("languageList", codeMgtService.selectCodeMgtList("LNG"));
|
||||
}
|
||||
}else{
|
||||
mav.addObject("joinFlag", "F");
|
||||
mav.addObject("userInfo", empInfo);
|
||||
mav.addObject("msg", "이미 가입된 식별번호입니다.");
|
||||
if(savedUser.getUserStatus().equals("USC004")){
|
||||
UserInfo userInfo = kwmsService.selectEmpInfo(empInfo.getDic());
|
||||
userInfo.setUserSeq(savedUser.getUserSeq());
|
||||
mav.addObject("joinFlag", "T");
|
||||
mav.addObject("userInfo", userInfo);
|
||||
mav.addObject("ogList", codeMgtService.selectCodeMgtList("OG"));
|
||||
mav.addObject("ofcList", codeMgtService.selectCodeMgtList("OFC"));
|
||||
mav.addObject("titleList", codeMgtService.selectCodeMgtList("JT"));
|
||||
mav.addObject("dutyList", codeMgtService.selectCodeMgtList("DT"));
|
||||
mav.addObject("outturnList", codeMgtService.selectCodeMgtList("OTC"));
|
||||
mav.addObject("seriesList", codeMgtService.selectCodeMgtList(userInfo.getOutturnCd()));
|
||||
mav.addObject("languageList", codeMgtService.selectCodeMgtList("LNG"));
|
||||
}else{
|
||||
mav.addObject("joinFlag", "F");
|
||||
mav.addObject("userInfo", empInfo);
|
||||
mav.addObject("msg", "이미 가입된 식별번호입니다.");
|
||||
}
|
||||
}
|
||||
}
|
||||
return mav;
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus;
|
|||
import com.dbnt.faisp.main.authMgt.service.AuthMgtService;
|
||||
import com.dbnt.faisp.main.codeMgt.service.CodeMgtService;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.UnlawfulFishingParam;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CSStatistics;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatusDTO;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
|
|
@ -73,7 +74,10 @@ public class FishingBoatController {
|
|||
if(!yearList.contains(params.getYear())){
|
||||
yearList.add(params.getYear());
|
||||
}
|
||||
mav.addObject("crackdownStatusList", fishingBoatService.selectCrackdownStatusList(params));
|
||||
List<CrackdownStatusDTO> csDTOList = fishingBoatService.selectCrackdownStatusList(params);
|
||||
CSStatistics statistics = fishingBoatService.calculationCSStatistics(csDTOList);
|
||||
mav.addObject("statistics", statistics);
|
||||
mav.addObject("crackdownStatusList", csDTOList);
|
||||
mav.addObject("yearList", yearList);
|
||||
mav.addObject("searchParams", params);
|
||||
return mav;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,21 @@ public class UnlawfulFishingParam extends BaseModel {
|
|||
private List<String> violationList;
|
||||
private String processStatus;
|
||||
|
||||
/*
|
||||
private List<String> violationList;
|
||||
private String caseAgency;
|
||||
private String crackdownPolice;
|
||||
private String crackdownBoat;
|
||||
private String boatNameKr;
|
||||
private String boatNnySung;
|
||||
private String boatNnySi;
|
||||
private Double tonMin;
|
||||
private Double tonMax;
|
||||
private String boatMaterial;
|
||||
private String fisheryType;
|
||||
private String processStatus;
|
||||
*/
|
||||
private String caseNum;
|
||||
private String napoSeaPointDetail;
|
||||
private String nll;
|
||||
private String mmsi;
|
||||
|
|
@ -50,12 +65,17 @@ public class UnlawfulFishingParam extends BaseModel {
|
|||
private String confiscationJo;
|
||||
private String confiscationGae;
|
||||
private String confiscationEtc;
|
||||
private String obstrExspdCnt;
|
||||
private String personDamageCnt;
|
||||
private String personDamageAmount;
|
||||
private String obstrExspdCntMin;
|
||||
private String obstrExspdCntMax;
|
||||
private String personDamageCntMin;
|
||||
private String personDamageCntMax;
|
||||
private String personDamageAmountMin;
|
||||
private String personDamageAmountMax;
|
||||
private String personDamageDetail;
|
||||
private String materialDamageCnt;
|
||||
private String materialDamageAmount;
|
||||
private String materialDamageCntMin;
|
||||
private String materialDamageCntMax;
|
||||
private String materialDamageAmountMin;
|
||||
private String materialDamageAmountMax;
|
||||
private String materialDamageDetail;
|
||||
private String captainRestriction;
|
||||
private String navigaterRestriction;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,62 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus;
|
||||
|
||||
import com.dbnt.faisp.config.BaseModel;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class CSStatistics extends BaseModel {
|
||||
private Integer vt002Cnt=0;
|
||||
private Integer vt003vt004Cnt=0;
|
||||
private Integer vt029Cnt=0;
|
||||
private Integer vt030Cnt=0;
|
||||
private Integer nllCnt=0;
|
||||
private Integer obstrExspdCnt=0;
|
||||
private Integer personDamageCnt=0;
|
||||
private Integer personDamageAmount=0;
|
||||
private Integer materialDamageCnt=0;
|
||||
private Integer materialDamageAmount=0;
|
||||
private Double offenseWeight=0d;
|
||||
private Double offenseIllegalWasteQuantity=0d;
|
||||
private Double offenseQuantity=0d;
|
||||
private Double offenseAmount=0d;
|
||||
private Integer pr001Cnt=0;
|
||||
private Integer otherPrCnt=0;
|
||||
private Integer damboPaymentCnt=0;
|
||||
private Double damboPayment=0d;
|
||||
private Integer damboUnpaidAmountCnt=0;
|
||||
private Double damboUnpaidAmount=0d;
|
||||
private Integer consignmentCnt=0;
|
||||
private Integer evictionCnt=0;
|
||||
private Integer directHandoverCnt=0;
|
||||
private Integer bdt001Cnt=0;
|
||||
private Integer bdt002Cnt=0;
|
||||
private Integer bdt003Cnt=0;
|
||||
private Integer exileCnt=0;
|
||||
private Integer returnCnt=0;
|
||||
private Integer sailorRestrictionCnt=0;
|
||||
private Integer captainRestrictionCnt=0;
|
||||
private Integer navigaterRestrictionCnt=0;
|
||||
private Integer engineerRestrictionCnt=0;
|
||||
private Integer normalRestrictionCnt=0;
|
||||
private Integer confiscationCnt=0;
|
||||
private Integer sailorRestrictionNotCnt=0;
|
||||
private Integer captainRestrictionNotCnt=0;
|
||||
private Integer navigaterRestrictionNotCnt=0;
|
||||
private Integer engineerRestrictionNotCnt=0;
|
||||
private Integer normalRestrictionNotCnt=0;
|
||||
private Integer confiscationNotCnt=0;
|
||||
private Integer fieldIvsgtCnt=0;
|
||||
private Integer confiscationFrameCnt=0;
|
||||
private Integer confiscationWidthCnt=0;
|
||||
private Integer confiscationJoCnt=0;
|
||||
private Integer confiscationGaeCnt=0;
|
||||
private Integer confiscationEtcCnt=0;
|
||||
}
|
||||
|
|
@ -16,8 +16,8 @@ import java.time.LocalDateTime;
|
|||
@NoArgsConstructor
|
||||
public class CrackdownStatusDTO extends BaseModel {
|
||||
private Integer cdsKey;
|
||||
private String status;
|
||||
private String caseNum;
|
||||
private String status;
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||
private LocalDateTime napoDt;
|
||||
private String violationStr;
|
||||
|
|
@ -34,6 +34,7 @@ public class CrackdownStatusDTO extends BaseModel {
|
|||
private Integer materialDamageAmount;
|
||||
private String materialDamageDetail;
|
||||
private String caseAgency;
|
||||
private String casePoliceOfficer;
|
||||
private String crackdownPolice;
|
||||
private String crackdownBoat;
|
||||
private String mmsi;
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus.service;
|
|||
import com.dbnt.faisp.config.BaseService;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.CrackdownStatusMapper;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.UnlawfulFishingParam;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CSStatistics;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatusDTO;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
|
|
@ -235,4 +236,147 @@ public class FishingBoatService extends BaseService {
|
|||
}
|
||||
return fbKey;
|
||||
}
|
||||
|
||||
public CSStatistics calculationCSStatistics(List<CrackdownStatusDTO> csDTOList) {
|
||||
CSStatistics statistics = new CSStatistics();
|
||||
for(CrackdownStatusDTO dto: csDTOList){
|
||||
if (dto.getViolationCode().contains("VT002")){
|
||||
statistics.setVt002Cnt(statistics.getVt002Cnt()+1);
|
||||
}
|
||||
if (dto.getViolationCode().contains("VT003") || dto.getViolationCode().contains("VT004")){
|
||||
statistics.setVt003vt004Cnt(statistics.getVt003vt004Cnt()+1);
|
||||
}
|
||||
if (dto.getViolationCode().contains("VT029")){
|
||||
statistics.setVt029Cnt(statistics.getVt029Cnt()+1);
|
||||
}
|
||||
if (dto.getViolationCode().contains("VT030")){
|
||||
statistics.setVt030Cnt(statistics.getVt030Cnt()+1);
|
||||
}
|
||||
if (dto.getNll().equals("Y")){
|
||||
statistics.setNllCnt(statistics.getNllCnt()+1);
|
||||
}
|
||||
if (dto.getObstrExspdCnt()!=null){
|
||||
statistics.setObstrExspdCnt(statistics.getObstrExspdCnt()+dto.getObstrExspdCnt());
|
||||
}
|
||||
if (dto.getPersonDamageCnt()!=null){
|
||||
statistics.setPersonDamageCnt(statistics.getPersonDamageCnt()+dto.getPersonDamageCnt());
|
||||
}
|
||||
if (dto.getPersonDamageAmount()!=null){
|
||||
statistics.setPersonDamageAmount(statistics.getPersonDamageAmount()+dto.getPersonDamageAmount());
|
||||
}
|
||||
if (dto.getMaterialDamageCnt()!=null){
|
||||
statistics.setMaterialDamageCnt(statistics.getMaterialDamageCnt()+dto.getMaterialDamageCnt());
|
||||
}
|
||||
if (dto.getMaterialDamageAmount()!=null){
|
||||
statistics.setMaterialDamageAmount(statistics.getMaterialDamageAmount()+dto.getMaterialDamageAmount());
|
||||
}
|
||||
if(dto.getOffenseWeight()!=null){
|
||||
statistics.setOffenseWeight(statistics.getOffenseWeight()+dto.getOffenseWeight());
|
||||
}
|
||||
if(dto.getOffenseIllegalWasteQuantity()!=null){
|
||||
statistics.setOffenseIllegalWasteQuantity(statistics.getOffenseIllegalWasteQuantity()+dto.getOffenseIllegalWasteQuantity());
|
||||
}
|
||||
if(dto.getOffenseQuantity()!=null){
|
||||
statistics.setOffenseQuantity(statistics.getOffenseQuantity()+dto.getOffenseQuantity());
|
||||
}
|
||||
if(dto.getOffenseAmount()!=null){
|
||||
statistics.setOffenseAmount(statistics.getOffenseAmount()+dto.getOffenseAmount());
|
||||
}
|
||||
if (dto.getProcessStatus().equals("PR001")){
|
||||
statistics.setPr001Cnt(statistics.getPr001Cnt()+1);
|
||||
}
|
||||
if (!dto.getProcessStatus().equals("PR001")){
|
||||
statistics.setOtherPrCnt(statistics.getOtherPrCnt()+1);
|
||||
}
|
||||
if (dto.getDamboPayment()!=null && dto.getDamboPayment() > 0){
|
||||
statistics.setDamboPaymentCnt(statistics.getDamboPaymentCnt()+1);
|
||||
statistics.setDamboPayment(statistics.getDamboPayment()+dto.getDamboPayment());
|
||||
}
|
||||
if (dto.getDamboUnpaidAmount()!=null && dto.getDamboUnpaidAmount() > 0){
|
||||
statistics.setDamboUnpaidAmountCnt(statistics.getDamboUnpaidAmountCnt()+1);
|
||||
statistics.setDamboUnpaidAmount(statistics.getDamboUnpaidAmount()+dto.getDamboUnpaidAmount());
|
||||
}
|
||||
if (dto.getConsignmentStartDt()!=null){
|
||||
statistics.setConsignmentCnt(statistics.getConsignmentCnt()+1);
|
||||
}
|
||||
if (dto.getEvictionDt()!=null){
|
||||
statistics.setEvictionCnt(statistics.getEvictionCnt()+1);
|
||||
}
|
||||
if (dto.getDirectHandoverDt()!=null){
|
||||
statistics.setDirectHandoverCnt(statistics.getDirectHandoverCnt()+1);
|
||||
}
|
||||
if (dto.getBoatDisposalType()!=null && dto.getBoatDisposalType().equals("BDT001")){
|
||||
statistics.setBdt001Cnt(statistics.getBdt001Cnt()+1);
|
||||
}
|
||||
if (dto.getBoatDisposalType()!=null && dto.getBoatDisposalType().equals("BDT002")){
|
||||
statistics.setBdt002Cnt(statistics.getBdt002Cnt()+1);
|
||||
}
|
||||
if (dto.getBoatDisposalType()!=null && dto.getBoatDisposalType().equals("BDT003")){
|
||||
statistics.setBdt003Cnt(statistics.getBdt003Cnt()+1);
|
||||
}
|
||||
if (dto.getExileDt()!=null){
|
||||
statistics.setExileCnt(statistics.getExileCnt()+1);
|
||||
}
|
||||
if (dto.getReturnDt()!=null){
|
||||
statistics.setReturnCnt(statistics.getReturnCnt()+1);
|
||||
}
|
||||
if (dto.getCaptainRestriction()!=0){
|
||||
statistics.setSailorRestrictionCnt(statistics.getSailorRestrictionCnt()+dto.getCaptainRestriction());
|
||||
statistics.setCaptainRestrictionCnt(statistics.getCaptainRestrictionCnt()+dto.getCaptainRestriction());
|
||||
}
|
||||
if (dto.getNavigaterRestriction()!=0){
|
||||
statistics.setSailorRestrictionCnt(statistics.getSailorRestrictionCnt()+dto.getNavigaterRestriction());
|
||||
statistics.setNavigaterRestrictionCnt(statistics.getNavigaterRestrictionCnt()+dto.getNavigaterRestriction());
|
||||
}
|
||||
if (dto.getEngineerRestriction()!=0){
|
||||
statistics.setSailorRestrictionCnt(statistics.getSailorRestrictionCnt()+dto.getEngineerRestriction());
|
||||
statistics.setEngineerRestrictionCnt(statistics.getEngineerRestrictionCnt()+dto.getEngineerRestriction());
|
||||
}
|
||||
if (dto.getSeniorRestriction()!=0 || dto.getNormalRestriction()!=0){
|
||||
statistics.setSailorRestrictionCnt(statistics.getSailorRestrictionCnt()+dto.getSeniorRestriction()+dto.getNormalRestriction());
|
||||
statistics.setNormalRestrictionCnt(statistics.getNormalRestrictionCnt()+dto.getSeniorRestriction()+dto.getNormalRestriction());
|
||||
}
|
||||
if (dto.getConfiscationDt() != null){
|
||||
statistics.setConfiscationCnt(statistics.getConfiscationCnt()+1);
|
||||
}
|
||||
if (dto.getCaptainRestrictionNot()!=0){
|
||||
statistics.setSailorRestrictionNotCnt(statistics.getSailorRestrictionNotCnt()+dto.getCaptainRestrictionNot());
|
||||
statistics.setCaptainRestrictionNotCnt(statistics.getCaptainRestrictionNotCnt()+dto.getCaptainRestrictionNot());
|
||||
}
|
||||
if (dto.getNavigaterRestrictionNot()!=0){
|
||||
statistics.setSailorRestrictionNotCnt(statistics.getSailorRestrictionNotCnt()+dto.getNavigaterRestrictionNot());
|
||||
statistics.setNavigaterRestrictionNotCnt(statistics.getNavigaterRestrictionNotCnt()+dto.getNavigaterRestrictionNot());
|
||||
}
|
||||
if (dto.getEngineerRestrictionNot()!=0){
|
||||
statistics.setSailorRestrictionNotCnt(statistics.getSailorRestrictionNotCnt()+dto.getEngineerRestrictionNot());
|
||||
statistics.setEngineerRestrictionNotCnt(statistics.getEngineerRestrictionNotCnt()+dto.getEngineerRestrictionNot());
|
||||
}
|
||||
if (dto.getSeniorRestrictionNot()!=0 || dto.getNormalRestrictionNot()!=0){
|
||||
statistics.setSailorRestrictionNotCnt(statistics.getSailorRestrictionNotCnt()+dto.getSeniorRestrictionNot()+dto.getNormalRestrictionNot());
|
||||
statistics.setNormalRestrictionNotCnt(statistics.getNormalRestrictionNotCnt()+dto.getSeniorRestrictionNot()+dto.getNormalRestrictionNot());
|
||||
}
|
||||
if (dto.getConfiscationDt() == null){
|
||||
statistics.setConfiscationNotCnt(statistics.getConfiscationNotCnt()+1);
|
||||
}
|
||||
if(dto.getFieldIvsgt().equals("F")){
|
||||
statistics.setFieldIvsgtCnt(statistics.getFieldIvsgtCnt()+1);
|
||||
}
|
||||
if(dto.getConfiscationFrame()!=null){
|
||||
statistics.setConfiscationFrameCnt(statistics.getConfiscationFrameCnt()+Integer.parseInt(dto.getConfiscationFrame()));
|
||||
}
|
||||
if(dto.getConfiscationWidth()!=null){
|
||||
statistics.setConfiscationWidthCnt(statistics.getConfiscationWidthCnt()+Integer.parseInt(dto.getConfiscationWidth()));
|
||||
}
|
||||
if(dto.getConfiscationJo()!=null){
|
||||
statistics.setConfiscationJoCnt(statistics.getConfiscationJoCnt()+Integer.parseInt(dto.getConfiscationJo()));
|
||||
}
|
||||
if(dto.getConfiscationGae()!=null){
|
||||
statistics.setConfiscationGaeCnt(statistics.getConfiscationGaeCnt()+Integer.parseInt(dto.getConfiscationGae()));
|
||||
}
|
||||
if(dto.getConfiscationEtc()!=null){
|
||||
statistics.setConfiscationEtcCnt(statistics.getConfiscationEtcCnt()+Integer.parseInt(dto.getConfiscationEtc()));
|
||||
}
|
||||
}
|
||||
return statistics;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,11 +12,274 @@
|
|||
<if test='month != null and month != ""'>
|
||||
and extract(month from a.napo_dt) = #{month}::numeric
|
||||
</if>
|
||||
<if test="napoSeaPointDetail != null and napoSeaPointDetail != ''">
|
||||
and (a.napo_sea_point_lon like '%'||#{napoSeaPointDetail}||'%' or
|
||||
a.napo_sea_point_lat like '%'||#{napoSeaPointDetail}||'%' or
|
||||
a.napo_sea_point_detail like '%'||#{napoSeaPointDetail}||'%')
|
||||
</if>
|
||||
<if test="nll != null and nll != ''">
|
||||
and a.nll like '%'||#{nll}||'%'
|
||||
</if>
|
||||
<if test="mmsi != null and mmsi != ''">
|
||||
and a.mmsi like '%'||#{mmsi}||'%'
|
||||
</if>
|
||||
<if test="distance != null and distance != ''">
|
||||
and a.distance like '%'||#{distance}||'%'
|
||||
</if>
|
||||
<if test="isDamboUnpaidAmount == 'Y'">
|
||||
and b.dambo_unpaid_amount > 0
|
||||
</if>
|
||||
<if test="isDamboUnpaidAmount == 'N'">
|
||||
and (b.dambo_unpaid_amount = 0 or b.dambo_unpaid_amount is null)
|
||||
</if>
|
||||
<if test="isEvictionDt == 'Y'">
|
||||
and b.eviction_dt is not null
|
||||
</if>
|
||||
<if test="isEvictionDt == 'N'">
|
||||
and b.eviiction_dt is null
|
||||
</if>
|
||||
<if test="isReturnDt == 'Y'">
|
||||
and b.return_dt is not null
|
||||
</if>
|
||||
<if test="isReturnDt == 'N'">
|
||||
and b.return_dt is null
|
||||
</if>
|
||||
<if test="isConsignmentStartDt == 'Y'">
|
||||
and b.consignment_start_dt is not null
|
||||
</if>
|
||||
<if test="isConsignmentStartDt == 'N'">
|
||||
and b.consignment_start_dt is null
|
||||
</if>
|
||||
<if test="isConfiscationDt == 'Y'">
|
||||
and b.confiscation_dt is not null
|
||||
</if>
|
||||
<if test="isConfiscationDt == 'N'">
|
||||
and b.confiscation_dt is null
|
||||
</if>
|
||||
<if test="isDirectHandoverDt == 'Y'">
|
||||
and b.direct_handover_dt is not null
|
||||
</if>
|
||||
<if test="isDirectHandoverDt == 'N'">
|
||||
and b.direct_handover_dt is null
|
||||
</if>
|
||||
<if test="boatDisposalType != null and boatDisposalType != ''">
|
||||
and b.boat_disposal_type = #{boatDisposalType}
|
||||
</if>
|
||||
<if test="handoverSeaPointDetail != null and handoverSeaPointDetail != ''">
|
||||
and (b.handover_sea_point_lon like '%'||#{handoverSeaPointDetail}||'%' or
|
||||
b.handover_sea_point_lat like '%'||#{handoverSeaPointDetail}||'%' or
|
||||
b.handover_sea_point_detail like '%'||#{handoverSeaPointDetail}||'%')
|
||||
</if>
|
||||
<if test="handoverBoat != null and handoverBoat != ''">
|
||||
and b.handover_boat like '%'||#{handoverBoat}||'%'
|
||||
</if>
|
||||
<if test="middleTakeoverBoat != null and middleTakeoverBoat != ''">
|
||||
and b.middle_takeover_boat like '%'||#{middleTakeoverBoat}||'%'
|
||||
</if>
|
||||
<if test="sailorNameKr != null and sailorNameKr != ''">
|
||||
and d.sailor_name_kr like '%'||#{sailorNameKr}||'%'
|
||||
</if>
|
||||
<if test="catchFishSpecies != null and catchFishSpecies != ''">
|
||||
and c.catch_fish_species like '%'||#{catchFishSpecies}||'%'
|
||||
</if>
|
||||
<if test="offenseFishSpecies != null and offenseFishSpecies != ''">
|
||||
and c.offense_fish_species like '%'||#{offenseFishSpecies}||'%'
|
||||
</if>
|
||||
<if test="confiscationFrame == 'Y'">
|
||||
and c.confiscation_frame is not null
|
||||
</if>
|
||||
<if test="confiscationFrame == 'N'">
|
||||
and c.confiscation_frame is null or c.confiscation_frame = 0
|
||||
</if>
|
||||
<if test="confiscationWidth == 'Y'">
|
||||
and c.confiscation_width is not null
|
||||
</if>
|
||||
<if test="confiscationWidth == 'N'">
|
||||
and c.confiscation_width is null or c.confiscation_width = 0
|
||||
</if>
|
||||
<if test="confiscationJo == 'Y'">
|
||||
and c.confiscation_jo is not null
|
||||
</if>
|
||||
<if test="confiscationJo == 'N'">
|
||||
and c.confiscation_jo is null or c.confiscation_jo = 0
|
||||
</if>
|
||||
<if test="confiscationGae == 'Y'">
|
||||
and c.confiscation_gae is not null
|
||||
</if>
|
||||
<if test="confiscationGae == 'N'">
|
||||
and c.confiscation_gae is null or c.confiscation_gae = 0
|
||||
</if>
|
||||
<if test="confiscationEtc == 'Y'">
|
||||
and c.confiscation_etc is not null
|
||||
</if>
|
||||
<if test="confiscationEtc == 'N'">
|
||||
and c.confiscation_etc is null or c.confiscation_etc = 0
|
||||
</if>
|
||||
<if test="obstrExspdCntMin != null and obstrExspdCntMin != ''">
|
||||
and a.obstr_exspd_cnt >= #{obstrExspdCntMin}
|
||||
</if>
|
||||
<if test="obstrExspdCntMax != null and obstrExspdCntMax != ''">
|
||||
and a.obstr_exspd_cnt <= #{obstrExspdCntMax}
|
||||
</if>
|
||||
<if test="personDamageCntMin != null and personDamageCntMin != ''">
|
||||
and a.person_damage_cnt >= #{personDamageCntMin}
|
||||
</if>
|
||||
<if test="personDamageCntMax != null and personDamageCntMax != ''">
|
||||
and a.person_damage_cnt <= #{personDamageCntMax}
|
||||
</if>
|
||||
<if test="personDamageAmountMin != null and personDamageAmountMin != ''">
|
||||
and a.person_damage_amount >= #{personDamageAmountMin}
|
||||
</if>
|
||||
<if test="personDamageAmountMax != null and personDamageAmountMax != ''">
|
||||
and a.person_damage_amount <= #{personDamageAmountMax}
|
||||
</if>
|
||||
<if test="personDamageDetail != null and personDamageDetail != ''">
|
||||
and a.person_damage_detail like '%'||#{personDamageDetail}||'%'
|
||||
</if>
|
||||
<if test="materialDamageCntMin != null and materialDamageCntMin != ''">
|
||||
and a.material_damage_cnt >= #{materialDamageCntMin}
|
||||
</if>
|
||||
<if test="materialDamageCntMax != null and materialDamageCntMax != ''">
|
||||
and a.material_damage_cnt <= #{materialDamageCntMax}
|
||||
</if>
|
||||
<if test="materialDamageAmountMin != null and materialDamageAmountMin != ''">
|
||||
and a.material_damage_amount >= #{materialDamageAmountMin}
|
||||
</if>
|
||||
<if test="materialDamageAmountMax != null and materialDamageAmountMax != ''">
|
||||
and a.material_damage_amount <= #{materialDamageAmountMax}
|
||||
</if>
|
||||
<if test="materialDamageDetail != null and materialDamageDetail != ''">
|
||||
and a.material_damage_detail like '%'||#{materialDamageDetail}||'%'
|
||||
</if>
|
||||
<if test="captainRestriction == 'Y'">
|
||||
and e.captainRestriction > 0
|
||||
</if>
|
||||
<if test="captainRestriction == 'N'">
|
||||
and e.captainRestrictionNot > 0
|
||||
</if>
|
||||
<if test="navigaterRestriction == 'Y'">
|
||||
and e.navigaterRestriction > 0
|
||||
</if>
|
||||
<if test="navigaterRestriction == 'N'">
|
||||
and e.navigaterRestrictionNot > 0
|
||||
</if>
|
||||
<if test="engineerRestriction == 'Y'">
|
||||
and e.engineerRestriction > 0
|
||||
</if>
|
||||
<if test="engineerRestriction == 'N'">
|
||||
and e.engineerRestrictionNot > 0
|
||||
</if>
|
||||
<if test="caseAgency != null and caseAgency != ''">
|
||||
and a.case_agency = #{caseAgency}
|
||||
</if>
|
||||
<if test="crackdownPolice != null and crackdownPolice != ''">
|
||||
and a.crackdown_police = #{crackdownPolice}
|
||||
</if>
|
||||
<if test="crackdownBoat != null and crackdownBoat != ''">
|
||||
and a.crackdown_boat = #{crackdownBoat}
|
||||
</if>
|
||||
<if test="boatNameKr != null and boatNameKr != ''">
|
||||
and c.boat_name_kr like '%'||#{boatNameKr}||'%'
|
||||
</if>
|
||||
<if test="boatNnySung != null and boatNnySung != ''">
|
||||
and c.boat_nny_sung like '%'||#{boatNnySung}||'%'
|
||||
</if>
|
||||
<if test="boatNnySi != null and boatNnySi != ''">
|
||||
and c.boat_nny_si like '%'||#{boatNnySi}||'%'
|
||||
</if>
|
||||
<if test="boatMaterial != null and boatMaterial != ''">
|
||||
and c.boat_material = #{boatMaterial}
|
||||
</if>
|
||||
<if test="fisheryType != null and fisheryType != ''">
|
||||
and c.fishery_type = #{fisheryType}
|
||||
</if>
|
||||
<if test="processStatus != null and processStatus != ''">
|
||||
and b.process_status = #{processStatus}
|
||||
</if>
|
||||
<if test="tonMin != null and tonMin > 0">
|
||||
and c.ton_cnt >= #{tonMin}
|
||||
</if>
|
||||
<if test="tonMax != null and tonMax > 0">
|
||||
and c.ton_cnt <= #{tonMax}
|
||||
</if>
|
||||
<if test='violationList != null'>
|
||||
and
|
||||
<foreach collection="violationList" item="violation" index="index" separator=" or " open="(" close=")">
|
||||
f.violationCode like '%'||#{violation}||'%'
|
||||
</foreach>
|
||||
</if>
|
||||
<choose>
|
||||
<when test='dateSelector == "napoDt"'>
|
||||
<if test='startDate != null'>
|
||||
and a.napo_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and a.napo_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "evictionDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.eviction_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.eviction_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "directHandoverDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.direct_handover_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.direct_handover_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "consignmentDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.consignment_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.consignment_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "confiscationDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.confiscation_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.confiscation_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "boatDisposalDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.boat_disposal_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.boat_disposal_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "returnDt"'>
|
||||
<if test='startDate != null'>
|
||||
and b.return_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and b.return_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
<when test='dateSelector == "wrtDt"'>
|
||||
<if test='startDate != null'>
|
||||
and a.wrt_dt >= #{startDate}::date
|
||||
</if>
|
||||
<if test='endDate != null'>
|
||||
and a.wrt_dt <= #{endDate}::date+1
|
||||
</if>
|
||||
</when>
|
||||
</choose>
|
||||
</where>
|
||||
</sql>
|
||||
|
||||
<select id="selectCrackdownStatusList" resultType="CrackdownStatusDTO" parameterType="UnlawfulFishingParam">
|
||||
select a.cds_key,
|
||||
a.case_num,
|
||||
a.status,
|
||||
a.napo_dt,
|
||||
f.violationStr,
|
||||
|
|
@ -33,6 +296,7 @@
|
|||
a.material_damage_amount ,
|
||||
a.material_damage_detail ,
|
||||
a.case_agency ,
|
||||
a.case_police_officer,
|
||||
a.crackdown_police ,
|
||||
a.crackdown_boat ,
|
||||
a.mmsi ,
|
||||
|
|
|
|||
|
|
@ -17,6 +17,18 @@ $(function (){
|
|||
$(document).on('change', '#year', function (){
|
||||
$("#searchBtn").click();
|
||||
})
|
||||
$(document).on('click', '#searchFormBtn', function (){
|
||||
const btn = $(this)
|
||||
if(btn.attr("data-state")==="hide"){
|
||||
$(".subSearchParam").show();
|
||||
btn.attr("data-state", "show");
|
||||
btn.empty().append("조건<br>숨기기");
|
||||
}else{
|
||||
$(".subSearchParam").hide();
|
||||
btn.attr("data-state", "hide");
|
||||
btn.empty().append("조건<br>펼치기");
|
||||
}
|
||||
})
|
||||
$(document).on('change', '#searchFormPolice', function (){
|
||||
const searchFormBoat = $("#searchFormBoat")
|
||||
searchFormBoat.find("option").hide()
|
||||
|
|
|
|||
|
|
@ -8,6 +8,14 @@
|
|||
<div class="row justify-content-end pe-3 py-1">
|
||||
<div class="col-auto">
|
||||
<div class="row justify-content-end">
|
||||
<div class="col-auto">
|
||||
<select class="form-select form-select-sm" name="year">
|
||||
<option value="">연도</option>
|
||||
<th:block th:each="year : ${yearList}">
|
||||
<option th:value="${year}" th:text="${year}" th:selected="${searchParams.year eq year}"></option>
|
||||
</th:block>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-auto">
|
||||
<input type="text" class="form-control form-control-sm" name="caseNum" placeholder="사건번호" th:value="${searchParams.caseNum}">
|
||||
</div>
|
||||
|
|
@ -129,16 +137,16 @@
|
|||
<th>폐선조건부공매</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[invasionType == 'IST001'].![1]) ne null ? #aggregates.sum(crackdownList.?[invasionType == 'IST001'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[invasionType == 'IST002'].![1]) ne null ? #aggregates.sum(crackdownList.?[invasionType == 'IST002'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[invasionType == 'IST003'].![1]) ne null ? #aggregates.sum(crackdownList.?[invasionType == 'IST003'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[invasionType == 'IST004'].![1]) ne null ? #aggregates.sum(crackdownList.?[invasionType == 'IST004'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[nll == 'Y'].![1]) ne null ? #aggregates.sum(crackdownList.?[nll == 'Y'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[personDamageCnt > 0 || personDamageAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![personDamageCnt])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![personDamageAmount])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[materialDamageCnt > 0 || materialDamageAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![materialDamageAmount])}"></th>
|
||||
<th th:text="${statistics.vt002Cnt}"></th>
|
||||
<th th:text="${statistics.vt003vt004Cnt}"></th>
|
||||
<th th:text="${statistics.vt029Cnt}"></th>
|
||||
<th th:text="${statistics.vt030Cnt}"></th>
|
||||
<th th:text="${statistics.nllCnt}"></th>
|
||||
<th th:text="${statistics.obstrExspdCnt}"></th>
|
||||
<th th:text="${statistics.personDamageCnt}"></th>
|
||||
<th th:text="|${statistics.personDamageAmount/10000}만원|"></th>
|
||||
<th th:text="${statistics.materialDamageCnt}"></th>
|
||||
<th th:text="|${statistics.materialDamageAmount/10000}만원|"></th>
|
||||
<th>단속경찰서</th>
|
||||
<th>단속함정</th>
|
||||
<th>성</th>
|
||||
|
|
@ -147,225 +155,184 @@
|
|||
<th>출생년도</th>
|
||||
<th>어종</th>
|
||||
<th>수량</th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.offenseCatchCnt])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.offenseIllegalWasteQuantity])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.offenseQuantity])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.offenseAmount])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.processStatus == 'PR001'].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.processStatus == 'PR001'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.processStatus == 'PR009'].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.processStatus == 'PR009'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.damboPayment > 0].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.damboPayment])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.damboUnpaidAmount > 0].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![fishingBoat.damboUnpaidAmount])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.consignmentStartDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.evictionDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.directHandoverDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT001'].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT001'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT002'].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT002'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT003'].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.boatDisposalDt != null && processResult.boatDisposalType == 'BDT003'].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.confiscationDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.returnDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![restrictionTotal])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![restrictionCaptin])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![restrictionMate])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![restrictionWarden])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![restrictionSailor])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.confiscationDt != null].![1]) ne null ? #aggregates.sum(crackdownList.?[processResult.confiscationDt != null].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![notRestrictionTotal])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![notRestrictionCaptin])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![notRestrictionMate])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![notRestrictionWarden])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.![notRestrictionSailor])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[processResult.confiscationDt != null].![1]) ne null ? 0 : #aggregates.sum(crackdownList.?[processResult.confiscationDt != null].![1])}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fieldIvsgtNapoDt != null].![1]) ne null ? 1 : 0}"></th>
|
||||
<th th:text="|${statistics.offenseWeight}kg|"></th>
|
||||
<th th:text="|${statistics.offenseIllegalWasteQuantity}kg|"></th>
|
||||
<th th:text="|${statistics.offenseQuantity}kg|"></th>
|
||||
<th th:text="|${statistics.offenseAmount}원|"></th>
|
||||
<th th:text="${statistics.pr001Cnt}"></th>
|
||||
<th th:text="${statistics.otherPrCnt}"></th>
|
||||
<th th:text="${statistics.damboPaymentCnt}"></th>
|
||||
<th th:text="|${statistics.damboPayment/10000}만원|"></th>
|
||||
<th th:text="${statistics.damboUnpaidAmountCnt}"></th>
|
||||
<th th:text="|${statistics.damboUnpaidAmount/10000}만원|"></th>
|
||||
<th th:text="${statistics.consignmentCnt}"></th>
|
||||
<th th:text="${statistics.evictionCnt}"></th>
|
||||
<th th:text="${statistics.directHandoverCnt}"></th>
|
||||
<th th:text="${statistics.bdt001Cnt}"></th>
|
||||
<th th:text="${statistics.bdt002Cnt}"></th>
|
||||
<th th:text="${statistics.bdt003Cnt}"></th>
|
||||
<th th:text="${statistics.exileCnt}"></th>
|
||||
<th th:text="${statistics.returnCnt}"></th>
|
||||
<th th:text="${statistics.sailorRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.captainRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.navigaterRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.engineerRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.normalRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.confiscationCnt}"></th>
|
||||
<th th:text="${statistics.sailorRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.captainRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.navigaterRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.engineerRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.normalRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.confiscationNotCnt}"></th>
|
||||
<th th:text="${statistics.fieldIvsgtCnt}"></th>
|
||||
<th>나포일시</th>
|
||||
<th>석방일시</th>
|
||||
<th>소요시간</th>
|
||||
<th>소요시간</th>
|
||||
<th>거리(해리)</th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationFrame != ''].![1]) ne null ? #aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationFrame != ''].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationWidth != ''].![1]) ne null ? #aggregates.sum(crackdownList.?[fishingBoat.confiscationWidth != null && fishingBoat.confiscationWidth != ''].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationJo != ''].![1]) ne null ? #aggregates.sum(crackdownList.?[fishingBoat.confiscationJo != null && fishingBoat.confiscationJo != ''].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationGae != ''].![1]) ne null ? #aggregates.sum(crackdownList.?[fishingBoat.confiscationGae != null && fishingBoat.confiscationGae != ''].![1]) : 0}"></th>
|
||||
<th th:text="${#aggregates.sum(crackdownList.?[fishingBoat.confiscationFrame != null && fishingBoat.confiscationEtc != ''].![1]) ne null ? #aggregates.sum(crackdownList.?[fishingBoat.confiscationEtc != null && fishingBoat.confiscationEtc != ''].![1]) : 0}"></th>
|
||||
<th th:text="${statistics.confiscationFrameCnt}"></th>
|
||||
<th th:text="${statistics.confiscationWidthCnt}"></th>
|
||||
<th th:text="${statistics.confiscationJoCnt}"></th>
|
||||
<th th:text="${statistics.confiscationGaeCnt}"></th>
|
||||
<th th:text="${statistics.confiscationEtcCnt}"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="table-group-divider">
|
||||
<th:block th:each="crackdownStatus:${crackdownList}">
|
||||
<tr class="crackdownTr" th:data-key="${crackdownStatus.cdsKey}">
|
||||
<input type="hidden" class="boatNameKr" th:value="${crackdownStatus.fishingBoat.boatNameKr}">
|
||||
<input type="hidden" class="caseNum" th:value=" ${crackdownStatus.caseNum}">
|
||||
<input type="hidden" class="caseAgency" th:value="${crackdownStatus.caseAgency}">
|
||||
<input type="hidden" class="casePoliceOfficer" th:value="${crackdownStatus.casePoliceOfficer}">
|
||||
<input type="hidden" class="crackdownPolice" th:value="${crackdownStatus.crackdownPolice}">
|
||||
<input type="hidden" class="crackdownBoat" th:value="${crackdownStatus.crackdownBoat}">
|
||||
<th:block th:each="commonCode:${session.commonCode.get('OG')}">
|
||||
<input type="hidden" class="caseAgencyNm" th:if="${commonCode.itemCd eq crackdownStatus.caseAgency}" th:value="${commonCode.itemValue}">
|
||||
<th:block th:each="dto:${crackdownStatusList}">
|
||||
<tr class="crackdownTr" th:data-key="${dto.cdsKey}">
|
||||
<input type="hidden" class="boatNameKr" th:value="${dto.boatNameKr}">
|
||||
<input type="hidden" class="caseNum" th:value=" ${dto.caseNum}">
|
||||
<input type="hidden" class="caseAgency" th:value="${dto.caseAgency}">
|
||||
<input type="hidden" class="casePoliceOfficer" th:value="${dto.casePoliceOfficer}">
|
||||
<input type="hidden" class="crackdownPolice" th:value="${dto.crackdownPolice}">
|
||||
<input type="hidden" class="crackdownBoat" th:value="${dto.crackdownBoat}">
|
||||
<th:block th:each="code:${session.commonCode.get('OG')}">
|
||||
<input type="hidden" class="caseAgencyNm" th:if="${code.itemCd eq dto.caseAgency}" th:value="${code.itemValue}">
|
||||
</th:block>
|
||||
<td><input type="checkbox" class="crackdownChkbox" th:value="${crackdownStatus.cdsKey}"></td>
|
||||
<td><input type="checkbox" class="crackdownChkbox" th:value="${dto.cdsKey}"></td>
|
||||
<!--<td th:text="${crackdownStatus.cdsKey}"></td>-->
|
||||
<td th:text="${crackdownStatus.caseNum}"></td>
|
||||
<td th:text="${crackdownStatus.napoDt}"></td>
|
||||
<td th:text="${dto.caseNum}"></td>
|
||||
<td th:text="${#temporals.format(dto.napoDt, 'yyyy-MM-dd HH:mm')}"></td>
|
||||
<td class="text-wrap min-width-300" th:text="${dto.violationStr}"></td>
|
||||
<td>
|
||||
<span th:text="${crackdownStatus.napoSeaPointLat}"> ~ </span>
|
||||
<span th:text="${crackdownStatus.napoSeaPointLon}"></span>
|
||||
<div th:text="${crackdownStatus.napoSeaPointDetail}"></div>
|
||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) and !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, ' ~ ', dto.napoSeaPointLat)}"></div>
|
||||
<div th:if="${!#strings.isEmpty(dto.napoSeaPointLon) or !#strings.isEmpty(dto.napoSeaPointLon)}" th:text="${#strings.concat(dto.napoSeaPointLon, dto.napoSeaPointLat)}"></div>
|
||||
<div th:text="${dto.napoSeaPointDetail}"></div>
|
||||
</td>
|
||||
<td th:text="${dto.violationCode ne null and #strings.contains(dto.violationCode, 'VT002')?1:0}"></td>
|
||||
<td th:text="${dto.violationCode ne null and (#strings.contains(dto.violationCode, 'VT003') or #strings.contains(dto.violationCode, 'VT004'))?1:0}"></td>
|
||||
<td th:text="${dto.violationCode ne null and #strings.contains(dto.violationCode, 'VT029')?1:0}"></td>
|
||||
<td th:text="${dto.violationCode ne null and #strings.contains(dto.violationCode, 'VT030')?1:0}"></td>
|
||||
<td th:text="${dto.nll eq 'Y'?1:0}"></td>
|
||||
<td th:text="${dto.obstrExspdCnt}"></td>
|
||||
<td th:text="${dto.personDamageCnt}"></td>
|
||||
<td th:text="${dto.personDamageAmount>10000?#strings.concat(dto.personDamageAmount/10000, '만원'):'-'}"></td>
|
||||
<td th:text="${dto.personDamageDetail}"></td>
|
||||
<td th:text="${dto.materialDamageCnt}"></td>
|
||||
<td th:text="${dto.materialDamageAmount>10000?#strings.concat(dto.materialDamageAmount/10000, '만원'):'-'}"></td>
|
||||
<td th:text="${dto.materialDamageDetail}"></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 th:each="code:${session.commonCode.get('OG')}">
|
||||
<th:block th:if="${code.itemCd eq dto.caseAgency}" th:text="${code.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</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="num : ${#numbers.sequence(1,#lists.size(session.commonCode.get('CPO')))}">
|
||||
<th:block th:if="${'CPO'+num == crackdownStatus.crackdownPolice}" th:each="commonCode:${session.commonCode.get('CPO'+num)}">
|
||||
<td th:if="${crackdownStatus.crackdownBoat eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
||||
</th:block>
|
||||
</th:block>
|
||||
<th:block th:if="${crackdownStatus.crackdownBoat eq null or !#strings.contains(crackdownStatus.crackdownBoat, 'CPO')}">
|
||||
<td></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>
|
||||
<th:block th:each="code:${session.commonCode.get('CPO')}">
|
||||
<th:block th:if="${code.itemCd eq dto.crackdownPolice}" th:text="${code.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</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>
|
||||
<td>
|
||||
<th:block th:each="code:${session.commonCode.get(dto.crackdownPolice)}">
|
||||
<th:block th:if="${code.itemCd eq dto.crackdownBoat}" th:text="${code.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</td>
|
||||
<td th:text="${dto.mmsi}"></td>
|
||||
<td th:text="${dto.boatNameKr}"></td>
|
||||
<td>
|
||||
<th:block th:if="${dto.tonCnt>0}" th:text="|${dto.tonCnt}t|"></th:block>
|
||||
</td>
|
||||
<td th:text="${dto.sailorCnt}"></td>
|
||||
<td>
|
||||
<th:block th:each="code:${session.commonCode.get('BM')}">
|
||||
<th:block th:if="${code.itemCd eq dto.boatMaterial}" th:text="${code.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</td>
|
||||
<td th:text="${dto.boatNnySung}"></td>
|
||||
<td th:text="${dto.boatNnySi}"></td>
|
||||
<td th:text="${dto.captainName}"></td>
|
||||
<td th:text="${dto.captainBirthDate}"></td>
|
||||
<td>
|
||||
<th:block th:each="code:${session.commonCode.get('FT')}">
|
||||
<th:block th:if="${code.itemCd eq dto.fisheryType}" th:text="${code.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</td>
|
||||
<td th:text="${dto.catchFishSpecies}"></td>
|
||||
<td><th:block th:if="${dto.catchCnt>0}" th:text="|${dto.catchCnt}kg|"></th:block></td>
|
||||
<td th:text="${dto.offenseType}"></td>
|
||||
<td><th:block th:if="${dto.offenseWeight>0}" th:text="|${dto.offenseWeight}kg|"></th:block></td>
|
||||
<td><th:block th:if="${dto.offenseIllegalWasteQuantity>0}" th:text="|${dto.offenseIllegalWasteQuantity}kg|"></th:block></td>
|
||||
<td><th:block th:if="${dto.offenseQuantity>0}" th:text="|${dto.offenseQuantity}kg|"></th:block></td>
|
||||
<td><th:block th:if="${dto.offenseAmount>0}" th:text="|${dto.offenseAmount}원|"></th:block></td>
|
||||
<td th:text="${dto.processStatus eq 'PR001'?1:0}"></td>
|
||||
<td th:text="${dto.processStatus ne 'PR001'?1:0}"></td>
|
||||
<td th:text="${dto.damboPayment > 0?1:0}"></td>
|
||||
<td>
|
||||
<th:block th:if="${dto.damboPayment ne null and dto.damboPayment>10000}" th:text="|${dto.damboPayment/10000}만원|"></th:block>
|
||||
</td>
|
||||
<td th:text="${dto.paymentPaymentDt}"></td>
|
||||
<td th:text="${dto.damboUnpaidAmount > 0?1:0}"></td>
|
||||
<td>
|
||||
<th:block th:if="${dto.damboUnpaidAmount ne null and dto.damboUnpaidAmount>10000}" th:text="|${dto.damboUnpaidAmount/10000}만원|"></th:block>
|
||||
</td>
|
||||
<td th:text="${dto.consignmentStartDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.consignmentStartDt}"></td>
|
||||
<td th:text="${dto.consignmentEndDt}"></td>
|
||||
<td th:text="${dto.evictionDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.directHandoverDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.boatDisposalType eq 'BDT001'?1:0}"></td>
|
||||
<td th:text="${dto.boatDisposalType eq 'BDT002'?1:0}"></td>
|
||||
<td th:text="${dto.boatDisposalType eq 'BDT003'?1:0}"></td>
|
||||
<td th:text="${dto.exileDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.returnDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.directHandoverDt}"></td>
|
||||
<td>
|
||||
<div th:if="${!#strings.isEmpty(dto.handoverSeaPointLon) and !#strings.isEmpty(dto.handoverSeaPointLat)}" th:text="${#strings.concat(dto.handoverSeaPointLon, ' ~ ', dto.handoverSeaPointLat)}"></div>
|
||||
<div th:if="${!#strings.isEmpty(dto.handoverSeaPointLon) or !#strings.isEmpty(dto.handoverSeaPointLat)}" th:text="${#strings.concat(dto.handoverSeaPointLon, dto.handoverSeaPointLat)}"></div>
|
||||
<div th:text="${dto.handoverSeaPointDetail}"></div>
|
||||
</td>
|
||||
<td th:text="${dto.handoverBoat}"></td>
|
||||
<td th:text="${dto.middleTakeoverBoat}"></td>
|
||||
<td th:text="${dto.captainRestriction+dto.navigaterRestriction+dto.engineerRestriction+dto.seniorRestriction+dto.normalRestriction}"></td>
|
||||
<td th:text="${dto.captainRestriction}"></td>
|
||||
<td th:text="${dto.navigaterRestriction}"></td>
|
||||
<td th:text="${dto.engineerRestriction}"></td>
|
||||
<td th:text="${dto.seniorRestriction+dto.normalRestriction}"></td>
|
||||
<td th:text="${dto.confiscationDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.captainRestrictionNot+dto.navigaterRestrictionNot+dto.engineerRestrictionNot+dto.seniorRestrictionNot+dto.normalRestrictionNot}"></td>
|
||||
<td th:text="${dto.captainRestrictionNot}"></td>
|
||||
<td th:text="${dto.navigaterRestrictionNot}"></td>
|
||||
<td th:text="${dto.engineerRestrictionNot}"></td>
|
||||
<td th:text="${dto.seniorRestrictionNot+dto.normalRestrictionNot}"></td>
|
||||
<td th:text="${dto.confiscationDt eq null?1:0}"></td>
|
||||
<td th:text="${dto.fieldIvsgt eq 'F'? 1 : 0}"></td>
|
||||
<td><th:block th:if="${dto.fieldIvsgt eq 'F'}" th:text="${#temporals.format(dto.napoDt, 'yyyy-MM-dd HH:mm')}"></th:block></td>
|
||||
<td><th:block th:if="${dto.fieldIvsgt eq 'F'}" th:text="${#temporals.format(dto.releaseDt, 'yyyy-MM-dd HH:mm')}"></th:block></td>
|
||||
<td><th:block th:if="${dto.fieldIvsgt eq 'F'}" th:text="${dto.fieldIvsgtDayHour}"></th:block></td>
|
||||
<td><th:block th:if="${dto.fieldIvsgt eq 'C'}" th:text="${dto.pressurizedTimeTaken}"></th:block></td>
|
||||
<td><th:block th:if="${dto.fieldIvsgt eq 'C'}" th:text="${dto.distance}"></th:block></td>
|
||||
<td th:text="${dto.warrantReqTakeTime}"></td>
|
||||
<td th:text="${dto.confiscationFrame}"></td>
|
||||
<td th:text="${dto.confiscationWidth}"></td>
|
||||
<td th:text="${dto.confiscationJo}"></td>
|
||||
<td th:text="${dto.confiscationGae}"></td>
|
||||
<td th:text="${dto.confiscationEtc}"></td>
|
||||
</tr>
|
||||
</th:block>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-auto">
|
||||
<nav aria-label="Page navigation">
|
||||
<ul class="pagination mb-0">
|
||||
<th:block th:if="${searchParams.pageIndex>3}">
|
||||
<li class="page-item modalPage" th:data-pageindex="${(searchParams.pageIndex)-3}">
|
||||
<a class="page-link" href="#" aria-label="Previous">
|
||||
<span aria-hidden="true">«</span>
|
||||
</a>
|
||||
</li>
|
||||
</th:block>
|
||||
<th:block th:each="num : ${#numbers.sequence(searchParams.startNum, searchParams.endNum)}">
|
||||
<li class="page-item modalPage" th:data-pageindex="${num}" th:classappend="${searchParams.pageIndex==num?'active':''}">
|
||||
<a class="page-link" href="#" th:text="${num}"></a>
|
||||
</li>
|
||||
</th:block>
|
||||
<th:block th:if="${searchParams.maxNum>searchParams.endNum+2}">
|
||||
<li class="page-item modalPage" th:data-pageindex="${(searchParams.pageIndex)+3}">
|
||||
<a class="page-link" href="#" aria-label="Next">
|
||||
<span aria-hidden="true">»</span>
|
||||
</a>
|
||||
</li>
|
||||
</th:block>
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -259,46 +259,82 @@
|
|||
<div class="col-2"></div>
|
||||
<label class="col-2 col-form-label col-form-label-sm">압수어구</label>
|
||||
<div class="col-2">
|
||||
<input class="form-control form-control-sm" name="confiscationFrame" id="confiscationFrame" placeholder="틀" th:value="${searchParams.confiscationFrame}">
|
||||
<select class="form-select form-select-sm" name="confiscationFrame">
|
||||
<option value="">틀</option>
|
||||
<option value="Y" th:selected="${searchParams.confiscationFrame eq 'Y'}">O</option>
|
||||
<option value="N" th:selected="${searchParams.confiscationFrame eq 'N'}">X</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input class="form-control form-control-sm" name="confiscationWidth" id="confiscationWidth" placeholder="폭" th:value="${searchParams.confiscationWidth}">
|
||||
<select class="form-select form-select-sm" name="confiscationWidth">
|
||||
<option value="">폭</option>
|
||||
<option value="Y" th:selected="${searchParams.confiscationWidth eq 'Y'}">O</option>
|
||||
<option value="N" th:selected="${searchParams.confiscationWidth eq 'N'}">X</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input class="form-control form-control-sm" name="confiscationJo" id="confiscationJo" placeholder="조" th:value="${searchParams.confiscationJo}">
|
||||
<select class="form-select form-select-sm" name="confiscationJo">
|
||||
<option value="">조</option>
|
||||
<option value="Y" th:selected="${searchParams.confiscationJo eq 'Y'}">O</option>
|
||||
<option value="N" th:selected="${searchParams.confiscationJo eq 'N'}">X</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input class="form-control form-control-sm" name="confiscationGae" id="confiscationGae" placeholder="개" th:value="${searchParams.confiscationGae}">
|
||||
<select class="form-select form-select-sm" name="confiscationGae">
|
||||
<option value="">개</option>
|
||||
<option value="Y" th:selected="${searchParams.confiscationGae eq 'Y'}">O</option>
|
||||
<option value="N" th:selected="${searchParams.confiscationGae eq 'N'}">X</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input class="form-control form-control-sm" name="confiscationEtc" id="confiscationEtc" placeholder="기타" th:value="${searchParams.confiscationEtc}">
|
||||
<select class="form-select form-select-sm" name="confiscationEtc">
|
||||
<option value="">기타</option>
|
||||
<option value="Y" th:selected="${searchParams.confiscationEtc eq 'Y'}">O</option>
|
||||
<option value="N" th:selected="${searchParams.confiscationEtc eq 'N'}">X</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row justify-content-start pb-1 subSearchParam" style="display: none">
|
||||
<hr class="mb-1">
|
||||
<label class="col-2 col-form-label col-form-label-sm">피해내용</label>
|
||||
<label class="col-2 col-form-label col-form-label-sm">특수공무</label>
|
||||
<label class="col-1 col-form-label col-form-label-sm">인적피해</label>
|
||||
<div class="col-2">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="obstrExspdCnt" id="obstrExspdCnt" placeholder="인적피해 발생건수" th:value="${searchParams.obstrExspdCnt}">
|
||||
<div class="input-group">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="obstrExspdCntMin" placeholder="발생건수" th:value="${searchParams.obstrExspdCntMin}">
|
||||
~<input type="number" min="0" class="form-control form-control-sm" name="obstrExspdCntMax" placeholder="발생건수" th:value="${searchParams.obstrExspdCntMax}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="personDamageCnt" id="personDamageCnt" placeholder="인적피해 피해인원" th:value="${searchParams.personDamageCnt}">
|
||||
<div class="input-group">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="personDamageCntMin" placeholder="피해인원" th:value="${searchParams.personDamageCntMin}">
|
||||
~<input type="number" min="0" class="form-control form-control-sm" name="personDamageCntMax" placeholder="피해인원" th:value="${searchParams.personDamageCntMax}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="personDamageAmount" id="personDamageAmount" placeholder="인적피해 피해액" th:value="${searchParams.personDamageAmount}">
|
||||
<div class="input-group">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="personDamageAmountMin" placeholder="피해액" th:value="${searchParams.personDamageAmountMin}">
|
||||
~<input type="number" min="0" class="form-control form-control-sm" name="personDamageAmountMax" placeholder="피해액" th:value="${searchParams.personDamageAmountMax}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<div class="col-3">
|
||||
<input class="form-control form-control-sm" name="personDamageDetail" id="personDamageDetail" placeholder="인적피해 상세내용" th:value="${searchParams.personDamageDetail}">
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
<div class="col-2"></div>
|
||||
<label class="col-2 col-form-label col-form-label-sm">집행방해</label>
|
||||
<label class="col-1 col-form-label col-form-label-sm">물적피해</label>
|
||||
<div class="col-2">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageCnt" id="materialDamageCnt" placeholder="물적피해 발생건수" th:value="${searchParams.materialDamageCnt}">
|
||||
<div class="input-group">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageCntMin" placeholder="발생건수" th:value="${searchParams.materialDamageCntMin}">
|
||||
~<input type="number" min="0" class="form-control form-control-sm" name="materialDamageCntMax" placeholder="발생건수" th:value="${searchParams.materialDamageCntMax}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2"></div>
|
||||
<div class="col-2">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageAmount" id="materialDamageAmount" placeholder="물적피해 피해액" th:value="${searchParams.materialDamageAmount}">
|
||||
<div class="input-group">
|
||||
<input type="number" min="0" class="form-control form-control-sm" name="materialDamageAmountMin" placeholder="피해액" th:value="${searchParams.materialDamageAmountMin}">
|
||||
~<input type="number" min="0" class="form-control form-control-sm" name="materialDamageAmountMax" placeholder="피해액" th:value="${searchParams.materialDamageAmountMax}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-2">
|
||||
<div class="col-3">
|
||||
<input class="form-control form-control-sm" name="materialDamageDetail" id="materialDamageDetail" placeholder="물적피해 상세내용" th:value="${searchParams.materialDamageDetail}">
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -444,16 +480,16 @@
|
|||
<th>폐선조건부공매</th>
|
||||
</tr>
|
||||
<tr class="table-secondary">
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th th:text="${statistics.vt002Cnt}"></th>
|
||||
<th th:text="${statistics.vt003vt004Cnt}"></th>
|
||||
<th th:text="${statistics.vt029Cnt}"></th>
|
||||
<th th:text="${statistics.vt030Cnt}"></th>
|
||||
<th th:text="${statistics.nllCnt}"></th>
|
||||
<th th:text="${statistics.obstrExspdCnt}"></th>
|
||||
<th th:text="${statistics.personDamageCnt}"></th>
|
||||
<th th:text="|${statistics.personDamageAmount/10000}만원|"></th>
|
||||
<th th:text="${statistics.materialDamageCnt}"></th>
|
||||
<th th:text="|${statistics.materialDamageAmount/10000}만원|"></th>
|
||||
<th>단속경찰서</th>
|
||||
<th>단속함정</th>
|
||||
<th>성</th>
|
||||
|
|
@ -462,47 +498,47 @@
|
|||
<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>
|
||||
<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>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th th:text="|${statistics.offenseWeight}kg|"></th>
|
||||
<th th:text="|${statistics.offenseIllegalWasteQuantity}kg|"></th>
|
||||
<th th:text="|${statistics.offenseQuantity}kg|"></th>
|
||||
<th th:text="|${statistics.offenseAmount}원|"></th>
|
||||
<th th:text="${statistics.pr001Cnt}"></th>
|
||||
<th th:text="${statistics.otherPrCnt}"></th>
|
||||
<th th:text="${statistics.damboPaymentCnt}"></th>
|
||||
<th th:text="|${statistics.damboPayment/10000}만원|"></th>
|
||||
<th th:text="${statistics.damboUnpaidAmountCnt}"></th>
|
||||
<th th:text="|${statistics.damboUnpaidAmount/10000}만원|"></th>
|
||||
<th th:text="${statistics.consignmentCnt}"></th>
|
||||
<th th:text="${statistics.evictionCnt}"></th>
|
||||
<th th:text="${statistics.directHandoverCnt}"></th>
|
||||
<th th:text="${statistics.bdt001Cnt}"></th>
|
||||
<th th:text="${statistics.bdt002Cnt}"></th>
|
||||
<th th:text="${statistics.bdt003Cnt}"></th>
|
||||
<th th:text="${statistics.exileCnt}"></th>
|
||||
<th th:text="${statistics.returnCnt}"></th>
|
||||
<th th:text="${statistics.sailorRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.captainRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.navigaterRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.engineerRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.normalRestrictionCnt}"></th>
|
||||
<th th:text="${statistics.confiscationCnt}"></th>
|
||||
<th th:text="${statistics.sailorRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.captainRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.navigaterRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.engineerRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.normalRestrictionNotCnt}"></th>
|
||||
<th th:text="${statistics.confiscationNotCnt}"></th>
|
||||
<th th:text="${statistics.fieldIvsgtCnt}"></th>
|
||||
<th>나포일시</th>
|
||||
<th>석방일시</th>
|
||||
<th>소요시간</th>
|
||||
<th>소요시간</th>
|
||||
<th>거리(해리)</th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th></th>
|
||||
<th th:text="${statistics.confiscationFrameCnt}"></th>
|
||||
<th th:text="${statistics.confiscationWidthCnt}"></th>
|
||||
<th th:text="${statistics.confiscationJoCnt}"></th>
|
||||
<th th:text="${statistics.confiscationGaeCnt}"></th>
|
||||
<th th:text="${statistics.confiscationEtcCnt}"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="table-group-divider align-middle">
|
||||
|
|
@ -525,10 +561,10 @@
|
|||
<td th:text="${dto.nll eq 'Y'?1:0}"></td>
|
||||
<td th:text="${dto.obstrExspdCnt}"></td>
|
||||
<td th:text="${dto.personDamageCnt}"></td>
|
||||
<td th:text="${dto.personDamageAmount}"></td>
|
||||
<td th:text="${dto.personDamageAmount>10000?#strings.concat(dto.personDamageAmount/10000, '만원'):'-'}"></td>
|
||||
<td th:text="${dto.personDamageDetail}"></td>
|
||||
<td th:text="${dto.materialDamageCnt}"></td>
|
||||
<td th:text="${dto.materialDamageAmount}"></td>
|
||||
<td th:text="${dto.materialDamageAmount>10000?#strings.concat(dto.materialDamageAmount/10000, '만원'):'-'}"></td>
|
||||
<td th:text="${dto.materialDamageDetail}"></td>
|
||||
<td>
|
||||
<th:block th:each="code:${session.commonCode.get('OG')}">
|
||||
|
|
@ -576,12 +612,12 @@
|
|||
<td th:text="${dto.processStatus ne 'PR001'?1:0}"></td>
|
||||
<td th:text="${dto.damboPayment > 0?1:0}"></td>
|
||||
<td>
|
||||
<th:block th:if="${dto.damboPayment ne null and dto.damboPayment>10000}" th:text="|${#numbers.formatInteger(dto.damboPayment/10000, 3, 'COMMA')}만원|"></th:block>
|
||||
<th:block th:if="${dto.damboPayment ne null and dto.damboPayment>10000}" th:text="|${dto.damboPayment/10000}만원|"></th:block>
|
||||
</td>
|
||||
<td th:text="${dto.paymentPaymentDt}"></td>
|
||||
<td th:text="${dto.damboUnpaidAmount > 0?1:0}"></td>
|
||||
<td>
|
||||
<th:block th:if="${dto.damboUnpaidAmount ne null and dto.damboUnpaidAmount>10000}" th:text="|${#numbers.formatInteger(dto.damboUnpaidAmount/10000, 3, 'COMMA')}만원|"></th:block>
|
||||
<th:block th:if="${dto.damboUnpaidAmount ne null and dto.damboUnpaidAmount>10000}" th:text="|${dto.damboUnpaidAmount/10000}만원|"></th:block>
|
||||
</td>
|
||||
<td th:text="${dto.consignmentStartDt ne null?1:0}"></td>
|
||||
<td th:text="${dto.consignmentStartDt}"></td>
|
||||
|
|
|
|||
Loading…
Reference in New Issue