재등록 관리 메뉴 추가.

main
jjh 1 year ago
parent 3fcada7b53
commit 134df7c002

@ -1,6 +1,5 @@
package cokr.xit.fims.excl;
import cokr.xit.foundation.AbstractEntity;
import java.lang.String;
import lombok.Getter;
import lombok.Setter;
@ -17,7 +16,7 @@ import lombok.Setter;
*/
@Getter
@Setter
public class Excl01 extends AbstractEntity {
public class Excl01 extends cokr.xit.foundation.AbstractEntity {
// TB_LEVY_EXCL 부과 제외 대장 ///////////////////////////////////////////////////////////////////////
/**
@ -26,20 +25,35 @@ public class Excl01 extends AbstractEntity {
private String levyExclId;
/**
*
*
*/
private String levyExclSeCd;
private String sggCd;
/**
*
*
*/
private String levyExclSeNm;
private String taskSeCd;
/**
* ID
*/
private String crdnId;
/**
*
*/
private String levyExclYmd;
/**
*
*/
private String levyExclSeCd;
/**
*
*/
private String levyExclSeNm;
/**
*
*/
@ -96,173 +110,21 @@ public class Excl01 extends AbstractEntity {
private String delRsn;
// TB_LEVY_EXCL 부과 제외 대장 ///////////////////////////////////////////////////////////////////////
// TB_OPNN_SBMSN 의견제출 대장 ///////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String opnnId;
/**
*
*/
private String rcptNo;
/**
*
*/
private String rcptYmd;
/**
*
*/
private String rcptSeCd;
/**
*
*/
private String rcptSeNm;
/**
*
*/
private String ownrRelCd;
/**
*
*/
private String ownrRelNm;
/**
*
*/
private String sttrNm;
/**
*
*/
private String sttrBrdt;
/**
* _
*/
private String sttrBrdtFormat;
/**
*
*/
private String sttrRrno;
/**
*
*/
private String sttrAddr;
/**
*
*/
private String sttrDaddr;
/**
*
*/
private String sttrZip;
/**
*
*/
private String sttrCttpc;
/**
*
*/
private String sttrEml;
/**
*
*/
private String opnnSbmsnCn;
/**
*
*/
private String opnnSbmsnSeCd;
/**
*
*/
private String opnnSbmsnSeNm;
/**
*
*/
private String opnnSbmsnGist;
/**
*
*/
// private String atchFileCnt;
/**
*
*/
private String docNo;
/**
*
*/
private String ntfctnSeCd;
/**
*
*/
private String ntfctnSeNm;
/**
*
*/
private String picRvwOpnn;
/**
*
*/
private String ansCn;
/**
*
*/
private String ansYmd;
/**
*
*/
private String ansTm;
/**
*
*/
private String opnnSbmsnSttsCd;
/**
*
*/
private String opnnSbmsnSttsNm;
// TB_OPNN_SBMSN 의견제출 대장 ///////////////////////////////////////////////////////////////////////
// TB_CRDN 단속 대장 ///////////////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String crdnId;
// private String crdnId;
/**
*
*/
private String sggCd;
// private String sggCd;
/**
*
*/
private String taskSeCd;
// private String taskSeCd;
/**
*
@ -299,6 +161,11 @@ public class Excl01 extends AbstractEntity {
*/
private String linkId;
/**
* ID
*/
private String rtpyrId;
/**
*
*/
@ -589,7 +456,7 @@ public class Excl01 extends AbstractEntity {
/**
* ID
*/
private String rtpyrId;
// private String rtpyrId;
/**
*

@ -12,40 +12,39 @@ import cokr.xit.foundation.component.QueryRequest;
* ================================
* </pre>
*/
public class ExclQuery02 extends QueryRequest {
public class Excl01Query extends QueryRequest {
private static final long serialVersionUID = 1L;
// 필수
// 필수 조건
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
// 공통
private String delYn; // 삭제 여부
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
private String schDateTo; // 검색 일자 종료
private String schRegDateOpt; // 등록 일자 구분
private String schRegDateFrom; // 등록 일자 시작
private String schRegDateTo; // 등록 일자 종료
private String schDetailDateOpt; // 상세 검색 일자 구분
private String schDetailDateFrom; // 상세 검색 일자 시작
private String schDetailDateTo; // 상세 검색 일자 종료
private String schDetailUserOpt; // 상세 검색 사용자 구분
private String schDetailUserNm; // 상세 검색 사용자 명
private String schDetailUserCd; // 상세 검색 사용자 코드
// 부과제외 TB_LEVY_EXCL
private String levyExclId; // 부과 제외 ID
private String levyExclSeCd; // 부과 제외 구분 코드
// 의견제출 TB_OPNN_SBMSN
private String opnnId; // 의견 ID
private String opnnSbmsnSttsCd; // 의견 제출 상태 코드
// 단속 TB_CRDN
private String vhrno; // 차량번호
// 납부자 TB_PAYER
private String rtpyrNo; // 납부자 번호
private String rtpyrNm; // 납부자 명
// 검색 조건
private String schLevyExclSeCd; // 부과 제외 구분 코드
private String schVhrno; // 차량번호 - 단속(TB_CRDN)
private String schRtpyrNm; // 납부자 명 - 납부자(TB_PAYER)
//
private String levyExclId; // 부과제외 ID
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
}
public <T extends ExclQuery02> T setSggCd(String sggCd) {
public <T extends Excl01Query> T setSggCd(String sggCd) {
this.sggCd = sggCd;
return self();
@ -55,7 +54,7 @@ public class ExclQuery02 extends QueryRequest {
return ifEmpty(taskSeCd, () -> null);
}
public <T extends ExclQuery02> T setTaskSeCd(String taskSeCd) {
public <T extends Excl01Query> T setTaskSeCd(String taskSeCd) {
this.taskSeCd = taskSeCd;
return self();
@ -65,7 +64,7 @@ public class ExclQuery02 extends QueryRequest {
return ifEmpty(delYn, () -> null);
}
public <T extends ExclQuery02> T setDelYn(String delYn) {
public <T extends Excl01Query> T setDelYn(String delYn) {
this.delYn = delYn;
return self();
@ -75,7 +74,7 @@ public class ExclQuery02 extends QueryRequest {
return ifEmpty(schDateOpt, () -> null);
}
public <T extends ExclQuery02> T setSchDateOpt(String schDateOpt) {
public <T extends Excl01Query> T setSchDateOpt(String schDateOpt) {
this.schDateOpt = schDateOpt;
return self();
@ -85,7 +84,7 @@ public class ExclQuery02 extends QueryRequest {
return ifEmpty(schDateFrom, () -> null);
}
public <T extends ExclQuery02> T setSchDateFrom(String schDateFrom) {
public <T extends Excl01Query> T setSchDateFrom(String schDateFrom) {
this.schDateFrom = schDateFrom;
return self();
@ -95,138 +94,138 @@ public class ExclQuery02 extends QueryRequest {
return ifEmpty(schDateTo, () -> null);
}
public <T extends ExclQuery02> T setSchDateTo(String schDateTo) {
public <T extends Excl01Query> T setSchDateTo(String schDateTo) {
this.schDateTo = schDateTo;
return self();
}
public String getSchDetailDateOpt() {
return ifEmpty(schDetailDateOpt, () -> null);
public String getSchRegDateOpt() {
return ifEmpty(schRegDateOpt, () -> null);
}
public <T extends ExclQuery02> T setSchDetailDateOpt(String schDetailDateOpt) {
this.schDetailDateOpt = schDetailDateOpt;
public <T extends Excl01Query> T setSchRegDateOpt(String schRegDateOpt) {
this.schRegDateOpt = schRegDateOpt;
return self();
}
public String getSchDetailDateFrom() {
return ifEmpty(schDetailDateFrom, () -> null);
public String getSchRegDateFrom() {
return ifEmpty(schRegDateFrom, () -> null);
}
public <T extends ExclQuery02> T setSchDetailDateFrom(String schDetailDateFrom) {
this.schDetailDateFrom = schDetailDateFrom;
public <T extends Excl01Query> T setSchRegDateFrom(String schRegDateFrom) {
this.schRegDateFrom = schRegDateFrom;
return self();
}
public String getSchDetailDateTo() {
return ifEmpty(schDetailDateTo, () -> null);
public String getSchRegDateTo() {
return ifEmpty(schRegDateTo, () -> null);
}
public <T extends ExclQuery02> T setSchDetailDateTo(String schDetailDateTo) {
this.schDetailDateTo = schDetailDateTo;
public <T extends Excl01Query> T setSchRegDateTo(String schRegDateTo) {
this.schRegDateTo = schRegDateTo;
return self();
}
public String getSchDetailUserOpt() {
return ifEmpty(schDetailUserOpt, () -> null);
public String getSchDetailDateOpt() {
return ifEmpty(schDetailDateOpt, () -> null);
}
public <T extends ExclQuery02> T setSchDetailUserOpt(String schDetailUserOpt) {
this.schDetailUserOpt = schDetailUserOpt;
public <T extends Excl01Query> T setSchDetailDateOpt(String schDetailDateOpt) {
this.schDetailDateOpt = schDetailDateOpt;
return self();
}
public String getSchDetailUserNm() {
return ifEmpty(schDetailUserNm, () -> null);
public String getSchDetailDateFrom() {
return ifEmpty(schDetailDateFrom, () -> null);
}
public <T extends ExclQuery02> T setSchDetailUserNm(String schDetailUserNm) {
this.schDetailUserNm = schDetailUserNm;
public <T extends Excl01Query> T setSchDetailDateFrom(String schDetailDateFrom) {
this.schDetailDateFrom = schDetailDateFrom;
return self();
}
public String getSchDetailUserCd() {
return ifEmpty(schDetailUserCd, () -> null);
public String getSchDetailDateTo() {
return ifEmpty(schDetailDateTo, () -> null);
}
public <T extends ExclQuery02> T setSchDetailUserCd(String schDetailUserCd) {
this.schDetailUserCd = schDetailUserCd;
public <T extends Excl01Query> T setSchDetailDateTo(String schDetailDateTo) {
this.schDetailDateTo = schDetailDateTo;
return self();
}
public String getLevyExclId() {
return ifEmpty(levyExclId, () -> null);
public String getSchDetailUserOpt() {
return ifEmpty(schDetailUserOpt, () -> null);
}
public <T extends ExclQuery02> T setLevyExclId(String levyExclId) {
this.levyExclId = levyExclId;
public <T extends Excl01Query> T setSchDetailUserOpt(String schDetailUserOpt) {
this.schDetailUserOpt = schDetailUserOpt;
return self();
}
public String getLevyExclSeCd() {
return ifEmpty(levyExclSeCd, () -> null);
public String getSchDetailUserNm() {
return ifEmpty(schDetailUserNm, () -> null);
}
public <T extends ExclQuery02> T setLevyExclSeCd(String levyExclSeCd) {
this.levyExclSeCd = levyExclSeCd;
public <T extends Excl01Query> T setSchDetailUserNm(String schDetailUserNm) {
this.schDetailUserNm = schDetailUserNm;
return self();
}
public String getOpnnId() {
return ifEmpty(opnnId, () -> null);
public String getSchDetailUserCd() {
return ifEmpty(schDetailUserCd, () -> null);
}
public <T extends ExclQuery02> T setOpnnId(String opnnId) {
this.opnnId = opnnId;
public <T extends Excl01Query> T setSchDetailUserCd(String schDetailUserCd) {
this.schDetailUserCd = schDetailUserCd;
return self();
}
public String getOpnnSbmsnSttsCd() {
return ifEmpty(opnnSbmsnSttsCd, () -> null);
public String getSchLevyExclSeCd() {
return ifEmpty(schLevyExclSeCd, () -> null);
}
public <T extends ExclQuery02> T setOpnnSbmsnSttsCd(String opnnSbmsnSttsCd) {
this.opnnSbmsnSttsCd = opnnSbmsnSttsCd;
public <T extends Excl01Query> T setSchLevyExclSeCd(String schLevyExclSeCd) {
this.schLevyExclSeCd = schLevyExclSeCd;
return self();
}
public String getVhrno() {
return ifEmpty(vhrno, () -> null);
public String getSchVhrno() {
return ifEmpty(schVhrno, () -> null);
}
public <T extends ExclQuery02> T setVhrno(String vhrno) {
this.vhrno = vhrno;
public <T extends Excl01Query> T setSchVhrno(String schVhrno) {
this.schVhrno = schVhrno;
return self();
}
public String getRtpyrNo() {
return ifEmpty(rtpyrNo, () -> null);
public String getSchRtpyrNm() {
return ifEmpty(schRtpyrNm, () -> null);
}
public <T extends ExclQuery02> T setRtpyrNo(String rtpyrNo) {
this.rtpyrNo = rtpyrNo;
public <T extends Excl01Query> T setSchRtpyrNm(String schRtpyrNm) {
this.schRtpyrNm = schRtpyrNm;
return self();
}
public String getRtpyrNm() {
return ifEmpty(rtpyrNm, () -> null);
public String getLevyExclId() {
return ifEmpty(levyExclId, () -> null);
}
public <T extends ExclQuery02> T setRtpyrNm(String rtpyrNm) {
this.rtpyrNm = rtpyrNm;
public <T extends Excl01Query> T setLevyExclId(String levyExclId) {
this.levyExclId = levyExclId;
return self();
}

@ -1,6 +1,5 @@
package cokr.xit.fims.excl;
import cokr.xit.foundation.AbstractEntity;
import java.lang.String;
import lombok.Getter;
import lombok.Setter;
@ -17,84 +16,7 @@ import lombok.Setter;
*/
@Getter
@Setter
public class Excl02 extends AbstractEntity {
// TB_LEVY_EXCL 부과 제외 대장 ///////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String levyExclId;
/**
*
*/
private String levyExclSeCd;
/**
*
*/
private String levyExclSeNm;
/**
*
*/
private String levyExclYmd;
/**
*
*/
private String levyExclRsnCd;
/**
*
*/
private String levyExclRsnNm;
/**
*
*/
private String etcCn;
/**
*
*/
private String delYn;
/**
*
*/
private String regDt;
/**
*
*/
private String rgtr;
/**
*
*/
private String mdfcnDt;
/**
*
*/
private String mdfr;
/**
*
*/
private String delDt;
/**
*
*/
private String dltr;
/**
*
*/
private String delRsn;
// TB_LEVY_EXCL 부과 제외 대장 ///////////////////////////////////////////////////////////////////////
public class Excl02 extends cokr.xit.foundation.AbstractEntity {
// TB_OPNN_SBMSN 의견제출 대장 ///////////////////////////////////////////////////////////////////////
/**
@ -102,6 +24,11 @@ public class Excl02 extends AbstractEntity {
*/
private String opnnId;
/**
* ID
*/
private String crdnId;
/**
*
*/
@ -200,7 +127,7 @@ public class Excl02 extends AbstractEntity {
/**
*
*/
// private String atchFileCnt;
private String atchFileCnt;
/**
*
@ -246,13 +173,53 @@ public class Excl02 extends AbstractEntity {
*
*/
private String opnnSbmsnSttsNm;
/**
*
*/
private String delYn;
/**
*
*/
private String regDt;
/**
*
*/
private String rgtr;
/**
*
*/
private String mdfcnDt;
/**
*
*/
private String mdfr;
/**
*
*/
private String delDt;
/**
*
*/
private String dltr;
/**
*
*/
private String delRsn;
// TB_OPNN_SBMSN 의견제출 대장 ///////////////////////////////////////////////////////////////////////
// TB_CRDN 단속 대장 ///////////////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String crdnId;
// private String crdnId;
/**
*
@ -299,6 +266,11 @@ public class Excl02 extends AbstractEntity {
*/
private String linkId;
/**
* ID
*/
private String rtpyrId;
/**
*
*/
@ -412,7 +384,7 @@ public class Excl02 extends AbstractEntity {
/**
*
*/
private String atchFileCnt;
// private String atchFileCnt;
/**
*
@ -589,7 +561,7 @@ public class Excl02 extends AbstractEntity {
/**
* ID
*/
private String rtpyrId;
// private String rtpyrId;
/**
*
@ -757,116 +729,4 @@ public class Excl02 extends AbstractEntity {
private String wholAddr;
// TB_PAYER 납부자 대장 /////////////////////////////////////////////////////////////////////////////
// TB_CRDN_CVLCPT 단속 민원 대장 /////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String cvlcptLinkId;
/**
*
*/
private String cvlcptInptSeCd;
/**
*
*/
private String cvlcptRcptYmd;
/**
*
*/
private String cvlcptAplySeCd;
/**
*
*/
private String cvlcptAplyNo;
/**
*
*/
private String cvlcptRcptNo;
/**
*
*/
private String cvlcptListNo;
/**
*
*/
private String cvlcptAplcntNm;
/**
*
*/
private String cvlcptAplyDt;
/**
*
*/
private String cvlcptAplyTtlNm;
/**
*
*/
private String cvlcptAplyCn;
/**
*
*/
private String cvlcptGist;
/**
*
*/
private String cvlcptPrcsPicNm;
/**
*
*/
private String cvlcptPrcsPrnmntDt;
/**
*
*/
private String cvlcptPrcsCd;
/**
*
*/
private String cvlcptPrcsSumry;
/**
*
*/
private String cvlcptPrcsRsltCn;
/**
*
*/
private String cvlcptPrcsCmptnDt;
/**
*
*/
private String cvlcptPrcsPic;
/**
*
*/
private String cvlcptTrsmDt;
/**
*
*/
private String cvlcptTrsmCd;
/**
*
*/
private String cvlcptTrsmMsg;
// TB_CRDN_CVLCPT 단속 민원 대장 /////////////////////////////////////////////////////////////////////
}

@ -12,40 +12,39 @@ import cokr.xit.foundation.component.QueryRequest;
* ================================
* </pre>
*/
public class ExclQuery01 extends QueryRequest {
public class Excl02Query extends QueryRequest {
private static final long serialVersionUID = 1L;
// 필수
// 필수 조건
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
// 공통
private String delYn; // 삭제 여부
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
private String schDateTo; // 검색 일자 종료
private String schRegDateOpt; // 등록 일자 구분
private String schRegDateFrom; // 등록 일자 시작
private String schRegDateTo; // 등록 일자 종료
private String schDetailDateOpt; // 상세 검색 일자 구분
private String schDetailDateFrom; // 상세 검색 일자 시작
private String schDetailDateTo; // 상세 검색 일자 종료
private String schDetailUserOpt; // 상세 검색 사용자 구분
private String schDetailUserNm; // 상세 검색 사용자 명
private String schDetailUserCd; // 상세 검색 사용자 코드
// 부과제외 TB_LEVY_EXCL
private String levyExclId; // 부과 제외 ID
private String levyExclSeCd; // 부과 제외 구분 코드
// 의견제출 TB_OPNN_SBMSN
// 검색 조건
private String schOpnnSbmsnSttsCd; // 의견 제출 상태 코드
private String schVhrno; // 차량번호 - 단속(TB_CRDN)
private String schSttrNm; // 진술자 명
//
private String opnnId; // 의견 ID
private String opnnSbmsnSttsCd; // 의견 제출 상태 코드
// 단속 TB_CRDN
private String vhrno; // 차량번호
// 납부자 TB_PAYER
private String rtpyrNo; // 납부자 번호
private String rtpyrNm; // 납부자 명
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
}
public <T extends ExclQuery01> T setSggCd(String sggCd) {
public <T extends Excl02Query> T setSggCd(String sggCd) {
this.sggCd = sggCd;
return self();
@ -55,7 +54,7 @@ public class ExclQuery01 extends QueryRequest {
return ifEmpty(taskSeCd, () -> null);
}
public <T extends ExclQuery01> T setTaskSeCd(String taskSeCd) {
public <T extends Excl02Query> T setTaskSeCd(String taskSeCd) {
this.taskSeCd = taskSeCd;
return self();
@ -65,7 +64,7 @@ public class ExclQuery01 extends QueryRequest {
return ifEmpty(delYn, () -> null);
}
public <T extends ExclQuery01> T setDelYn(String delYn) {
public <T extends Excl02Query> T setDelYn(String delYn) {
this.delYn = delYn;
return self();
@ -75,7 +74,7 @@ public class ExclQuery01 extends QueryRequest {
return ifEmpty(schDateOpt, () -> null);
}
public <T extends ExclQuery01> T setSchDateOpt(String schDateOpt) {
public <T extends Excl02Query> T setSchDateOpt(String schDateOpt) {
this.schDateOpt = schDateOpt;
return self();
@ -85,7 +84,7 @@ public class ExclQuery01 extends QueryRequest {
return ifEmpty(schDateFrom, () -> null);
}
public <T extends ExclQuery01> T setSchDateFrom(String schDateFrom) {
public <T extends Excl02Query> T setSchDateFrom(String schDateFrom) {
this.schDateFrom = schDateFrom;
return self();
@ -95,138 +94,138 @@ public class ExclQuery01 extends QueryRequest {
return ifEmpty(schDateTo, () -> null);
}
public <T extends ExclQuery01> T setSchDateTo(String schDateTo) {
public <T extends Excl02Query> T setSchDateTo(String schDateTo) {
this.schDateTo = schDateTo;
return self();
}
public String getSchDetailDateOpt() {
return ifEmpty(schDetailDateOpt, () -> null);
public String getSchRegDateOpt() {
return ifEmpty(schRegDateOpt, () -> null);
}
public <T extends ExclQuery01> T setSchDetailDateOpt(String schDetailDateOpt) {
this.schDetailDateOpt = schDetailDateOpt;
public <T extends Excl02Query> T setSchRegDateOpt(String schRegDateOpt) {
this.schRegDateOpt = schRegDateOpt;
return self();
}
public String getSchDetailDateFrom() {
return ifEmpty(schDetailDateFrom, () -> null);
public String getSchRegDateFrom() {
return ifEmpty(schRegDateFrom, () -> null);
}
public <T extends ExclQuery01> T setSchDetailDateFrom(String schDetailDateFrom) {
this.schDetailDateFrom = schDetailDateFrom;
public <T extends Excl02Query> T setSchRegDateFrom(String schRegDateFrom) {
this.schRegDateFrom = schRegDateFrom;
return self();
}
public String getSchDetailDateTo() {
return ifEmpty(schDetailDateTo, () -> null);
public String getSchRegDateTo() {
return ifEmpty(schRegDateTo, () -> null);
}
public <T extends ExclQuery01> T setSchDetailDateTo(String schDetailDateTo) {
this.schDetailDateTo = schDetailDateTo;
public <T extends Excl02Query> T setSchRegDateTo(String schRegDateTo) {
this.schRegDateTo = schRegDateTo;
return self();
}
public String getSchDetailUserOpt() {
return ifEmpty(schDetailUserOpt, () -> null);
public String getSchDetailDateOpt() {
return ifEmpty(schDetailDateOpt, () -> null);
}
public <T extends ExclQuery01> T setSchDetailUserOpt(String schDetailUserOpt) {
this.schDetailUserOpt = schDetailUserOpt;
public <T extends Excl02Query> T setSchDetailDateOpt(String schDetailDateOpt) {
this.schDetailDateOpt = schDetailDateOpt;
return self();
}
public String getSchDetailUserNm() {
return ifEmpty(schDetailUserNm, () -> null);
public String getSchDetailDateFrom() {
return ifEmpty(schDetailDateFrom, () -> null);
}
public <T extends ExclQuery01> T setSchDetailUserNm(String schDetailUserNm) {
this.schDetailUserNm = schDetailUserNm;
public <T extends Excl02Query> T setSchDetailDateFrom(String schDetailDateFrom) {
this.schDetailDateFrom = schDetailDateFrom;
return self();
}
public String getSchDetailUserCd() {
return ifEmpty(schDetailUserCd, () -> null);
public String getSchDetailDateTo() {
return ifEmpty(schDetailDateTo, () -> null);
}
public <T extends ExclQuery01> T setSchDetailUserCd(String schDetailUserCd) {
this.schDetailUserCd = schDetailUserCd;
public <T extends Excl02Query> T setSchDetailDateTo(String schDetailDateTo) {
this.schDetailDateTo = schDetailDateTo;
return self();
}
public String getLevyExclId() {
return ifEmpty(levyExclId, () -> null);
public String getSchDetailUserOpt() {
return ifEmpty(schDetailUserOpt, () -> null);
}
public <T extends ExclQuery01> T setLevyExclId(String levyExclId) {
this.levyExclId = levyExclId;
public <T extends Excl02Query> T setSchDetailUserOpt(String schDetailUserOpt) {
this.schDetailUserOpt = schDetailUserOpt;
return self();
}
public String getLevyExclSeCd() {
return ifEmpty(levyExclSeCd, () -> null);
public String getSchDetailUserNm() {
return ifEmpty(schDetailUserNm, () -> null);
}
public <T extends ExclQuery01> T setLevyExclSeCd(String levyExclSeCd) {
this.levyExclSeCd = levyExclSeCd;
public <T extends Excl02Query> T setSchDetailUserNm(String schDetailUserNm) {
this.schDetailUserNm = schDetailUserNm;
return self();
}
public String getOpnnId() {
return ifEmpty(opnnId, () -> null);
public String getSchDetailUserCd() {
return ifEmpty(schDetailUserCd, () -> null);
}
public <T extends ExclQuery01> T setOpnnId(String opnnId) {
this.opnnId = opnnId;
public <T extends Excl02Query> T setSchDetailUserCd(String schDetailUserCd) {
this.schDetailUserCd = schDetailUserCd;
return self();
}
public String getOpnnSbmsnSttsCd() {
return ifEmpty(opnnSbmsnSttsCd, () -> null);
public String getSchOpnnSbmsnSttsCd() {
return ifEmpty(schOpnnSbmsnSttsCd, () -> null);
}
public <T extends ExclQuery01> T setOpnnSbmsnSttsCd(String opnnSbmsnSttsCd) {
this.opnnSbmsnSttsCd = opnnSbmsnSttsCd;
public <T extends Excl02Query> T setSchOpnnSbmsnSttsCd(String schOpnnSbmsnSttsCd) {
this.schOpnnSbmsnSttsCd = schOpnnSbmsnSttsCd;
return self();
}
public String getVhrno() {
return ifEmpty(vhrno, () -> null);
public String getSchVhrno() {
return ifEmpty(schVhrno, () -> null);
}
public <T extends ExclQuery01> T setVhrno(String vhrno) {
this.vhrno = vhrno;
public <T extends Excl02Query> T setSchVhrno(String schVhrno) {
this.schVhrno = schVhrno;
return self();
}
public String getRtpyrNo() {
return ifEmpty(rtpyrNo, () -> null);
public String getSchSttrNm() {
return ifEmpty(schSttrNm, () -> null);
}
public <T extends ExclQuery01> T setRtpyrNo(String rtpyrNo) {
this.rtpyrNo = rtpyrNo;
public <T extends Excl02Query> T setSchSttrNm(String schSttrNm) {
this.schSttrNm = schSttrNm;
return self();
}
public String getRtpyrNm() {
return ifEmpty(rtpyrNm, () -> null);
public String getOpnnId() {
return ifEmpty(opnnId, () -> null);
}
public <T extends ExclQuery01> T setRtpyrNm(String rtpyrNm) {
this.rtpyrNm = rtpyrNm;
public <T extends Excl02Query> T setOpnnId(String opnnId) {
this.opnnId = opnnId;
return self();
}

@ -0,0 +1,597 @@
package cokr.xit.fims.excl;
import java.lang.String;
import lombok.Getter;
import lombok.Setter;
/**
*
* <p> : , .
*
* <pre>
* ============ ============
* 2023-07-03 JoJH
* ================================
* </pre>
*/
@Getter
@Setter
public class Excl03 extends cokr.xit.foundation.AbstractEntity {
// TB_CRDN_RE 단속 재등록 ///////////////////////////////////////////////////////////////////////
/**
* ID
*/
private String reRegId;
/**
* ID
*/
private String crdnId;
/**
* ID
*/
private String newCrdnId;
/**
*
*/
private String crdnRegYmd;
/**
*
*/
private String crdnRegSeCd;
/**
*
*/
private String etcCn;
/**
*
*/
private String delYn;
/**
*
*/
private String regDt;
/**
*
*/
private String rgtr;
/**
*
*/
private String delDt;
/**
*
*/
private String dltr;
/**
*
*/
private String delRsn;
// TB_CRDN_RE 단속 재등록 ///////////////////////////////////////////////////////////////////////
// TB_CRDN 단속 대장 ///////////////////////////////////////////////////////////////////////////////
/**
* ID
*/
// private String crdnId;
/**
*
*/
private String sggCd;
/**
*
*/
private String taskSeCd;
/**
*
*/
private String taskSeNm;
/**
*
*/
// private String crdnRegSeCd;
/**
*
*/
private String crdnRegSeNm;
/**
*
*/
private String crdnInptSeCd;
/**
*
*/
private String crdnInptSeNm;
/**
*
*/
private String linkTblNm;
/**
* ID
*/
private String linkId;
/**
* ID
*/
private String rtpyrId;
/**
*
*/
private String crdnSeCd;
/**
*
*/
private String crdnSeNm;
/**
*
*/
private String crdnYmd;
/**
*
*/
private String crdnTm;
/**
*
*/
private String crdnYmdTm;
/**
*
*/
private String vhrno;
/**
*
*/
private String crdnStdgNm;
/**
*
*/
private String crdnRoadNm;
/**
*
*/
private String crdnPlc;
/**
*
*/
private String dtlCrdnPlc;
/**
* ID
*/
private String teamId;
/**
* ID
*/
private String vltnId;
/**
*
*/
private String crdnSpareaCd;
/**
*
*/
private String crdnSpareaNm;
/**
*
*/
private String crdnBgngTm;
/**
*
*/
private String crdnEndHr;
/**
*
*/
private String crdnSn;
/**
* GPS X
*/
private String gpsX;
/**
* GPS Y
*/
private String gpsY;
/**
* X
*/
private String moscX;
/**
* Y
*/
private String moscY;
/**
*
*/
private String towngYn;
/**
*
*/
private String atchFileCnt;
/**
*
*/
private String vin;
/**
*
*/
private String vhclNm;
/**
*
*/
private String vhclColor;
/**
*
*/
private String useFuelCd;
/**
*
*/
private String usgSeCd;
/**
*
*/
private String mxmmLoadQy;
/**
*
*/
private String tkcarPsncpaCnt;
/**
*
*/
private String carmdlAsortNm;
/**
*
*/
private String carmdlTypeNm;
/**
*
*/
private String carmdlClsfNm;
/**
*
*/
private String ersrYmd;
/**
*
*/
private String ffnlgCarmdlCd;
/**
*
*/
private String parkngPsbltyRsltCd;
/**
*
*/
private String vltnNmtm;
/**
*
*/
private String ovtimeYn;
/**
*
*/
private String rvwSeCd;
/**
*
*/
private String rvwPrcsScrnNm;
/**
*
*/
private String rvwDt;
/**
*
*/
private String rvwr;
/**
*
*/
private String ffnlgAmt;
/**
*
*/
private String ffnlgRductRt;
/**
*
*/
private String levyAmt;
/**
*
*/
private String advntceBgngYmd;
/**
*
*/
private String advntceDudtYmd;
/**
*
*/
private String advntceLevyAmt;
/**
*
*/
private String opnnSbmsnYn;
/**
* ID
*/
private String levyId;
/**
*
*/
private String crdnSttsCd;
/**
*
*/
private String crdnSttsNm;
/**
*
*/
private String crdnSttsChgDt;
/**
*
*/
private String adtnAmt;
/**
*
*/
private String minusAmt;
/**
*
*/
private String rcvmtAmt;
/**
* ID
*/
private String bfrCrdnId;
// TB_CRDN 단속 대장 ///////////////////////////////////////////////////////////////////////////////
// TB_PAYER 납부자 대장 /////////////////////////////////////////////////////////////////////////////
/**
* ID
*/
// private String rtpyrId;
/**
*
*/
private String rtpyrInptSeCd;
/**
*
*/
private String rtpyrInptSeNm;
/**
*
*/
private String rtpyrSeCd;
/**
*
*/
private String rtpyrSeNm;
/**
*
*/
private String rtpyrNo;
/**
*
*/
private String rtpyrNm;
/**
*
*/
private String rtpyrCttpcSeCd;
/**
*
*/
private String rtpyrCttpcSeNm;
/**
*
*/
private String rtpyrCttpc;
/**
*
*/
private String rtpyrEml;
/**
*
*/
private String rtpyrBrdt;
/**
* _
*/
private String rtpyrBrdtFormat;
/**
*
*/
private String rtpyrSttsCd;
/**
*
*/
private String rtpyrSttsNm;
/**
*
*/
private String addrSeCd;
/**
*
*/
private String addrSeNm;
/**
*
*/
private String zip;
/**
*
*/
private String roadNmCd;
/**
*
*/
private String udgdSeCd;
/**
*
*/
private String bmno;
/**
*
*/
private String bsno;
/**
*
*/
private String bldgMngNo;
/**
*
*/
private String stdgCd;
/**
*
*/
private String dongCd;
/**
*
*/
private String mtnSeCd;
/**
*
*/
private String mno;
/**
*
*/
private String sno;
/**
*
*/
private String spclDong;
/**
*
*/
private String spclHo;
/**
*
*/
private String spclAddr;
/**
*
*/
private String addr;
/**
*
*/
private String dtlAddr;
/**
*
*/
private String wholAddr;
// TB_PAYER 납부자 대장 /////////////////////////////////////////////////////////////////////////////
}

@ -0,0 +1,145 @@
package cokr.xit.fims.excl;
import cokr.xit.foundation.component.QueryRequest;
/**
*
* <p> :
*
* <pre>
* ============ ============
* 2023-06-23 JoJH
* ================================
* </pre>
*/
public class Excl03Query extends QueryRequest {
private static final long serialVersionUID = 1L;
// 필수 조건
private String sggCd; // 시군구 코드
private String taskSeCd; // 업무 구분 코드
private String delYn; // 삭제 여부
// 공통 조건
private String schDateOpt; // 검색 일자 구분
private String schDateFrom; // 검색 일자 시작
private String schDateTo; // 검색 일자 종료
private String schDetailUserOpt; // 상세 검색 사용자 구분
private String schDetailUserNm; // 상세 검색 사용자 명
private String schDetailUserCd; // 상세 검색 사용자 코드
// 검색 조건
private String schVhrno; // 차량번호 - 단속(TB_CRDN)
//
private String reRegId; // 재등록 ID
public String getSggCd() {
return ifEmpty(sggCd, () -> null);
}
public <T extends Excl03Query> T setSggCd(String sggCd) {
this.sggCd = sggCd;
return self();
}
public String getTaskSeCd() {
return ifEmpty(taskSeCd, () -> null);
}
public <T extends Excl03Query> T setTaskSeCd(String taskSeCd) {
this.taskSeCd = taskSeCd;
return self();
}
public String getDelYn() {
return ifEmpty(delYn, () -> null);
}
public <T extends Excl03Query> T setDelYn(String delYn) {
this.delYn = delYn;
return self();
}
public String getSchDateOpt() {
return ifEmpty(schDateOpt, () -> null);
}
public <T extends Excl03Query> T setSchDateOpt(String schDateOpt) {
this.schDateOpt = schDateOpt;
return self();
}
public String getSchDateFrom() {
return ifEmpty(schDateFrom, () -> null);
}
public <T extends Excl03Query> T setSchDateFrom(String schDateFrom) {
this.schDateFrom = schDateFrom;
return self();
}
public String getSchDateTo() {
return ifEmpty(schDateTo, () -> null);
}
public <T extends Excl03Query> T setSchDateTo(String schDateTo) {
this.schDateTo = schDateTo;
return self();
}
public String getSchDetailUserOpt() {
return ifEmpty(schDetailUserOpt, () -> null);
}
public <T extends Excl03Query> T setSchDetailUserOpt(String schDetailUserOpt) {
this.schDetailUserOpt = schDetailUserOpt;
return self();
}
public String getSchDetailUserNm() {
return ifEmpty(schDetailUserNm, () -> null);
}
public <T extends Excl03Query> T setSchDetailUserNm(String schDetailUserNm) {
this.schDetailUserNm = schDetailUserNm;
return self();
}
public String getSchDetailUserCd() {
return ifEmpty(schDetailUserCd, () -> null);
}
public <T extends Excl03Query> T setSchDetailUserCd(String schDetailUserCd) {
this.schDetailUserCd = schDetailUserCd;
return self();
}
public String getSchVhrno() {
return ifEmpty(schVhrno, () -> null);
}
public <T extends Excl03Query> T setSchVhrno(String schVhrno) {
this.schVhrno = schVhrno;
return self();
}
public String getReRegId() {
return ifEmpty(reRegId, () -> null);
}
public <T extends Excl03Query> T setReRegId(String reRegId) {
this.reRegId = reRegId;
return self();
}
}

@ -6,7 +6,7 @@ import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.excl.Excl01;
import cokr.xit.fims.excl.ExclQuery01;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
@ -27,13 +27,25 @@ public interface Excl01Mapper extends AbstractMapper {
* @param req
* @return
*/
List<DataObject> selectLevyExclList(ExclQuery01 req);
List<DataObject> selectLevyExclList(Excl01Query req);
/** .
* @param req
* @return
*/
List<Excl01> selectLevyExcls(ExclQuery01 req);
List<Excl01> selectLevyExcls(Excl01Query req);
/** ID .
* @param levyExclId ID
* @return
*/
DataObject selectLevyExclInfo(Excl01Query req);
default DataObject selectLevyExclInfo(String levyExclId) {
DataObject levyExclusion = selectLevyExclInfo(new Excl01Query().setBy("levyExclId").setTerm(levyExclId));
return levyExclusion;
}
/** .
* @param params
@ -51,8 +63,8 @@ public interface Excl01Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean insert(Excl01 excl) {
return excl != null && insertLevyExcl(params().set("excl", excl)) == 1;
default boolean insertLevyExcl(Excl01 excl01) {
return excl01 != null && insertLevyExcl(params().set("excl01", excl01)) == 1;
}
/** .
@ -71,8 +83,8 @@ public interface Excl01Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean update(Excl01 excl) {
return excl != null && updateLevyExcl(params().set("excl", excl)) == 1;
default boolean updateLevyExcl(Excl01 excl01) {
return excl01 != null && updateLevyExcl(params().set("excl01", excl01)) == 1;
}
/** .
@ -91,8 +103,8 @@ public interface Excl01Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean delete(Excl01 excl) {
return excl != null && deleteLevyExcl(params().set("excl", excl)) == 1;
default boolean deleteLevyExcl(Excl01 excl01) {
return excl01 != null && deleteLevyExcl(params().set("excl01", excl01)) == 1;
}
}

@ -6,7 +6,7 @@ import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.excl.Excl02;
import cokr.xit.fims.excl.ExclQuery02;
import cokr.xit.fims.excl.Excl02Query;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
@ -27,13 +27,25 @@ public interface Excl02Mapper extends AbstractMapper {
* @param req
* @return
*/
List<DataObject> selectOpnnSbmsnList(ExclQuery02 req);
List<DataObject> selectOpnnSbmsnList(Excl02Query req);
/** .
* @param req
* @return
*/
List<Excl02> selectOpnnSbmsns(ExclQuery02 req);
List<Excl02> selectOpnnSbmsns(Excl02Query req);
/** ID .
* @param levyExclId ID
* @return
*/
DataObject selectOpnnSbmsnInfo(Excl02Query req);
default DataObject selectOpnnSbmsnInfo(String opnnId) {
DataObject opnnSbmsnInfo = selectOpnnSbmsnInfo(new Excl02Query().setBy("opnnId").setTerm(opnnId));
return opnnSbmsnInfo;
}
/** .
* @param params
@ -51,7 +63,7 @@ public interface Excl02Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean insert(Excl02 excl02) {
default boolean insertOpnnSbmsn(Excl02 excl02) {
return excl02 != null && insertOpnnSbmsn(params().set("excl02", excl02)) == 1;
}
@ -71,7 +83,7 @@ public interface Excl02Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean update(Excl02 excl02) {
default boolean updateOpnnSbmsn(Excl02 excl02) {
return excl02 != null && updateOpnnSbmsn(params().set("excl02", excl02)) == 1;
}
@ -91,7 +103,7 @@ public interface Excl02Mapper extends AbstractMapper {
* <li> false</li>
* </ul>
*/
default boolean delete(Excl02 excl02) {
default boolean deleteOpnnSbmsn(Excl02 excl02) {
return excl02 != null && deleteOpnnSbmsn(params().set("excl02", excl02)) == 1;
}

@ -0,0 +1,90 @@
package cokr.xit.fims.excl.dao;
import java.util.List;
import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
/** DAO
*
* <p> : .
*
* <pre>
* ============ ============
* 2023-07-03 JoJH
* ================================
* </pre>
*/
@Mapper("excl03Mapper")
public interface Excl03Mapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectCrdnReList(Excl03Query req);
/** .
* @param req
* @return
*/
List<Excl03> selectCrdnRes(Excl03Query req);
/** ID .
* @param levyExclId ID
* @return
*/
DataObject selectCrdnReInfo(Excl03Query req);
default DataObject selectCrdnReInfo(String reRegId) {
DataObject crdnReInfo = selectCrdnReInfo(new Excl03Query().setBy("reRegId").setTerm(reRegId));
return crdnReInfo;
}
/** .
* @param params
* <ul><li>"excl03" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertCrdnRe(Map<String, Object> params);
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insertCrdnRe(Excl03 excl03) {
return excl03 != null && insertCrdnRe(params().set("excl03", excl03)) == 1;
}
/** .
* @param params
* <ul><li>"excl03" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteCrdnRe(Map<String, ?> params);
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean deleteCrdnRe(Excl03 excl03) {
return excl03 != null && deleteCrdnRe(params().set("excl03", excl03)) == 1;
}
}

@ -3,7 +3,7 @@ package cokr.xit.fims.excl.service;
import java.util.List;
import cokr.xit.fims.excl.Excl01;
import cokr.xit.fims.excl.ExclQuery01;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.foundation.data.DataObject;
/** .
@ -22,13 +22,19 @@ public interface Excl01Service {
* @param req
* @return
*/
List<DataObject> getLevyExclList(ExclQuery01 req);
List<DataObject> getLevyExclusionList(Excl01Query req);
/** .
* @param req
* @return
/** .
* @param req
* @return
*/
List<Excl01> getLevyExclusions(Excl01Query req);
/** ID .<br />
* @param levyExclId ID
* @return
*/
List<Excl01> getLevyExcls(ExclQuery01 req);
DataObject getLevyExclusionInfo(String levyExclId);
/** .
* @param excl
@ -37,7 +43,7 @@ public interface Excl01Service {
* <li> false</li>
* </ul>
*/
boolean create(Excl01 excl);
boolean createLevyExclusion(Excl01 excl01);
/** .
* @param excl
@ -46,7 +52,7 @@ public interface Excl01Service {
* <li> false</li>
* </ul>
*/
boolean update(Excl01 excl);
boolean updateLevyExclusion(Excl01 excl01);
/** .
* @param excl
@ -55,6 +61,6 @@ public interface Excl01Service {
* <li> false</li>
* </ul>
*/
boolean remove(Excl01 excl);
boolean removeLevyExclusion(Excl01 excl01);
}

@ -3,7 +3,7 @@ package cokr.xit.fims.excl.service;
import java.util.List;
import cokr.xit.fims.excl.Excl02;
import cokr.xit.fims.excl.ExclQuery02;
import cokr.xit.fims.excl.Excl02Query;
import cokr.xit.foundation.data.DataObject;
/** .
@ -22,13 +22,19 @@ public interface Excl02Service {
* @param req
* @return
*/
List<DataObject> getOpnnSbmsnList(ExclQuery02 req);
List<DataObject> getOpinionSubmissionList(Excl02Query req);
/** .
* @param req
* @return
*/
List<Excl02> getOpnnSbmsns(ExclQuery02 req);
List<Excl02> getOpinionSubmissions(Excl02Query req);
/** ID .<br />
* @param opnnId ID
* @return
*/
DataObject getOpinionSubmissionInfo(String opnnId);
/** .
* @param opnnSbmsn
@ -37,7 +43,7 @@ public interface Excl02Service {
* <li> false</li>
* </ul>
*/
boolean create(Excl02 excl02);
boolean createOpinionSubmission(Excl02 excl02);
/** .
* @param opnnSbmsn
@ -46,7 +52,7 @@ public interface Excl02Service {
* <li> false</li>
* </ul>
*/
boolean update(Excl02 excl02);
boolean updateOpinionSubmission(Excl02 excl02);
/** .
* @param opnnSbmsn
@ -55,6 +61,6 @@ public interface Excl02Service {
* <li> false</li>
* </ul>
*/
boolean remove(Excl02 excl02);
boolean removeOpinionSubmission(Excl02 excl02);
}

@ -0,0 +1,56 @@
package cokr.xit.fims.excl.service;
import java.util.List;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.foundation.data.DataObject;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2023-07-03 JoJH
* ================================
* </pre>
*/
public interface Excl03Service {
/** .
* @param req
* @return
*/
List<DataObject> getCrackdownReRegistrationList(Excl03Query req);
/** .
* @param req
* @return
*/
List<Excl03> getCrackdownReRegistrations(Excl03Query req);
/** ID .<br />
* @param reRegId ID
* @return
*/
DataObject getCrackdownReRegistrationInfo(String reRegId);
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
boolean createCrackdownReRegistration(Excl03 excl03);
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
boolean removeCrackdownReRegistration(Excl03 excl03);
}

@ -7,7 +7,7 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.fims.excl.Excl01;
import cokr.xit.fims.excl.ExclQuery01;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.fims.excl.dao.Excl01Mapper;
import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.data.DataObject;
@ -33,18 +33,26 @@ public class Excl01Bean extends AbstractComponent {
* @param req
* @return
*/
public List<DataObject> getLevyExclList(ExclQuery01 req) {
public List<DataObject> getLevyExclusionList(Excl01Query req) {
return excl01Mapper.selectLevyExclList(req);
}
/** .
* @param req
* @return
/** .
* @param req
* @return
*/
public List<Excl01> getLevyExcls(ExclQuery01 req) {
public List<Excl01> getLevyExclusions(Excl01Query req) {
return excl01Mapper.selectLevyExcls(req);
}
/** ID .<br />
* @param levyExclId ID
* @return
*/
public DataObject getLevyExclusionInfo(String levyExclId) {
return excl01Mapper.selectLevyExclInfo(levyExclId);
}
/** .
* @param excl
* @return
@ -52,8 +60,8 @@ public class Excl01Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean create(Excl01 excl) {
return excl01Mapper.insert(excl);
public boolean createLevyExclusion(Excl01 excl01) {
return excl01Mapper.insertLevyExcl(excl01);
}
/** .
@ -63,8 +71,8 @@ public class Excl01Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean update(Excl01 excl) {
return excl01Mapper.update(excl);
public boolean updateLevyExclusion(Excl01 excl01) {
return excl01Mapper.updateLevyExcl(excl01);
}
/** .
@ -74,8 +82,8 @@ public class Excl01Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean remove(Excl01 excl) {
return excl01Mapper.delete(excl);
public boolean removeLevyExclusion(Excl01 excl01) {
return excl01Mapper.deleteLevyExcl(excl01);
}
}

@ -7,7 +7,7 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.fims.excl.Excl01;
import cokr.xit.fims.excl.ExclQuery01;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.fims.excl.service.Excl01Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
@ -30,28 +30,33 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
protected Excl01Bean excl01Bean;
@Override
public List<DataObject> getLevyExclList(ExclQuery01 req) {
return excl01Bean.getLevyExclList(req);
public List<DataObject> getLevyExclusionList(Excl01Query req) {
return excl01Bean.getLevyExclusionList(req);
}
@Override
public List<Excl01> getLevyExcls(ExclQuery01 req) {
return excl01Bean.getLevyExcls(req);
public List<Excl01> getLevyExclusions(Excl01Query req) {
return excl01Bean.getLevyExclusions(req);
}
@Override
public boolean create(Excl01 excl) {
return excl01Bean.create(excl);
public DataObject getLevyExclusionInfo(String levyExclId) {
return excl01Bean.getLevyExclusionInfo(levyExclId);
}
@Override
public boolean update(Excl01 excl) {
return excl01Bean.update(excl);
public boolean createLevyExclusion(Excl01 excl01) {
return excl01Bean.createLevyExclusion(excl01);
}
@Override
public boolean remove(Excl01 excl) {
return excl01Bean.remove(excl);
public boolean updateLevyExclusion(Excl01 excl01) {
return excl01Bean.updateLevyExclusion(excl01);
}
@Override
public boolean removeLevyExclusion(Excl01 excl01) {
return excl01Bean.removeLevyExclusion(excl01);
}
}

@ -7,7 +7,7 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.fims.excl.Excl02;
import cokr.xit.fims.excl.ExclQuery02;
import cokr.xit.fims.excl.Excl02Query;
import cokr.xit.fims.excl.dao.Excl02Mapper;
import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.data.DataObject;
@ -33,7 +33,7 @@ public class Excl02Bean extends AbstractComponent {
* @param req
* @return
*/
public List<DataObject> getOpnnSbmsnList(ExclQuery02 req) {
public List<DataObject> getOpinionSubmissionList(Excl02Query req) {
return excl02Mapper.selectOpnnSbmsnList(req);
}
@ -41,10 +41,18 @@ public class Excl02Bean extends AbstractComponent {
* @param req
* @return
*/
public List<Excl02> getOpnnSbmsns(ExclQuery02 req) {
public List<Excl02> getOpinionSubmissions(Excl02Query req) {
return excl02Mapper.selectOpnnSbmsns(req);
}
/** ID .<br />
* @param opnnId ID
* @return
*/
public DataObject getOpinionSubmissionInfo(String opnnId) {
return excl02Mapper.selectOpnnSbmsnInfo(opnnId);
}
/** .
* @param excl
* @return
@ -52,8 +60,8 @@ public class Excl02Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean create(Excl02 excl02) {
return excl02Mapper.insert(excl02);
public boolean createOpinionSubmission(Excl02 excl02) {
return excl02Mapper.insertOpnnSbmsn(excl02);
}
/** .
@ -63,8 +71,8 @@ public class Excl02Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean update(Excl02 excl02) {
return excl02Mapper.update(excl02);
public boolean updateOpinionSubmission(Excl02 excl02) {
return excl02Mapper.updateOpnnSbmsn(excl02);
}
/** .
@ -74,8 +82,8 @@ public class Excl02Bean extends AbstractComponent {
* <li> false</li>
* </ul>
*/
public boolean remove(Excl02 excl02) {
return excl02Mapper.delete(excl02);
public boolean removeOpinionSubmission(Excl02 excl02) {
return excl02Mapper.deleteOpnnSbmsn(excl02);
}
}

@ -7,7 +7,7 @@ import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.fims.excl.Excl02;
import cokr.xit.fims.excl.ExclQuery02;
import cokr.xit.fims.excl.Excl02Query;
import cokr.xit.fims.excl.service.Excl02Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
@ -30,28 +30,33 @@ public class Excl02ServiceBean extends AbstractServiceBean implements Excl02Serv
protected Excl02Bean excl02Bean;
@Override
public List<DataObject> getOpnnSbmsnList(ExclQuery02 req) {
return excl02Bean.getOpnnSbmsnList(req);
public List<DataObject> getOpinionSubmissionList(Excl02Query req) {
return excl02Bean.getOpinionSubmissionList(req);
}
@Override
public List<Excl02> getOpnnSbmsns(ExclQuery02 req) {
return excl02Bean.getOpnnSbmsns(req);
public List<Excl02> getOpinionSubmissions(Excl02Query req) {
return excl02Bean.getOpinionSubmissions(req);
}
@Override
public boolean create(Excl02 excl02) {
return excl02Bean.create(excl02);
public DataObject getOpinionSubmissionInfo(String opnnId) {
return excl02Bean.getOpinionSubmissionInfo(opnnId);
}
@Override
public boolean update(Excl02 excl02) {
return excl02Bean.update(excl02);
public boolean createOpinionSubmission(Excl02 excl02) {
return excl02Bean.createOpinionSubmission(excl02);
}
@Override
public boolean remove(Excl02 excl02) {
return excl02Bean.remove(excl02);
public boolean updateOpinionSubmission(Excl02 excl02) {
return excl02Bean.updateOpinionSubmission(excl02);
}
@Override
public boolean removeOpinionSubmission(Excl02 excl02) {
return excl02Bean.removeOpinionSubmission(excl02);
}
}

@ -0,0 +1,77 @@
package cokr.xit.fims.excl.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.fims.excl.dao.Excl03Mapper;
import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.data.DataObject;
/** Bean
*
* <p> : DAO(Excl03Mapper)
*
* <pre>
* ============ ============
* 2023-07-03 JoJH
* ================================
* </pre>
*/
@Component("excl03Bean")
public class Excl03Bean extends AbstractComponent {
/** 단속 재등록 정보 DAO */
@Resource(name = "excl03Mapper")
private Excl03Mapper excl03Mapper;
/** .
* @param req
* @return
*/
public List<DataObject> getCrackdownReRegistrationList(Excl03Query req) {
return excl03Mapper.selectCrdnReList(req);
}
/** .
* @param req
* @return
*/
public List<Excl03> getCrackdownReRegistrations(Excl03Query req) {
return excl03Mapper.selectCrdnRes(req);
}
/** ID .<br />
* @param opnnId ID
* @return
*/
public DataObject getCrackdownReRegistrationInfo(String opnnId) {
return excl03Mapper.selectCrdnReInfo(opnnId);
}
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean createCrackdownReRegistration(Excl03 excl03) {
return excl03Mapper.insertCrdnRe(excl03);
}
/** .
* @param excl03
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean removeCrackdownReRegistration(Excl03 excl03) {
return excl03Mapper.deleteCrdnRe(excl03);
}
}

@ -0,0 +1,59 @@
package cokr.xit.fims.excl.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.fims.excl.service.Excl03Service;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2023-07-03 mjkhan
* ================================
* </pre>
*/
@Service("excl03Service")
public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Service {
/** 단속 재등록 정보 Bean */
@Resource(name = "excl03Bean")
private Excl03Bean excl03Bean;
@Override
public List<DataObject> getCrackdownReRegistrationList(Excl03Query req) {
return excl03Bean.getCrackdownReRegistrationList(req);
}
@Override
public List<Excl03> getCrackdownReRegistrations(Excl03Query req) {
return excl03Bean.getCrackdownReRegistrations(req);
}
@Override
public DataObject getCrackdownReRegistrationInfo(String reRegId) {
return excl03Bean.getCrackdownReRegistrationInfo(reRegId);
}
@Override
public boolean createCrackdownReRegistration(Excl03 excl03) {
return excl03Bean.createCrackdownReRegistration(excl03);
}
@Override
public boolean removeCrackdownReRegistration(Excl03 excl03) {
return excl03Bean.removeCrackdownReRegistration(excl03);
}
}

@ -13,34 +13,35 @@ import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.excl.Excl01;
import cokr.xit.fims.excl.ExclQuery01;
import cokr.xit.fims.excl.Excl01Query;
import cokr.xit.fims.excl.service.Excl01Service;
import cokr.xit.foundation.data.DataObject;
/**
*
* <p> :
*
* <pre>
* ============ ============
* 2023-06-23 JoJH
* ================================
* </pre>
*/
*
* <p> :
*
* <pre>
* ============ ============
* 2023-06-23 JoJH
* ================================
* </pre>
*/
@Controller
@RequestMapping(name="부과제외 대장", value="/excl/excl01")
@RequestMapping(name = "부과제외 대장", value = "/excl/excl01")
public class Excl01Controller extends ApplicationController {
/**부과제외 대장 서비스*/
@Resource(name="excl01Service")
@Resource(name = "excl01Service")
protected Excl01Service excl01Service;
/** (excl/excl01/010-main) .
* {@link #getLevyExclList(ExclQuery01) } .
* {@link #getLevyExclList(Excl01Query) } .
* @return /excl/excl01/010-main
*/
@RequestMapping(name="부과제외 관리 메인", value="/010/main.do")
public ModelAndView levyExclManagementMain() {
ModelAndView mav = getLevyExclList(new ExclQuery01().setPageNum(1));
@RequestMapping(name = "부과제외 관리 메인", value = "/010/main.do")
public ModelAndView levyExclusionMain() {
ModelAndView mav = getLevyExclusionList(new Excl01Query().setPageNum(1));
// View(jsp)
mav.setViewName("fims/excl/excl01010-main");
@ -48,8 +49,8 @@ public class Excl01Controller extends ApplicationController {
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM021", "FIM054");
mav.addObject("FIM021List", commonCodes.get("FIM021"));
mav.addObject("FIM054List", commonCodes.get("FIM054"));
mav.addObject("FIM021List", commonCodes.get("FIM021")); // 부과 제외 구분 코드(LEVY_EXCL_SE_CD)
mav.addObject("FIM054List", commonCodes.get("FIM054")); // 업무 구분 코드(TASK_SE_CD)
addCodes(commonCodes, mav, "FIM021", "FIM054");
// View(jsp)에서 사용할 id 뒤에 붙일 suffix
@ -59,7 +60,7 @@ public class Excl01Controller extends ApplicationController {
}
/** .<br />
* {@link LevyExclService#getLevyExclList(ExclQuery01)}
* {@link LevyExclService#getLevyExclList(Excl01Query)}
* @param req
* @return jsonView
* <pre><code> {
@ -69,13 +70,34 @@ public class Excl01Controller extends ApplicationController {
* "levyExclTotal":
* }</code></pre>
*/
@RequestMapping(name="부과제외 대장 조회", value="/010/list.do")
public ModelAndView getLevyExclList(ExclQuery01 req) {
List<?> result = excl01Service.getLevyExclList(setFetchSize(req));
@RequestMapping(name = "부과제외 대장 조회", value = "/010/list.do")
public ModelAndView getLevyExclusionList(Excl01Query req) {
List<?> result = excl01Service.getLevyExclusionList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "levyExcl");
}
/** ID .
* @param levyExclId ID
* @return fims/excl/excl01020-info jsonView
* <pre>{
* "levyExclusionInfo":
* }</pre>
*/
@RequestMapping(name = "부과제외 정보 조회", value = "/020/info.do")
public ModelAndView getLevyExclusionInfo(String levyExclId) {
if (!isEmpty(levyExclId)) {
DataObject levyExclusionInfo = excl01Service.getLevyExclusionInfo(levyExclId);
boolean json = jsonResponse();
return new ModelAndView(json ? "jsonView" : "fims/excl/excl01020-info")
.addObject("levyExclusionInfo", json ? levyExclusionInfo : toJson(levyExclusionInfo));
} else {
return new ModelAndView("fims/excl/excl01020-info");
}
}
/** .
* @param levyExcl
* @return jsonView
@ -83,9 +105,9 @@ public class Excl01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name="부과제외 대장 등록", value="/010/create.do")
public ModelAndView create(Excl01 excl) {
boolean saved = excl01Service.create(excl);
@PostMapping(name = "부과제외 대장 등록", value = "/010/create.do")
public ModelAndView createLevyExclusion(Excl01 excl01) {
boolean saved = excl01Service.createLevyExclusion(excl01);
return new ModelAndView("jsonView")
.addObject("saved", saved);
@ -98,9 +120,9 @@ public class Excl01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name="부과제외 대장 수정", value="/010/update.do")
public ModelAndView update(Excl01 excl) {
boolean saved = excl01Service.update(excl);
@PostMapping(name = "부과제외 대장 수정", value = "/010/update.do")
public ModelAndView updateLevyExclusion(Excl01 excl01) {
boolean saved = excl01Service.updateLevyExclusion(excl01);
return new ModelAndView("jsonView")
.addObject("saved", saved);
@ -114,9 +136,9 @@ public class Excl01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name="부과제외 대장 제거", value="/010/remove.do")
public ModelAndView remove(Excl01 excl) {
boolean saved = excl01Service.remove(excl);
@PostMapping(name = "부과제외 대장 제거", value = "/010/remove.do")
public ModelAndView removeLevyExclusion(Excl01 excl01) {
boolean saved = excl01Service.removeLevyExclusion(excl01);
return new ModelAndView("jsonView")
.addObject("saved", saved);

@ -13,8 +13,9 @@ import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.excl.Excl02;
import cokr.xit.fims.excl.ExclQuery02;
import cokr.xit.fims.excl.Excl02Query;
import cokr.xit.fims.excl.service.Excl02Service;
import cokr.xit.foundation.data.DataObject;
/**
*
@ -27,20 +28,20 @@ import cokr.xit.fims.excl.service.Excl02Service;
* </pre>
*/
@Controller
@RequestMapping(name="의견제출 대장", value="/excl/excl02")
@RequestMapping(name = "의견제출 대장", value = "/excl/excl02")
public class Excl02Controller extends ApplicationController {
/**의견제출 대장 서비스*/
@Resource(name="excl02Service")
@Resource(name = "excl02Service")
protected Excl02Service excl02Service;
/** (excl/excl02/010-main) .
* {@link #getOpnnSbmsnList(ExclQuery01) } .
* @return /excl/excl02/010-main
*/
@RequestMapping(name="의견제출 관리 메인", value="/010/main.do")
public ModelAndView opnnSbmsnManagementMain() {
ModelAndView mav = getOpnnSbmsnList(new ExclQuery02().setPageNum(1));
@RequestMapping(name = "의견제출 관리 메인", value = "/010/main.do")
public ModelAndView opinionSubmissionMain() {
ModelAndView mav = getOpinionSubmissionList(new Excl02Query().setPageNum(1));
// View(jsp)
mav.setViewName("fims/excl/excl02010-main");
@ -48,19 +49,18 @@ public class Excl02Controller extends ApplicationController {
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM031", "FIM054");
mav.addObject("FIM031List", commonCodes.get("FIM031"));
mav.addObject("FIM054List", commonCodes.get("FIM054"));
mav.addObject("FIM031List", commonCodes.get("FIM031")); // 의견 제출 답변 결과(OPNN_SBMSN_STTS_CD)
mav.addObject("FIM054List", commonCodes.get("FIM054")); // 업무 구분 코드(TASK_SE_CD)
addCodes(commonCodes, mav, "FIM031", "FIM054");
// View(jsp)에서 사용할 id 뒤에 붙일 suffix
mav.addObject("pageName", "excl02010");
// return mav.addObject("opnnSbmsnList", toJson(mav.getModel().get("opnnSbmsnList")));
return mav;
}
/** .<br />
* {@link Excl02Service#getOpnnSbmsnList(ExclQuery01)}
* {@link Excl02Service#getOpnnSbmsnList(Excl02Query)}
* @param req
* @return jsonView
* <pre><code> {
@ -70,13 +70,34 @@ public class Excl02Controller extends ApplicationController {
* "opnnSbmsnTotal":
* }</code></pre>
*/
@RequestMapping(name="의견제출 대장 조회", value="/010/list.do")
public ModelAndView getOpnnSbmsnList(ExclQuery02 req) {
List<?> result = excl02Service.getOpnnSbmsnList(setFetchSize(req));
@RequestMapping(name = "의견제출 대장 조회", value = "/010/list.do")
public ModelAndView getOpinionSubmissionList(Excl02Query req) {
List<?> result = excl02Service.getOpinionSubmissionList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "opnnSbmsn");
}
/** ID .
* @param opnnId ID
* @return fims/excl/excl02010-main jsonView
* <pre>{
* "opnnSbmsnInfo":
* }</pre>
*/
@RequestMapping(name = "의견제출 정보 조회", value = "/020/info.do")
public ModelAndView getOpinionSubmissionInfo(String opnnId) {
if (!isEmpty(opnnId)) {
DataObject opinionSubmissionInfo = excl02Service.getOpinionSubmissionInfo(opnnId);
boolean json = jsonResponse();
return new ModelAndView(json ? "jsonView" : "fims/excl/excl02020-info")
.addObject("opinionSubmissionInfo", json ? opinionSubmissionInfo : toJson(opinionSubmissionInfo));
} else {
return new ModelAndView("fims/excl/excl02020-info");
}
}
/** .
* @param opnnSbmsn
* @return jsonView
@ -85,8 +106,8 @@ public class Excl02Controller extends ApplicationController {
* }</code></pre>
*/
@PostMapping(name="의견제출 대장 등록", value="/010/create.do")
public ModelAndView create(Excl02 excl02) {
boolean saved = excl02Service.create(excl02);
public ModelAndView createOpinionSubmission(Excl02 excl02) {
boolean saved = excl02Service.createOpinionSubmission(excl02);
return new ModelAndView("jsonView")
.addObject("saved", saved);
@ -100,8 +121,8 @@ public class Excl02Controller extends ApplicationController {
* }</code></pre>
*/
@PostMapping(name="의견제출 대장 수정", value="/010/update.do")
public ModelAndView update(Excl02 excl02) {
boolean saved = excl02Service.update(excl02);
public ModelAndView updateOpinionSubmission(Excl02 excl02) {
boolean saved = excl02Service.updateOpinionSubmission(excl02);
return new ModelAndView("jsonView")
.addObject("saved", saved);
@ -116,8 +137,8 @@ public class Excl02Controller extends ApplicationController {
* }</code></pre>
*/
@PostMapping(name="의견제출 대장 제거", value="/010/remove.do")
public ModelAndView remove(Excl02 excl02) {
boolean saved = excl02Service.remove(excl02);
public ModelAndView removeOpinionSubmission(Excl02 excl02) {
boolean saved = excl02Service.removeOpinionSubmission(excl02);
return new ModelAndView("jsonView")
.addObject("saved", saved);

@ -0,0 +1,130 @@
package cokr.xit.fims.excl.web;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.excl.Excl03;
import cokr.xit.fims.excl.Excl03Query;
import cokr.xit.fims.excl.service.Excl03Service;
import cokr.xit.foundation.data.DataObject;
/**
*
* <p> :
*
* <pre>
* ============ ============
* 2023-07-03 JoJH
* ================================
* </pre>
*/
@Controller
@RequestMapping(name = "단속 재등록", value = "/excl/excl03")
public class Excl03Controller extends ApplicationController {
/**단속 재등록 서비스*/
@Resource(name = "excl03Service")
private Excl03Service excl03Service;
/** (excl03/excl03-main) .
* {@link #getExcl03List(Excl03Query) } .
* @return /excl03/excl03-main
*/
@RequestMapping(name = "단속 재등록 메인", value = "/010/main.do")
public ModelAndView crackdownReRegistrationMain() {
ModelAndView mav = getCrackdownReRegistrationList(new Excl03Query().setPageNum(1));
// View(jsp)
mav.setViewName("fims/excl/excl03010-main");
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM054");
mav.addObject("FIM054List", commonCodes.get("FIM054")); // 업무 구분 코드(TASK_SE_CD)
addCodes(commonCodes, mav, "FIM054");
// View(jsp)에서 사용할 id 뒤에 붙일 suffix
mav.addObject("pageName", "excl03010");
return mav;
}
/** .<br />
* {@link Excl03Service#getExcl03List(Excl03Query)}
* @param req
* @return jsonView
* <pre><code> {
* "excl03List": [ ]
* "excl03Start":
* "excl03Fetch":
* "excl03Total":
* }</code></pre>
*/
@RequestMapping(name = "단속 재등록 리스트 조회", value = "/010/list.do")
public ModelAndView getCrackdownReRegistrationList(Excl03Query req) {
List<?> result = excl03Service.getCrackdownReRegistrationList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "crdnRe");
}
/** ID .
* @param reRegId ID
* @return fims/excl/excl03020-info jsonView
* <pre>{
* "opnnSbmsnInfo":
* }</pre>
*/
@RequestMapping(name="단속 재등록 정보 조회", value="/020/info.do")
public ModelAndView getCrackdownReRegistrationInfo(String reRegId) {
if (!isEmpty(reRegId)) {
DataObject crackdownReRegistrationInfo = excl03Service.getCrackdownReRegistrationInfo(reRegId);
boolean json = jsonResponse();
return new ModelAndView(json ? "jsonView" : "fims/excl/excl03020-info")
.addObject("crackdownReRegistrationInfo", json ? crackdownReRegistrationInfo : toJson(crackdownReRegistrationInfo));
} else {
return new ModelAndView("fims/excl/excl03020-info");
}
}
/** .
* @param excl03
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "단속 재등록 등록", value = "/010/create.do")
public ModelAndView createCrackdownReRegistration(Excl03 excl03) {
boolean saved = excl03Service.createCrackdownReRegistration(excl03);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
/** .
* @param excl03IDs
* @return jsonView
* <pre><code> {
* "affected":
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "단속 재등록 제거", value = "/010/remove.do")
public ModelAndView removeCrackdownReRegistration(Excl03 excl03) {
boolean saved = excl03Service.removeCrackdownReRegistration(excl03);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
}

@ -7,15 +7,17 @@
2023-06-23 JoJH 최초 작성
============================ -->
<resultMap id="levyExclRow" type="cokr.xit.fims.excl.Excl01">
<!-- TB_LEVY_EXCL 부과 제외 대장 -->
<resultMap id="excl01Row" type="cokr.xit.fims.excl.Excl01">
<!-- TB_LEVY_EXCL 부과제외 대장 -->
<result property="levyExclId" column="LEVY_EXCL_ID" /> <!-- 부과 제외 ID -->
<result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드 -->
<result property="taskSeCd" column="TASK_SE_CD" /> <!-- 업무 구분 코드 -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="levyExclSeCd" column="LEVY_EXCL_SE_CD" /> <!-- 부과 제외 구분 코드 -->
<result property="levyExclSeNm" column="LEVY_EXCL_SE_NM" /> <!-- 부과 제외 구분 명 -->
<result property="levyExclYmd" column="LEVY_EXCL_YMD" /> <!-- 부과 제외 일자 -->
<result property="levyExclRsnCd" column="LEVY_EXCL_RSN_CD" /> <!-- 부과 제외 사유 코드 -->
<result property="levyExclRsnNm" column="LEVY_EXCL_RSN_NM" /> <!-- 부과 제외 사유 명 -->
<result property="levyExclYmd" column="LEVY_EXCL_YMD" /> <!-- 부과제외 일자 -->
<result property="levyExclSeCd" column="LEVY_EXCL_SE_CD" /> <!-- 부과제외 구분 코드 -->
<result property="levyExclSeNm" column="LEVY_EXCL_SE_NM" /> <!-- 부과제외 구분 명 -->
<result property="levyExclRsnCd" column="LEVY_EXCL_RSN_CD" /> <!-- 부과제외 사유 코드 -->
<result property="levyExclRsnNm" column="LEVY_EXCL_RSN_NM" /> <!-- 부과제외 사유 명 -->
<result property="etcCn" column="ETC_CN" /> <!-- 기타 내용 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="regDt" column="REG_DT" /> <!-- 등록 일시 -->
@ -27,37 +29,13 @@
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="select">
SELECT A.LEVY_EXCL_ID /* 부과 제외 ID */
, A.CRDN_ID /* 단속 ID */
, A.LEVY_EXCL_SE_CD /* 부과 제외 구분 코드 */
, A.LEVY_EXCL_YMD /* 부과 제외 일자 */
, A.LEVY_EXCL_RSN_CD /* 부과 제외 사유 코드 */
, A.ETC_CN /* 기타 내용 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.MDFCN_DT /* 수정 일시 */
, A.MDFR /* 수정자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
FROM TB_LEVY_EXCL A
</sql>
<select id="selectLevyExcls" parameterType="map" resultMap="levyExclRow">/* 부과제외 대장 객체 가져오기(excl01Mapper.selectLevyExcls) */
<include refid="select" />
WHERE A.LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */
<include refid="utility.orderBy" />
</select>
<sql id="selectList">
SELECT A.LEVY_EXCL_ID /* 부과 제외 ID */
SELECT A.LEVY_EXCL_ID /* 부과제외 ID */
, A.CRDN_ID /* 단속 ID */
, A.LEVY_EXCL_SE_CD /* 부과 제외 구분 코드 */
, A.LEVY_EXCL_SE_CD /* 부과제외 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM021', A.LEVY_EXCL_SE_CD) FROM DUAL) AS LEVY_EXCL_SE_NM /* 부과 제외 구분 명 */
, A.LEVY_EXCL_YMD /* 부과 제외 일자 */
, A.LEVY_EXCL_RSN_CD /* 부과 제외 사유 코드 */
, A.LEVY_EXCL_YMD /* 부과제외 일자 */
, A.LEVY_EXCL_RSN_CD /* 부과제외 사유 코드 */
, (SELECT FN_GET_CODE_NM('FIM022', A.LEVY_EXCL_RSN_CD) FROM DUAL) AS LEVY_EXCL_RSN_NM /* 부과 제외 사유 명 */
, A.ETC_CN /* 기타 내용 */
, A.DEL_YN /* 삭제 여부 */
@ -70,8 +48,10 @@
, A.DEL_RSN /* 삭제 사유 */
, C.SGG_CD /* 시군구 코드 */
, C.TASK_SE_CD /* 업무 구분 코드 */
, C.CRDN_INPT_SE_CD /* 단속 입력 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM003', C.CRDN_INPT_SE_CD) FROM DUAL) AS CRDN_INPT_SE_NM /* 단속 입력 구분 명 */
, C.CRDN_SE_CD /* 단속 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 */
, C.CRDN_YMD /* 단속 일자 */
, C.CRDN_TM /* 단속 시각 */
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM /* 단속 일시 */
@ -80,6 +60,8 @@
, C.CRDN_ROAD_NM /* 단속 도로 명 */
, C.CRDN_PLC /* 단속 장소 */
, C.DTL_CRDN_PLC /* 상세 단속 장소 */
, C.FFNLG_AMT /* 과태료 금액 */
, C.LEVY_AMT /* 부과 금액 */
, C.CRDN_STTS_CD /* 단속 상태 코드 */
, (SELECT FN_GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, D.RTPYR_ID /* 납부자 ID */
@ -98,79 +80,131 @@
, E.CVLCPT_APLCNT_NM /* 민원 신청인 명 */
, E.CVLCPT_PRCS_PIC_NM /* 민원 처리 담당자 명 */
FROM TB_LEVY_EXCL A
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
LEFT OUTER JOIN TB_PAYER D ON (C.RTPYR_ID = D.RTPYR_ID)
LEFT OUTER JOIN TB_CRDN_CVLCPT E ON (C.CRDN_ID = E.CRDN_ID AND E.DEL_YN = 'N')
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
LEFT OUTER JOIN TB_PAYER D ON (C.RTPYR_ID = D.RTPYR_ID)
LEFT OUTER JOIN TB_CRDN_CVLCPT E ON (C.CRDN_ID = E.CRDN_ID AND E.DEL_YN = 'N')
</sql>
<select id="selectLevyExclList" parameterType="map" resultType="dataobject">/* 부과제외 대장 목록 조회(excl01Mapper.selectLevyExclList) */
<include refid="utility.paging-prefix" />
<include refid="selectList" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
<choose>
<when test="schDateOpt == 'levyExclYmd'">
<if test="schDateFrom != null">
AND A.LEVY_EXCL_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 부과 제외 일자 일자 시작 */
AND A.LEVY_EXCL_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 부과제외 일자 시작 */
</if>
<if test="schDateTo != null">
AND A.LEVY_EXCL_YMD <![CDATA[ <= ]]> #{schDateTo} /* 부과제외 일자 종료 */
</if>
</when>
<when test="schDateOpt == 'crdnYmd'">
<if test="schDateFrom != null">
AND C.CRDN_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 단속 일자 시작 */
</if>
<if test="schDateTo != null">
AND A.LEVY_EXCL_YMD <![CDATA[ <= ]]> #{schDateTo} /* 부과 제외 일자 일자 종료 */
AND C.CRDN_YMD <![CDATA[ <= ]]> #{schDateTo} /* 단속 일자 종료 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<if test = "levyExclSeCd != null">
AND A.LEVY_EXCL_SE_CD = #{levyExclSeCd} /* 부과 제외 구분 코드 */
<if test = "schLevyExclSeCd != null">
AND A.LEVY_EXCL_SE_CD = #{schLevyExclSeCd} /* 부과 제외 구분 코드 */
</if>
<if test = "schVhrno != null">
AND C.VHRNO = #{schVhrno} /* 차량번호 */
</if>
<if test = "schRtpyrNm != null">
AND D.RTPYR_NM = #{schRtpyrNm} /* 납부자 명 */
</if>
<choose>
<when test="schDetailDateOpt == 'regDt'">
<if test="schDetailDateFrom != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} /* 등록 일자 일자 시작 */
<when test="schRegDateOpt == 'regDt'">
<if test="schRegDateFrom != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ >= ]]> #{schRegDateFrom} /* 등록 일자 시작 */
</if>
<if test="schDetailDateTo != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} /* 등록 일자 일자 종료 */
<if test="schRegDateTo != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ <= ]]> #{schRegDateTo} /* 등록 일자 종료 */
</if>
</when>
<when test="schDetailDateOpt == 'mdfcnDt'">
<if test="schDetailDateFrom != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} /* 수정 일자 일자 시작 */
<when test="schRegDateOpt == 'mdfcnDt'">
<if test="schRegDateFrom != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ >= ]]> #{schRegDateFrom} /* 수정 일자 시작 */
</if>
<if test="schDetailDateTo != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} /* 수정 일자 일자 종료 */
<if test="schRegDateTo != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ <= ]]> #{schRegDateTo} /* 수정 일자 종료 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<if test="by != null and term != null">
AND ${by} LIKE CONCAT('%', #{term}, '%') /* 동적 검색 */
</if>
<choose>
<when test="schDetailUserOpt == 'rgtr'">
<if test="schDetailUserCd != null">
AND A.RGTR = #{schDetailUserCd} /* 등록자 코드 */
AND A.RGTR = #{schDetailUserCd} /* 등록자 코드 */
</if>
</when>
<when test="schDetailUserOpt == 'mdfr'">
<if test="schDetailUserCd != null">
AND A.MDFR = #{schDetailUserCd} /* 수정자 코드 */
AND A.MDFR = #{schDetailUserCd} /* 수정자 코드 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<sql id="select">
SELECT A.LEVY_EXCL_ID /* 부과제외 ID */
, A.CRDN_ID /* 단속 ID */
, A.LEVY_EXCL_SE_CD /* 부과제외 구분 코드 */
, A.LEVY_EXCL_YMD /* 부과제외 일자 */
, A.LEVY_EXCL_RSN_CD /* 부과제외 사유 코드 */
, A.ETC_CN /* 기타 내용 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.MDFCN_DT /* 수정 일시 */
, A.MDFR /* 수정자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
FROM TB_LEVY_EXCL A
</sql>
<select id="selectLevyExclInfo" parameterType="map" resultMap="excl01Row">/* 부과제외 대장 객체 가져오기(excl01Mapper.selectLevyExclInfo) */
<include refid="select" />
WHERE A.LEVY_EXCL_ID = #{levyExclId} /* 부과 제외 ID */
<include refid="utility.orderBy" />
</select>
<select id="selectLevyExcls" parameterType="map" resultMap="excl01Row">/* 부과제외 대장 객체 가져오기(excl01Mapper.selectLevyExcls) */
<include refid="select" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
<if test="levyExclIds != null">
AND A.LEVY_EXCL_ID IN (
<foreach collection="levyExclIds" item="levyExclId" separator=","> #{levyExclId} </foreach>
)
</if>
<include refid="utility.orderBy" />
</select>
<insert id="insertLevyExcl" parameterType="map">/* 부과제외 대장 등록(excl01Mapper.insertLevyExcl) */
INSERT
INTO TB_LEVY_EXCL (
LEVY_EXCL_ID /* 부과 제외 ID */
, SGG_CD /* 시군구 코드 */
, TASK_SE_CD /* 업무 구분 코드 */
, CRDN_ID /* 단속 ID */
, LEVY_EXCL_SE_CD /* 부과 제외 구분 코드 */
, LEVY_EXCL_YMD /* 부과 제외 일자 */
, LEVY_EXCL_SE_CD /* 부과 제외 구분 코드 */
, LEVY_EXCL_RSN_CD /* 부과 제외 사유 코드 */
, ETC_CN /* 기타 내용 */
, DEL_YN /* 삭제 여부 */
@ -184,9 +218,11 @@
)
VALUES (
#{levyExclId} /* 부과 제외 ID */
, #{sggCd} /* 시군구 코드 */
, #{taskSeCd} /* 업무 구분 코드 */
, #{crdnId} /* 단속 ID */
, #{levyExclSeCd} /* 부과 제외 구분 코드 */
, #{levyExclYmd} /* 부과 제외 일자 */
, #{levyExclSeCd} /* 부과 제외 구분 코드 */
, #{levyExclRsnCd} /* 부과 제외 사유 코드 */
, #{etcCn} /* 기타 내용 */
, #{delYn} /* 삭제 여부 */
@ -202,8 +238,8 @@
<update id="updateLevyExcl" parameterType="map">/* 부과제외 대장 수정(excl01Mapper.updateLevyExcl) */
UPDATE TB_LEVY_EXCL
SET LEVY_EXCL_SE_CD = #{levyExclSeCd} /* 부과 제외 구분 코드 */
, LEVY_EXCL_YMD = #{levyExclYmd} /* 부과 제외 일자 */
SET LEVY_EXCL_YMD = #{levyExclYmd} /* 부과 제외 일자 */
, LEVY_EXCL_SE_CD = #{levyExclSeCd} /* 부과 제외 구분 코드 */
, LEVY_EXCL_RSN_CD = #{levyExclRsnCd} /* 부과 제외 사유 코드 */
, ETC_CN = #{etcCn} /* 기타 내용 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */

@ -7,7 +7,7 @@
2023-06-27 JoJH 최초 작성
============================ -->
<resultMap id="opnnSbmsnRow" type="cokr.xit.fims.excl.Excl02">
<resultMap id="excl02Row" type="cokr.xit.fims.excl.Excl02">
<!-- TB_OPNN_SBMSN 의견제출 대장 -->
<result property="opnnId" column="OPNN_ID" /> <!-- 의견 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
@ -50,56 +50,6 @@
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="select">
SELECT A.OPNN_ID /* 의견 ID */
, A.CRDN_ID /* 단속 ID */
, A.RCPT_NO /* 접수 번호 */
, A.RCPT_YMD /* 접수 일자 */
, A.RCPT_SE_CD /* 접수 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM029', A.RCPT_SE_CD) FROM DUAL) AS RCPT_SE_NM /* 접수 구분 코드 */
, A.OWNR_REL_CD /* 소유주 관계 코드 */
, (SELECT FN_GET_CODE_NM('FIM032', A.OWNR_REL_CD) FROM DUAL) AS OWNR_REL_NM /* 소유주 관계 코드 */
, A.STTR_NM /* 진술자 명 */
, A.STTR_BRDT /* 진술자 생년월일 */
, (SELECT FN_GET_BRDT_FORMAT(A.STTR_BRDT, '.') FROM DUAL) AS STTR_BRDT_FORMAT /* 납부자 생년월일 */
, A.STTR_RRNO /* 진술자 주민등록번호 */
, A.STTR_ADDR /* 진술자 주소 */
, A.STTR_DADDR /* 진술자 상세주소 */
, A.STTR_ZIP /* 진술자 우편번호 */
, A.STTR_CTTPC /* 진술자 연락처 */
, A.STTR_EML /* 진술자 이메일 */
, A.OPNN_SBMSN_CN /* 의견 제출 내용 */
, A.OPNN_SBMSN_SE_CD /* 의견 제출 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM033', A.OPNN_SBMSN_SE_CD) FROM DUAL) AS OPNN_SBMSN_SE_NM /* 의견 제출 구분 명 */
, A.OPNN_SBMSN_GIST /* 의견 제출 요지 */
, A.ATCH_FILE_CNT /* 첨부 파일 수 */
, A.DOC_NO /* 문서 번호 */
, A.NTFCTN_SE_CD /* 통보 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM030', A.NTFCTN_SE_CD) FROM DUAL) AS NTFCTN_SE_NM /* 통보 구분 코드 */
, A.PIC_RVW_OPNN /* 담당자 검토 의견 */
, A.ANS_CN /* 답변 내용 */
, A.ANS_YMD /* 답변 일자 */
, A.ANS_TM /* 답변 시각 */
, (CONCAT(A.ANS_YMD, A.ANS_TM)) AS ANS_YMD_TM /* 답변 일시 */
, A.OPNN_SBMSN_STTS_CD /* 의견 제출 상태 코드 */
, (SELECT FN_GET_CODE_NM('FIM031', A.OPNN_SBMSN_STTS_CD) FROM DUAL) AS OPNN_SBMSN_STTS_NM /* 의견 제출 상태 명 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.MDFCN_DT /* 수정 일시 */
, A.MDFR /* 수정자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
FROM TB_OPNN_SBMSN A
</sql>
<select id="selectOpnnSbmsns" parameterType="map" resultMap="opnnSbmsnRow">/* 의견제출 대장 객체 가져오기(opnnSbmsnMapper.selectOpnnSbmsns) */
<include refid="select" />
WHERE A.OPNN_ID = #{opnnId} /* 의견 ID */
<include refid="utility.orderBy" />
</select>
<sql id="selectList">
SELECT A.OPNN_ID /* 의견 ID */
, A.CRDN_ID /* 단속 ID */
@ -143,8 +93,10 @@
, A.DEL_RSN /* 삭제 사유 */
, C.SGG_CD /* 시군구 코드 */
, C.TASK_SE_CD /* 업무 구분 코드 */
, C.CRDN_INPT_SE_CD /* 단속 입력 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM003', C.CRDN_INPT_SE_CD) FROM DUAL) AS CRDN_INPT_SE_NM /* 단속 입력 구분 명 */
, C.CRDN_SE_CD /* 단속 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 */
, C.CRDN_YMD /* 단속 일자 */
, C.CRDN_TM /* 단속 시각 */
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM /* 단속 일시 */
@ -153,6 +105,8 @@
, C.CRDN_ROAD_NM /* 단속 도로 명 */
, C.CRDN_PLC /* 단속 장소 */
, C.DTL_CRDN_PLC /* 상세 단속 장소 */
, C.FFNLG_AMT /* 과태료 금액 */
, C.LEVY_AMT /* 부과 금액 */
, C.CRDN_STTS_CD /* 단속 상태 코드 */
, (SELECT FN_GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, D.RTPYR_ID /* 납부자 ID */
@ -165,63 +119,68 @@
, D.ADDR /* 주소 */
, D.DTL_ADDR /* 상세 주소 */
FROM TB_OPNN_SBMSN A
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
LEFT OUTER JOIN TB_PAYER D ON (C.RTPYR_ID = D.RTPYR_ID)
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
LEFT OUTER JOIN TB_PAYER D ON (C.RTPYR_ID = D.RTPYR_ID)
</sql>
<select id="selectOpnnSbmsnList" parameterType="map" resultType="dataobject">/* 의견제출 대장 목록 조회(opnnSbmsnMapper.selectOpnnSbmsnList) */
<select id="selectOpnnSbmsnList" parameterType="map" resultType="dataobject">/* 의견제출 대장 목록 조회(excl02Mapper.selectOpnnSbmsnList) */
<include refid="utility.paging-prefix" />
<include refid="selectList" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
<choose>
<when test="schDateOpt == 'rcptYmd'">
<if test="schDateFrom != null">
AND A.RCPT_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 접수 일자 시작 */
AND A.RCPT_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 접수 일자 시작 */
</if>
<if test="schDateTo != null">
AND A.RCPT_YMD <![CDATA[ <= ]]> #{schDateTo} /* 접수 일자 종료 */
AND A.RCPT_YMD <![CDATA[ <= ]]> #{schDateTo} /* 접수 일자 종료 */
</if>
</when>
<when test="schDateOpt == 'ansYmd'">
<if test="schDateFrom != null">
AND A.ANS_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 답변 일자 시작 */
AND A.ANS_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 답변 일자 시작 */
</if>
<if test="schDateTo != null">
AND A.ANS_YMD <![CDATA[ <= ]]> #{schDateTo} /* 답변 일자 종료 */
AND A.ANS_YMD <![CDATA[ <= ]]> #{schDateTo} /* 답변 일자 종료 */
</if>
</when>
<when test="schDateOpt == 'crdnYmd'">
<if test="schDateFrom != null">
AND C.CRDN_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 단속 일자 시작 */
AND C.CRDN_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 단속 일자 시작 */
</if>
<if test="schDateTo != null">
AND C.CRDN_YMD <![CDATA[ <= ]]> #{schDateTo} /* 단속 일자 종료 */
AND C.CRDN_YMD <![CDATA[ <= ]]> #{schDateTo} /* 단속 일자 종료 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<if test="opnnSbmsnSttsCd != null">
AND A.OPNN_SBMSN_STTS_CD = #{opnnSbmsnSttsCd}
<if test="schOpnnSbmsnSttsCd != null">
AND A.OPNN_SBMSN_STTS_CD = #{schOpnnSbmsnSttsCd} /* 의견 제출 상태 코드 */
</if>
<if test = "schVhrno != null">
AND C.VHRNO = #{schVhrno} /* 차량번호 */
</if>
<if test = "schSttrNm != null">
AND A.STTR_NM = #{schSttrNm} /* 진술자 명 */
</if>
<choose>
<when test="schDetailDateOpt == 'regDt'">
<if test="schDetailDateFrom != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} /* 등록 일자 일자 시작 */
<when test="schRegDateOpt == 'regDt'">
<if test="schRegDateFrom != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ >= ]]> #{schRegDateFrom} /* 등록 일자 시작 */
</if>
<if test="schDetailDateTo != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} /* 등록 일자 일자 종료 */
<if test="schRegDateTo != null">
AND SUBSTR(A.REG_DT,1,8) <![CDATA[ <= ]]> #{schRegDateTo} /* 등록 일자 종료 */
</if>
</when>
<when test="schDetailDateOpt == 'mdfcnDt'">
<if test="schDetailDateFrom != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ >= ]]> #{schDateFrom} /* 수정 일자 일자 시작 */
<when test="schRegDateOpt == 'mdfcnDt'">
<if test="schRegDateFrom != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ >= ]]> #{schRegDateFrom} /* 수정 일자 시작 */
</if>
<if test="schDetailDateTo != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ <= ]]> #{schDateTo} /* 수정 일자 일자 종료 */
<if test="schRegDateTo != null">
AND SUBSTR(A.MDFCN_DT,1,8) <![CDATA[ <= ]]> #{schRegDateTo} /* 수정 일자 종료 */
</if>
</when>
<otherwise>
@ -230,132 +189,191 @@
<choose>
<when test="schDetailUserOpt == 'rgtr'">
<if test="schDetailUserCd != null">
AND A.RGTR = #{schDetailUserCd} /* 등록자 코드 */
AND A.RGTR = #{schDetailUserCd} /* 등록자 코드 */
</if>
</when>
<when test="schDetailUserOpt == 'mdfr'">
<if test="schDetailUserCd != null">
AND A.MDFR = #{schDetailUserCd} /* 수정자 코드 */
AND A.MDFR = #{schDetailUserCd} /* 수정자 코드 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<insert id="insertOpnnSbmsn" parameterType="map">/* 의견제출 대장 등록(opnnSbmsnMapper.insertOpnnSbmsn) */
<sql id="select">
SELECT A.OPNN_ID /* 의견 ID */
, A.CRDN_ID /* 단속 ID */
, A.RCPT_NO /* 접수 번호 */
, A.RCPT_YMD /* 접수 일자 */
, A.RCPT_SE_CD /* 접수 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM029', A.RCPT_SE_CD) FROM DUAL) AS RCPT_SE_NM /* 접수 구분 코드 */
, A.OWNR_REL_CD /* 소유주 관계 코드 */
, (SELECT FN_GET_CODE_NM('FIM032', A.OWNR_REL_CD) FROM DUAL) AS OWNR_REL_NM /* 소유주 관계 코드 */
, A.STTR_NM /* 진술자 명 */
, A.STTR_BRDT /* 진술자 생년월일 */
, (SELECT FN_GET_BRDT_FORMAT(A.STTR_BRDT, '.') FROM DUAL) AS STTR_BRDT_FORMAT /* 납부자 생년월일 */
, A.STTR_RRNO /* 진술자 주민등록번호 */
, A.STTR_ADDR /* 진술자 주소 */
, A.STTR_DADDR /* 진술자 상세주소 */
, A.STTR_ZIP /* 진술자 우편번호 */
, A.STTR_CTTPC /* 진술자 연락처 */
, A.STTR_EML /* 진술자 이메일 */
, A.OPNN_SBMSN_CN /* 의견 제출 내용 */
, A.OPNN_SBMSN_SE_CD /* 의견 제출 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM033', A.OPNN_SBMSN_SE_CD) FROM DUAL) AS OPNN_SBMSN_SE_NM /* 의견 제출 구분 명 */
, A.OPNN_SBMSN_GIST /* 의견 제출 요지 */
, A.ATCH_FILE_CNT /* 첨부 파일 수 */
, A.DOC_NO /* 문서 번호 */
, A.NTFCTN_SE_CD /* 통보 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM030', A.NTFCTN_SE_CD) FROM DUAL) AS NTFCTN_SE_NM /* 통보 구분 코드 */
, A.PIC_RVW_OPNN /* 담당자 검토 의견 */
, A.ANS_CN /* 답변 내용 */
, A.ANS_YMD /* 답변 일자 */
, A.ANS_TM /* 답변 시각 */
, (CONCAT(A.ANS_YMD, A.ANS_TM)) AS ANS_YMD_TM /* 답변 일시 */
, A.OPNN_SBMSN_STTS_CD /* 의견 제출 상태 코드 */
, (SELECT FN_GET_CODE_NM('FIM031', A.OPNN_SBMSN_STTS_CD) FROM DUAL) AS OPNN_SBMSN_STTS_NM /* 의견 제출 상태 명 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.MDFCN_DT /* 수정 일시 */
, A.MDFR /* 수정자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
FROM TB_OPNN_SBMSN A
</sql>
<select id="selectOpnnSbmsnInfo" parameterType="map" resultMap="excl02Row">/* 의견제출 대장 객체 가져오기(excl02Mapper.selectOpnnSbmsnInfo) */
<include refid="select" />
WHERE A.OPNN_ID = #{opnnId} /* 부과 제외 ID */
<include refid="utility.orderBy" />
</select>
<select id="selectOpnnSbmsns" parameterType="map" resultMap="excl02Row">/* 의견제출 대장 객체 가져오기(excl02Mapper.selectOpnnSbmsns) */
<include refid="select" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
<if test="opnnIds != null">
AND A.OPNN_ID IN (
<foreach collection="opnnIds" item="opnnId" separator=","> #{opnnId} </foreach>
)
</if>
<include refid="utility.orderBy" />
</select>
<insert id="insertOpnnSbmsn" parameterType="map">/* 의견제출 대장 등록(excl02Mapper.insertOpnnSbmsn) */
INSERT
INTO TB_OPNN_SBMSN (
OPNN_ID <!-- 의견 ID -->
, CRDN_ID <!-- 단속 ID -->
, RCPT_NO <!-- 접수 번호 -->
, RCPT_YMD <!-- 접수 일자 -->
, RCPT_SE_CD <!-- 접수 구분 코드 -->
, OWNR_REL_CD <!-- 소유주 관계 코드 -->
, STTR_NM <!-- 진술자 명 -->
, STTR_BRDT <!-- 진술자 생년월일 -->
, STTR_RRNO <!-- 진술자 주민등록번호 -->
, STTR_ADDR <!-- 진술자 주소 -->
, STTR_DADDR <!-- 진술자 상세주소 -->
, STTR_ZIP <!-- 진술자 우편번호 -->
, STTR_CTTPC <!-- 진술자 연락처 -->
, STTR_EML <!-- 진술자 이메일 -->
, OPNN_SBMSN_CN <!-- 의견 제출 내용 -->
, OPNN_SBMSN_SE_CD <!-- 의견 제출 구분 코드 -->
, OPNN_SBMSN_GIST <!-- 의견 제출 요지 -->
, ATCH_FILE_CNT <!-- 첨부 파일 수 -->
, DOC_NO <!-- 문서 번호 -->
, NTFCTN_SE_CD <!-- 통보 구분 코드 -->
, PIC_RVW_OPNN <!-- 담당자 검토 의견 -->
, ANS_CN <!-- 답변 내용 -->
, ANS_YMD <!-- 답변 일자 -->
, ANS_TM <!-- 답변 시각 -->
, OPNN_SBMSN_STTS_CD <!-- 의견 제출 상태 코드 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
, DEL_RSN <!-- 삭제 사유 -->
OPNN_ID /* 의견 ID */
, CRDN_ID /* 단속 ID */
, RCPT_NO /* 접수 번호 */
, RCPT_YMD /* 접수 일자 */
, RCPT_SE_CD /* 접수 구분 코드 */
, OWNR_REL_CD /* 소유주 관계 코드 */
, STTR_NM /* 진술자 명 */
, STTR_BRDT /* 진술자 생년월일 */
, STTR_RRNO /* 진술자 주민등록번호 */
, STTR_ADDR /* 진술자 주소 */
, STTR_DADDR /* 진술자 상세주소 */
, STTR_ZIP /* 진술자 우편번호 */
, STTR_CTTPC /* 진술자 연락처 */
, STTR_EML /* 진술자 이메일 */
, OPNN_SBMSN_CN /* 의견 제출 내용 */
, OPNN_SBMSN_SE_CD /* 의견 제출 구분 코드 */
, OPNN_SBMSN_GIST /* 의견 제출 요지 */
, ATCH_FILE_CNT /* 첨부 파일 수 */
, DOC_NO /* 문서 번호 */
, NTFCTN_SE_CD /* 통보 구분 코드 */
, PIC_RVW_OPNN /* 담당자 검토 의견 */
, ANS_CN /* 답변 내용 */
, ANS_YMD /* 답변 일자 */
, ANS_TM /* 답변 시각 */
, OPNN_SBMSN_STTS_CD /* 의견 제출 상태 코드 */
, DEL_YN /* 삭제 여부 */
, REG_DT /* 등록 일시 */
, RGTR /* 등록자 */
, MDFCN_DT /* 수정 일시 */
, MDFR /* 수정자 */
, DEL_DT /* 삭제 일시 */
, DLTR /* 삭제자 */
, DEL_RSN /* 삭제 사유 */
)
VALUES (
#{opnnSbmsn.opnnId} <!-- 의견 ID -->
, #{opnnSbmsn.crdnId} <!-- 단속 ID -->
, #{opnnSbmsn.rcptNo} <!-- 접수 번호 -->
, #{opnnSbmsn.rcptYmd} <!-- 접수 일자 -->
, #{opnnSbmsn.rcptSeCd} <!-- 접수 구분 코드 -->
, #{opnnSbmsn.ownrRelCd} <!-- 소유주 관계 코드 -->
, #{opnnSbmsn.sttrNm} <!-- 진술자 명 -->
, #{opnnSbmsn.sttrBrdt} <!-- 진술자 생년월일 -->
, #{opnnSbmsn.sttrRrno} <!-- 진술자 주민등록번호 -->
, #{opnnSbmsn.sttrAddr} <!-- 진술자 주소 -->
, #{opnnSbmsn.sttrDaddr} <!-- 진술자 상세주소 -->
, #{opnnSbmsn.sttrZip} <!-- 진술자 우편번호 -->
, #{opnnSbmsn.sttrCttpc} <!-- 진술자 연락처 -->
, #{opnnSbmsn.sttrEml} <!-- 진술자 이메일 -->
, #{opnnSbmsn.opnnSbmsnCn} <!-- 의견 제출 내용 -->
, #{opnnSbmsn.opnnSbmsnSeCd} <!-- 의견 제출 구분 코드 -->
, #{opnnSbmsn.opnnSbmsnGist} <!-- 의견 제출 요지 -->
, #{opnnSbmsn.atchFileCnt} <!-- 첨부 파일 수 -->
, #{opnnSbmsn.docNo} <!-- 문서 번호 -->
, #{opnnSbmsn.ntfctnSeCd} <!-- 통보 구분 코드 -->
, #{opnnSbmsn.picRvwOpnn} <!-- 담당자 검토 의견 -->
, #{opnnSbmsn.ansCn} <!-- 답변 내용 -->
, #{opnnSbmsn.ansYmd} <!-- 답변 일시 -->
, #{opnnSbmsn.ansTm} <!-- 답변 일시 -->
, #{opnnSbmsn.opnnSbmsnSttsCd} <!-- 의견 제출 상태 코드 -->
, #{opnnSbmsn.delYn} <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{currentUser.id} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{currentUser.id} <!-- 수정자 -->
, #{opnnSbmsn.delDt} <!-- 삭제 일시 -->
, #{opnnSbmsn.dltr} <!-- 삭제자 -->
, #{opnnSbmsn.delRsn} <!-- 삭제 사유 -->
#{opnnSbmsn.opnnId} /* 의견 ID -->
, #{opnnSbmsn.crdnId} /* 단속 ID */
, #{opnnSbmsn.rcptNo} /* 접수 번호 */
, #{opnnSbmsn.rcptYmd} /* 접수 일자 */
, #{opnnSbmsn.rcptSeCd} /* 접수 구분 코드 */
, #{opnnSbmsn.ownrRelCd} /* 소유주 관계 코드 */
, #{opnnSbmsn.sttrNm} /* 진술자 명 */
, #{opnnSbmsn.sttrBrdt} /* 진술자 생년월일 */
, #{opnnSbmsn.sttrRrno} /* 진술자 주민등록번호 */
, #{opnnSbmsn.sttrAddr} /* 진술자 주소 */
, #{opnnSbmsn.sttrDaddr} /* 진술자 상세주소 */
, #{opnnSbmsn.sttrZip} /* 진술자 우편번호 */
, #{opnnSbmsn.sttrCttpc} /* 진술자 연락처 */
, #{opnnSbmsn.sttrEml} /* 진술자 이메일 */
, #{opnnSbmsn.opnnSbmsnCn} /* 의견 제출 내용 */
, #{opnnSbmsn.opnnSbmsnSeCd} /* 의견 제출 구분 코드 */
, #{opnnSbmsn.opnnSbmsnGist} /* 의견 제출 요지 */
, #{opnnSbmsn.atchFileCnt} /* 첨부 파일 수 */
, #{opnnSbmsn.docNo} /* 문서 번호 */
, #{opnnSbmsn.ntfctnSeCd} /* 통보 구분 코드 */
, #{opnnSbmsn.picRvwOpnn} /* 담당자 검토 의견 */
, #{opnnSbmsn.ansCn} /* 답변 내용 */
, #{opnnSbmsn.ansYmd} /* 답변 일시 */
, #{opnnSbmsn.ansTm} /* 답변 일시 */
, #{opnnSbmsn.opnnSbmsnSttsCd} /* 의견 제출 상태 코드 */
, #{opnnSbmsn.delYn} /* 삭제 여부 */
, <include refid="utility.now" /> /* 등록 일시 */
, #{currentUser.id} /* 등록자 */
, <include refid="utility.now" /> /* 수정 일시 */
, #{currentUser.id} /* 수정자 */
, #{opnnSbmsn.delDt} /* 삭제 일시 */
, #{opnnSbmsn.dltr} /* 삭제자 */
, #{opnnSbmsn.delRsn} /* 삭제 사유 */
)
</insert>
<update id="updateOpnnSbmsn" parameterType="map">/* 의견제출 대장 수정(opnnSbmsnMapper.updateOpnnSbmsn) */
<update id="updateOpnnSbmsn" parameterType="map">/* 의견제출 대장 수정(excl02Mapper.updateOpnnSbmsn) */
UPDATE TB_OPNN_SBMSN
SET CRDN_ID = #{opnnSbmsn.crdnId} <!-- 단속 ID -->
, RCPT_NO = #{opnnSbmsn.rcptNo} <!-- 접수 번호 -->
, RCPT_YMD = #{opnnSbmsn.rcptYmd} <!-- 접수 일자 -->
, RCPT_SE_CD = #{opnnSbmsn.rcptSeCd} <!-- 접수 구분 코드 -->
, OWNR_REL_CD = #{opnnSbmsn.ownrRelCd} <!-- 소유주 관계 코드 -->
, STTR_NM = #{opnnSbmsn.sttrNm} <!-- 진술자 명 -->
, STTR_BRDT = #{opnnSbmsn.sttrBrdt} <!-- 진술자 생년월일 -->
, STTR_RRNO = #{opnnSbmsn.sttrRrno} <!-- 진술자 주민등록번호 -->
, STTR_ADDR = #{opnnSbmsn.sttrAddr} <!-- 진술자 주소 -->
, STTR_DADDR = #{opnnSbmsn.sttrDaddr} <!-- 진술자 상세주소 -->
, STTR_ZIP = #{opnnSbmsn.sttrZip} <!-- 진술자 우편번호 -->
, STTR_CTTPC = #{opnnSbmsn.sttrCttpc} <!-- 진술자 연락처 -->
, STTR_EML = #{opnnSbmsn.sttrEml} <!-- 진술자 이메일 -->
, OPNN_SBMSN_CN = #{opnnSbmsn.opnnSbmsnCn} <!-- 의견 제출 내용 -->
, OPNN_SBMSN_TYPE = #{opnnSbmsn.opnnSbmsnType} <!-- 의견 제출 유형 -->
, OPNN_SBMSN_GIST = #{opnnSbmsn.opnnSbmsnGist} <!-- 의견 제출 요지 -->
, ATCH_FILE_CNT = #{opnnSbmsn.atchFileCnt} <!-- 첨부 파일 수 -->
, DOC_NO = #{opnnSbmsn.docNo} <!-- 문서 번호 -->
, NTFCTN_SE_CD = #{opnnSbmsn.ntfctnSeCd} <!-- 통보 구분 코드 -->
, PIC_RVW_OPNN = #{opnnSbmsn.picRvwOpnn} <!-- 담당자 검토 의견 -->
, ANS_CN = #{opnnSbmsn.ansCn} <!-- 답변 내용 -->
, ANS_YMD = #{opnnSbmsn.ansYmd} <!-- 답변 일시 -->
, ANS_TM = #{opnnSbmsn.ansTm} <!-- 답변 일시 -->
, OPNN_SBMSN_STTS_CD = #{opnnSbmsn.opnnSbmsnSttsCd} <!-- 의견 제출 상태 코드 -->
, DEL_YN = #{opnnSbmsn.delYn} <!-- 삭제 여부 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{currentUser.id} <!-- 수정자 -->
, DEL_DT = #{opnnSbmsn.delDt} <!-- 삭제 일시 -->
, DLTR = #{opnnSbmsn.dltr} <!-- 삭제자 -->
, DEL_RSN = #{opnnSbmsn.delRsn} <!-- 삭제 사유 -->
SET RCPT_NO = #{opnnSbmsn.rcptNo} /* 접수 번호 */
, RCPT_YMD = #{opnnSbmsn.rcptYmd} /* 접수 일자 */
, RCPT_SE_CD = #{opnnSbmsn.rcptSeCd} /* 접수 구분 코드 */
, OWNR_REL_CD = #{opnnSbmsn.ownrRelCd} /* 소유주 관계 코드 */
, STTR_NM = #{opnnSbmsn.sttrNm} /* 진술자 명 */
, STTR_BRDT = #{opnnSbmsn.sttrBrdt} /* 진술자 생년월일 */
, STTR_RRNO = #{opnnSbmsn.sttrRrno} /* 진술자 주민등록번호 */
, STTR_ADDR = #{opnnSbmsn.sttrAddr} /* 진술자 주소 */
, STTR_DADDR = #{opnnSbmsn.sttrDaddr} /* 진술자 상세주소 */
, STTR_ZIP = #{opnnSbmsn.sttrZip} /* 진술자 우편번호 */
, STTR_CTTPC = #{opnnSbmsn.sttrCttpc} /* 진술자 연락처 */
, STTR_EML = #{opnnSbmsn.sttrEml} /* 진술자 이메일 */
, OPNN_SBMSN_CN = #{opnnSbmsn.opnnSbmsnCn} /* 의견 제출 내용 */
, OPNN_SBMSN_TYPE = #{opnnSbmsn.opnnSbmsnType} /* 의견 제출 유형 */
, OPNN_SBMSN_GIST = #{opnnSbmsn.opnnSbmsnGist} /* 의견 제출 요지 */
, ATCH_FILE_CNT = #{opnnSbmsn.atchFileCnt} /* 첨부 파일 수 */
, DOC_NO = #{opnnSbmsn.docNo} /* 문서 번호 */
, NTFCTN_SE_CD = #{opnnSbmsn.ntfctnSeCd} /* 통보 구분 코드 */
, PIC_RVW_OPNN = #{opnnSbmsn.picRvwOpnn} /* 담당자 검토 의견 */
, ANS_CN = #{opnnSbmsn.ansCn} /* 답변 내용 */
, ANS_YMD = #{opnnSbmsn.ansYmd} /* 답변 일자 */
, ANS_TM = #{opnnSbmsn.ansTm} /* 답변 시각 */
, OPNN_SBMSN_STTS_CD = #{opnnSbmsn.opnnSbmsnSttsCd} /* 의견 제출 상태 코드 */
, DEL_YN = #{opnnSbmsn.delYn} /* 삭제 여부 */
, MDFCN_DT = <include refid="utility.now" /> /* 수정 일시 */
, MDFR = #{currentUser.id} /* 수정자 */
, DEL_DT = #{opnnSbmsn.delDt} /* 삭제 일시 */
, DLTR = #{opnnSbmsn.dltr} /* 삭제자 */
, DEL_RSN = #{opnnSbmsn.delRsn} /* 삭제 사유 */
WHERE OPNN_ID = #{opnnSbmsn.opnnId} /* 의견 ID */
</update>
<update id="deleteOpnnSbmsn" parameterType="map">/* 의견제출 대장 삭제(opnnSbmsnMapper.deleteOpnnSbmsn) */
<update id="deleteOpnnSbmsn" parameterType="map">/* 의견제출 대장 삭제(excl02Mapper.deleteOpnnSbmsn) */
UPDATE TB_OPNN_SBMSN
SET DEL_YN = 'Y'
, DEL_DT = <include refid="utility.now" /> /* 삭제 일시 */

@ -0,0 +1,160 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.excl.dao.Excl03Mapper">
<!-- 단속 재등록 정보 매퍼
========== 변경 이력 ==========
2023-07-03 JoJH 최초 작성
============================ -->
<resultMap id="excl03Row" type="cokr.xit.fims.excl.Excl03">
<!-- TB_CRDN_RE 단속 재등록 대장 -->
<result property="reRegId" column="RE_REG_ID" /> <!-- 재등록 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="newCrdnId" column="NEW_CRDN_ID" /> <!-- 신규 단속 ID -->
<result property="crdnRegYmd" column="CRDN_REG_YMD" /> <!-- 단속 등록 일자 -->
<result property="crdnRegSeCd" column="CRDN_REG_SE_CD" /> <!-- 단속 등록 구분 코드 -->
<result property="etcCn" column="ETC_CN" /> <!-- 기타 내용 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="regDt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="rgtr" column="RGTR" /> <!-- 등록자 -->
<result property="delDt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="dltr" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="selectList">
SELECT A.RE_REG_ID /* 재등록 ID */
, A.CRDN_ID /* 단속 ID */
, A.NEW_CRDN_ID /* 신규 단속 ID */
, A.CRDN_REG_YMD /* 단속 등록 일자 */
, A.CRDN_REG_SE_CD /* 단속 등록 구분 코드 */
, A.ETC_CN /* 기타 내용 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
, C.SGG_CD /* 시군구 코드 */
, C.TASK_SE_CD /* 업무 구분 코드 */
, C.CRDN_INPT_SE_CD /* 단속 입력 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM003', C.CRDN_INPT_SE_CD) FROM DUAL) AS CRDN_INPT_SE_NM /* 단속 입력 구분 명 */
, C.CRDN_SE_CD /* 단속 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 명 */
, C.CRDN_YMD /* 단속 일자 */
, C.CRDN_TM /* 단속 시각 */
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM /* 단속 일시 */
, C.VHRNO /* 차량번호 */
, C.CRDN_STDG_NM /* 단속 법정동 명 */
, C.CRDN_ROAD_NM /* 단속 도로 명 */
, C.CRDN_PLC /* 단속 장소 */
, C.DTL_CRDN_PLC /* 상세 단속 장소 */
, C.ATCH_FILE_CNT /* 첨부 파일 수 */
, C.FFNLG_AMT /* 과태료 금액 */
, C.LEVY_AMT /* 부과 금액 */
, C.CRDN_STTS_CD /* 단속 상태 코드 */
, (SELECT FN_GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
FROM TB_CRDN_RE A
INNER JOIN TB_CRDN C ON (A.NEW_CRDN_ID = C.CRDN_ID)
</sql>
<select id="selectCrdnReList" parameterType="map" resultType="dataobject">/* 단속 재등록 목록 조회(excl03Mapper.selectCrdnReList) */
<include refid="utility.paging-prefix" />
<include refid="selectList" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND A.CRDN_REG_SE_CD = '03' /* 단속 등록 구분 코드 - FIM026 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
<choose>
<when test="schDateOpt == 'crdnRegYmd'">
<if test="schDateFrom != null">
AND A.CRDN_REG_YMD <![CDATA[ >= ]]> #{schDateFrom} /* 단속 등록 일자 시작 */
</if>
<if test="schDateTo != null">
AND A.CRDN_REG_YMD <![CDATA[ <= ]]> #{schDateTo} /* 단속 등록 일자 종료 */
</if>
</when>
<otherwise>
</otherwise>
</choose>
<if test = "schVhrno != null">
AND C.VHRNO = #{schVhrno} /* 차량번호 */
</if>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<sql id="select">
SELECT A.RE_REG_ID /* 재등록 ID */
, A.CRDN_ID /* 단속 ID */
, A.NEW_CRDN_ID /* 신규 단속 ID */
, A.CRDN_REG_YMD /* 단속 등록 일자 */
, A.CRDN_REG_SE_CD /* 단속 등록 구분 코드 */
, A.ETC_CN /* 기타 내용 */
, A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */
, A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */
FROM TB_CRDN_RE A
</sql>
<select id="selectCrdnReInfo" parameterType="map" resultMap="excl03Row">/* 단속 재등록 대장 객체 가져오기(excl03Mapper.selectCrdnReInfo) */
<include refid="select" />
WHERE A.RE_REG_ID = #{reRegId} /* 재등록 ID */
<include refid="utility.orderBy" />
</select>
<select id="selectCrdnRes" parameterType="map" resultMap="excl03Row">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdnRes) */
<include refid="select" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */
<if test="reRegIds != null">
AND A.RE_REG_ID IN (
<foreach collection="reRegIds" item="reRegId" separator=","> #{reRegId} </foreach>
)
</if>
<include refid="utility.orderBy" />
</select>
<insert id="insertCrdnRe" parameterType="map">/* 단속 재등록 등록(excl03Mapper.insertCrdnRe) */
INSERT INTO TB_CRDN_RE (
RE_REG_ID /* 재등록 ID */
, CRDN_ID /* 단속 ID */
, NEW_CRDN_ID /* 신규 단속 ID */
, CRDN_REG_SE_CD /* 단속 등록 구분 코드 */
, ETC_CN /* 기타 내용 */
, DEL_YN /* 삭제 여부 */
, REG_DT /* 등록 일시 */
, RGTR /* 등록자 */
, DEL_DT /* 삭제 일시 */
, DLTR /* 삭제자 */
, DEL_RSN /* 삭제 사유 */
)
VALUES (
#{reRegId} /* 재등록 ID */
, #{crdnId} /* 단속 ID */
, #{newCrdnId} /* 신규 단속 ID */
, #{crdnRegSeCd} /* 단속 등록 구분 코드 */
, #{etcCn} /* 기타 내용 */
, #{delYn} /* 삭제 여부 */
, <include refid="utility.now" /> /* 등록 일시 */
, #{currentUser.id} /* 등록자 */
, #{removedAt} /* 삭제 일시 */
, #{removedBy} /* 삭제자 */
, #{delRsn} /* 삭제 사유 */
)
</insert>
<update id="deleteCrdnRe" parameterType="map">/* 단속 재등록 삭제(excl03Mapper.deleteCrdnRe) */
UPDATE TB_CRDN_RE
SET DEL_YN = 'Y' /* 삭제 여부 */
, DEL_DT = <include refid="utility.now" /> /* 삭제 일시 */
, DLTR = #{currentUser.id} /* 삭제자 */
, DEL_RSN = #{delRsn} /* 삭제 사유 */
WHERE RE_REG_ID = #{reRegId} /* 재등록 ID */
AND DEL_YN = 'N' /* 삭제 여부 */
</update>
</mapper>

@ -47,6 +47,7 @@
<div class="col-1 text-end">
<select class="form-select" id="schDateOpt--${pageName}" name="schDateOpt">
<option value="levyExclYmd">부과제외일자</option>
<option value="crdnYmd">단속일자</option>
</select>
</div>
<div class="col-5">
@ -65,7 +66,7 @@
<label class="form-label fw-bold form-search-title">부과제외구분</label>
</div>
<div class="col-5">
<select id="levyExclSeCd--${pageName}" name="levyExclSeCd" class="form-select">
<select id="schLevyExclSeCd--${pageName}" name="schLevyExclSeCd" class="form-select">
<option value="">전체</option>
<c:forEach items="${FIM021List}" var="item">
<option value="${item.code}">${item.value}</option>
@ -77,20 +78,42 @@
<label class="form-label fw-bold form-search-title">차량번호</label>
</div>
<div class="col-5">
<input type="text" class="form-control" id="vhrno--${pageName}" name="vhrno" />
<input type="text" class="form-control" id="schVhrno--${pageName}" name="schVhrno" />
</div>
<!-- 납부자명 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">납부자명</label>
</div>
<div class="col-5">
<input type="text" class="form-control" id="rtpyrNm--${pageName}" name="rtpyrNm" />
<input type="text" class="form-control" id="schRtpyrNm--${pageName}" name="schRtpyrNm" />
</div>
<!-- 등록일자 -->
<div class="col-1 text-end">
<select class="form-select" id="schRegDateOpt--${pageName}" name="schRegDateOpt">
<option value="regDt">등록일자</option>
<option value="mdfcnDt">수정일자</option>
</select>
</div>
<div class="col-5">
<span class="form-search-linebox">
<input type="text" class="form-control form-date" id="schRegDateFrom--${pageName}" name="schRegDateFrom"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" id="schRegDateTo--${pageName}" name="schRegDateTo"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 동적검색 -->
<div class="col-12">
<div class="col-1 text-end">
<input type="hidden" id="by--${pageName}" name="by" />
<input type="text" class="form-control" id="byOutput--${pageName}" value="동적 검색" readonly />
<input type="text" class="form-control w-100 text-end" id="byOutput--${pageName}" value="동적 검색" readonly />
</div>
<div class="col-3">
<input type="text" class="form-control" id="term--${pageName}" name="term" />
</div>
<div class="col-2">
<!-- 상세 검색조건 버튼 -->
<span class="flr">
<button type="button" class="btn btn-open-detail" data-bs-toggle="collapse" data-bs-target="#searchDetail--${pageName}">
@ -106,36 +129,14 @@
<!-- 상세 조건 -->
<div id="searchDetail--${pageName}" class="container-search container-search-detail collapse">
<div class="row">
<!-- 등록일자, 수정일자 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">일자검색</label>
</div>
<div class="col-5">
<select class="form-select" id="schDetailDateOpt--${pageName}" name="schDetailDateOpt">
<option value="">조건선택</option>
<option value="regDt">등록일자</option>
<option value="mdfcnDt">수정일자</option>
</select>
<span class="form-search-linebox">
<input type="text" class="form-control form-date" id="schDetailDateFrom--${pageName}" name="schDetailDateFrom"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" id="schDetailDateTo--${pageName}" name="schDetailDateTo"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 등록자명, 수정자명 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">사용자검색</label>
</div>
<div class="col-5">
<select class="form-select" id="schDetailUserOpt--${pageName}" name="schDetailUserOpt">
<option value="">조건선택</option>
<option value="rgtr">등록자명</option>
<option value="mdfr">수정자명</option>
</select>
</div>
<div class="col-11">
<input type="text" class="form-control" id="schDetailUserNm--${pageName}" name="schDetailUserNm" />
</div>
</div>
@ -147,17 +148,16 @@
<!-- 업무 버튼 및 건수 표시 -->
<div>
<span class="container-page-btn">
<!-- 업무 버튼 -->
<a href="#" class="btn btn-blue" id="" title="업무처리1">업무 처리1</a>
<a href="#" class="btn btn-blue" id="" title="업무처리2">업무 처리2</a>
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<label id="paging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="paging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<span class="container-window-btn-right">
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<label id="paging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="paging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<!-- 업무 버튼 -->
<a href="#" class="btn btn-blue" id="" title="업무처리1">업무 처리1</a>
<a href="#" class="btn btn-blue" id="" title="업무처리2">업무 처리2</a>
</span>
</span>
</div>
@ -181,10 +181,9 @@
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">기타내용</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">민원접수번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">민원접수일자</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">민원신청인명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">차량번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">위반일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">위반장소</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속장소</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">납부자명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">처리상태명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록일시</th>
@ -207,9 +206,8 @@
<td style="text-align:left;" {onclick} {ondblclick}>{ETC_CN}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CVLCPT_RCPT_NO}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CVLCPT_RCPT_YMD}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{CVLCPT_APLCNT_NM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{VHRNO}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_YMD_TM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{VHRNO}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{CRDN_PLC}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{RTPYR_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_STTS_NM}</td>
@ -271,17 +269,14 @@
**************************************************************************/
// 검색조건 초기값 셋팅
function initSearch${pageName}() {
// 업무구분
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
// 달력 초기화
initDatepicker("frmSearch--${pageName}");
$("#schDateFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-365).date);
$("#schDateTo--${pageName}").datepicker("setDate", new Date());
$("#schDetailDateFrom--${pageName}").datepicker("setDate", new Date());
$("#schDetailDateTo--${pageName}").datepicker("setDate", new Date());
// 업무구분
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
}
//
@ -324,7 +319,8 @@
//
if (!item) return;
let key = item.data.USER_ID;
let key = item.data.LEVY_EXCL_ID;
$("#${infoPrefix}List").setCurrentRow(key);
};

@ -62,19 +62,12 @@
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 진술자명 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">진술자명</label>
</div>
<div class="col-5">
<input type="text" id="sttrNm--${pageName}" name="sttrNm" class="form-control" />
</div>
<!-- 의견제출상태 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">의견제출상태</label>
</div>
<div class="col-5">
<select id="opnnSbmsnSttsCd--${pageName}" name="opnnSbmsnSttsCd" class="form-select">
<select id="schOpnnSbmsnSttsCd--${pageName}" name="schOpnnSbmsnSttsCd" class="form-select">
<option value="">전체</option>
<c:forEach items="${FIM031List}" var="item">
<option value="${item.code}">${item.value}</option>
@ -86,13 +79,42 @@
<label class="form-label fw-bold form-search-title">차량번호</label>
</div>
<div class="col-5">
<input type="text" class="form-control" id="vhrno--${pageName}" name="vhrno" />
<input type="text" class="form-control" id="schVhrno--${pageName}" name="schVhrno" />
</div>
<!-- 진술자명 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">진술자명</label>
</div>
<div class="col-5">
<input type="text" class="form-control" id="schSttrNm--${pageName}" name="schSttrNm" />
</div>
<!-- 등록일자 -->
<div class="col-1 text-end">
<select class="form-select" id="schRegDateOpt--${pageName}" name="schRegDateOpt">
<option value="regDt">등록일자</option>
<option value="mdfcnDt">수정일자</option>
</select>
</div>
<div class="col-5">
<span class="form-search-linebox">
<input type="text" class="form-control form-date" id="schRegDateFrom--${pageName}" name="schRegDateFrom"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" id="schRegDateTo--${pageName}" name="schRegDateTo"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 동적검색 -->
<div class="col-12">
<div class="col-1 text-end">
<input type="hidden" id="by--${pageName}" name="by" />
<input type="text" class="form-control" id="byOutput--${pageName}" value="동적 검색" readonly />
<input type="text" class="form-control w-100 text-end" id="byOutput--${pageName}" value="동적 검색" readonly />
</div>
<div class="col-3">
<input type="text" class="form-control" id="term--${pageName}" name="term" />
</div>
<div class="col-2">
<!-- 상세 검색조건 버튼 -->
<span class="flr">
<button type="button" class="btn btn-open-detail" data-bs-toggle="collapse" data-bs-target="#searchDetail--${pageName}">
@ -108,37 +130,15 @@
<!-- 상세 조건 -->
<div id="searchDetail--${pageName}" class="container-search container-search-detail collapse">
<div class="row">
<!-- 등록일자, 수정일자 -->
<div class="col-1">
<label class="form-label fw-bold form-search-title text-end">일자검색</label>
</div>
<div class="col-5">
<select class="form-select" id="schDetailDateOpt--${pageName}" name="schDetailDateOpt">
<option value="">조건선택</option>
<option value="regDt">등록일자</option>
<option value="mdfcnDt">수정일자</option>
</select>
<span class="form-search-linebox">
<input type="text" class="form-control form-date" id="schDetailDateFrom--${pageName}" name="schDetailDateFrom"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" id="schDetailDateTo--${pageName}" name="schDetailDateTo"
data-fmt-type="day" title="종료 날짜 선택">
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 등록자명, 수정자명 -->
<div class="col-1">
<label class="form-label fw-bold form-search-title text-end">사용자검색</label>
</div>
<div class="col-5">
<div class="col-1 text-end">
<select class="form-select" id="schDetailUserOpt--${pageName}" name="schDetailUserOpt">
<option value="">조건선택</option>
<option value="rgtr">등록자명</option>
<option value="mdfr">수정자명</option>
</select>
<input type="text" class="form-control" id="schDetailuserNm--${pageName}" name="schDetailuserNm" />
</div>
<div class="col-11">
<input type="text" class="form-control" id="schDetailUserNm--${pageName}" name="schDetailUserNm" />
</div>
</div>
</div>
@ -149,17 +149,16 @@
<!-- 업무 버튼 및 건수 표시 -->
<div>
<span class="container-page-btn">
<!-- 업무 버튼 -->
<a href="#" class="btn btn-blue" id="" title="업무처리1">업무 처리1</a>
<a href="#" class="btn btn-blue" id="" title="업무처리2">업무 처리2</a>
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<label id="paging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="paging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<span class="container-window-btn-right">
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<label id="paging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<%-- <ul id="paging--${pageName}" class="pagination pagination-primary"> --%>
<!-- </ul> -->
</div>
<!-- 업무 버튼 -->
<a href="#" class="btn btn-blue" id="" title="업무처리1">업무 처리1</a>
<a href="#" class="btn btn-blue" id="" title="업무처리2">업무 처리2</a>
</span>
</span>
</div>
@ -179,12 +178,18 @@
</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">접수일자</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">접수번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">접수구분명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">통보구분명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">진술자명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">차량번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">진술자명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속장소</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 80px;">의견제출상태</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">의견제출분류</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 300px;">의견제출요지</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 320px;">의견제출요지</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">문서번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">답변일자</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 320px;">답변내용</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록사용자</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">수정일시</th>
@ -201,12 +206,18 @@
</td>
<td style="text-align:center;" {onclick} {ondblclick}>{RCPT_YMD}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{RCPT_NO}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{RCPT_SE_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{NTFCTN_SE_NM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{STTR_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_YMD_TM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{VHRNO}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{STTR_NM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{CRDN_PLC}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{OPNN_SBMSN_STTS_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{OPNN_SBMSN_SE_NM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{OPNN_SBMSN_GIST}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{DOC_NO}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{ANS_YMD}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{ANS_CN}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{REG_DT}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{RGTR}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{MDFCN_DT}</td>
@ -266,17 +277,14 @@
**************************************************************************/
// 검색조건 초기값 셋팅
function initSearch${pageName}() {
// 업무구분
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
// 달력 초기화
initDatepicker("frmSearch--${pageName}");
$("#schDateFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-365).date);
$("#schDateTo--${pageName}").datepicker("setDate", new Date());
$("#schDetailDateFrom--${pageName}").datepicker("setDate", new Date());
$("#schDetailDateTo--${pageName}").datepicker("setDate", new Date());
// 업무구분
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
}
//
@ -284,12 +292,14 @@
// 검색 버튼 이벤트
$("#btnSearch--${pageName}").on("click", () => searchList${pageName}());
// 테이블 스크롤 이벤트
// DataTables 스크롤 이벤트
$("#table-responsive--${pageName}").scroll(function() {
let el = $(this);
if (el.scrollTop() == 0) return;
if (dataItem.getValue("{ROW_NUMBER}") >= dataItem.getValue("{TOT_CNT}") ) return;
if ((el[0].scrollHeight - el.scrollTop() + 15) == el.outerHeight()) {
searchList${pageName}(${pageName}Control.query.pageNum + 1);
}
@ -319,7 +329,8 @@
//
if (!item) return;
let key = item.data.USER_ID;
let key = item.data.OPNN_ID;
$("#${infoPrefix}List").setCurrentRow(key);
};
@ -366,7 +377,7 @@
${pageName}Control.load(pageNumber);
}
// 테이블에 click, dbclick 이벤트
// DataTables에 click, dbclick 이벤트
function renderList${pageName}() {
let ${infoPrefix}List = ${pageName}Control.dataset;
let empty = ${infoPrefix}List.empty;

@ -0,0 +1,343 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- inner page html -->
<div class="content-wrapper">
<!-- Content -->
<div class="container-xxl flex-grow-1 px-0">
<%--h4 id="pageTitle" class="fw-bold py-3 mb-4">페이지 제목</h4--%>
<c:set var="prefixName" scope="request">단속재등록</c:set>
<!-- Page Body -->
<div class="card">
<div class="wrapper-list">
<div>
<!-- 상단 버튼 -->
<div class="container-page-btn">
<button type="button" class="btn btn-outline-dark" id="btnReset--${pageName}" title="초기화">초기화</button>
<span class="container-window-btn-right">
<button type="button" class="btn btn-search" id="btnSearch--${pageName}" title="검색">검색</button>
<button type="button" class="btn btn-search" id="btnExcel--${pageName}" title="엑셀">엑셀</button>
</span>
</div>
<!-- / 상단 버튼 -->
<!-- 검색 조건 영역 -->
<form id="frmSearch--${pageName}" name="frmSearch">
<!-- 메인 조건 -->
<div class="container-search">
<div class="row g-1">
<!-- 업무구분 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title" for="rdoTaskSeCd--${pageName}">업무구분</label>
</div>
<div class="col-11">
<span class="form-search-linebox">
<c:forEach items="${FIM054List}" var="item">
<label>
<input type="radio" class="form-check-input" id="rdoTaskSeCd--${pageName}" name="taskSeCd" alt="업무구분"
value="${item.code}"
onchange="pageObject['${pageName}'].fnResetAndChangeBiz(this.value);"
required>
${item.value}
</label>
</c:forEach>
</span>
</div>
<!-- 재등록일자 -->
<div class="col-1 text-end">
<select class="form-select" id="schDateOpt--${pageName}" name="schDateOpt">
<option value="crdnRegYmd">재등록일자</option>
</select>
</div>
<div class="col-5">
<span class="form-search-linebox">
<input type="text" class="form-control form-date" id="schDateFrom--${pageName}" name="schDateFrom"
data-fmt-type="day" title="시작 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
~
<input type="text" class="form-control form-date" id="schDateTo--${pageName}" name="schDateTo"
data-fmt-type="day" title="종료 날짜 선택" />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</span>
</div>
<!-- 차량번호 -->
<div class="col-1 text-end">
<label class="form-label fw-bold form-search-title">차량번호</label>
</div>
<div class="col-5">
<input type="text" class="form-control" id="schVhrno--${pageName}" name="schVhrno" />
</div>
<!-- 동적검색 -->
<div class="col-1 text-end">
<input type="hidden" id="by--${pageName}" name="by" />
<input type="text" class="form-control w-100 text-end" id="byOutput--${pageName}" value="동적 검색" readonly />
</div>
<div class="col-3">
<input type="text" class="form-control" id="term--${pageName}" name="term" />
</div>
<div class="col-8">
<!-- 상세 검색조건 버튼 -->
<span class="flr">
<button type="button" class="btn btn-open-detail" data-bs-toggle="collapse" data-bs-target="#searchDetail--${pageName}">
<i class="bx bx-chevron-down"></i>
상세검색조건
</button>
</span>
</div>
</div>
</div>
<!-- / 메인 조건 -->
<!-- 상세 조건 -->
<div id="searchDetail--${pageName}" class="container-search container-search-detail collapse">
<div class="row">
<!-- 등록자명, 수정자명 -->
<div class="col-1 text-end">
<select class="form-select" id="schDetailUserOpt--${pageName}" name="schDetailUserOpt">
<option value="rgtr">등록자명</option>
<option value="mdfr">수정자명</option>
</select>
</div>
<div class="col-11">
<input type="text" class="form-control" id="schDetailUserNm--${pageName}" name="schDetailUserNm" />
</div>
</div>
</div>
<!-- / 상세 조건 -->
</form>
<!-- / 검색 조건 영역 -->
<!-- 업무 버튼 및 건수 표시 -->
<div>
<span class="container-page-btn">
<!-- 건수, 페이지 표시 -->
<div class="d-flex flex-row justify-content-between">
<label id="paging--${pageName}PagingInfo" class="dataTables_info" role="status" aria-live="polite"></label>
<ul id="paging--${pageName}" class="pagination pagination-primary">
</ul>
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<a href="#" class="btn btn-blue" id="" title="재등록 이전 단속정보 보기">재등록 이전 단속정보 보기</a>
</span>
</span>
</div>
<!-- / 업무 버튼 및 건수 표시 -->
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div id="DataTables_Table_0_wrapper--${pageName}" class="dataTables_wrapper dt-bootstrap5 no-footer">
<div id="table-responsive--${pageName}" class="table-responsive" style="overflow-x:scroll; height:400px; overflow-y:scroll;" >
<table class="datatables-ajax table table-bordered dataTable no-footer"
id="DataTables_Table_0--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead>
<tr id="theadTr--${pageName}" style="text-align:center;">
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 24px;">NO.</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 24px;">
<input type="checkbox" class="form-check-input" onchange="${pageName}Control.select(this.checked);">
</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록일자</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속구분명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">차량번호</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속장소</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">과태료금액</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">첨부파일수</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">단속상태명</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록일시</th>
<th class="sorting" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" style="width: 120px;">등록사용자</th>
</tr>
</thead>
<tbody id="tbody--${pageName}">
</tbody>
<template id="${infoPrefix}Row">
<tr data-key="{RE_REG_ID}">
<td style="text-align:center;" {onclick} {ondblclick}>{ROW_NUM}</td>
<td style="text-align:center;">
<input value="{RE_REG_ID}" onchange="${pageName}Control.select('{RE_REG_ID}', this.checked);" type="checkbox" class="form-check-input">
</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_REG_YMD}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_INPT_SE_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_YMD_TM}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{VHRNO}</td>
<td style="text-align:left;" {onclick} {ondblclick}>{CRDN_PLC}</td>
<td style="text-align:right;" {onclick} {ondblclick}>{FFNLG_AMT}</td>
<td style="text-align:right;" {onclick} {ondblclick}>{ATCH_FILE_CNT}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{CRDN_STTS_NM}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{REG_DT}</td>
<td style="text-align:center;" {onclick} {ondblclick}>{RGTR}</td>
</tr>
</template>
<template id="${infoPrefix}NotFound">
<tr class="odd">
<td valign="top" colspan="14" class="dataTables_empty text-center">${prefixName} 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
</div>
</div>
</div>
<!-- / DataTables(그리드) -->
</div>
</div>
<!-- / Wrapper-list -->
</div>
<!-- / Card -->
</div>
<!-- / Content -->
<jsp:include page="/WEB-INF/jsp/include/bottom.jsp" />
<div class="content-backdrop fade"></div>
</div>
<!-- Content wrapper -->
<!-- js -->
<script src="<c:url value="/resources/js/fims/excl/excl03010.js?${ver}"/>"></script>
<script>
/**************************************************************************
* Global Variable
**************************************************************************/
// Control 생성
var ${pageName}Control = new CrdnReControl();
// 공통코드
var FIM054 = new CommonCodes(${FIM054});
// script 진입
$(document).ready(function() {
// 검색조건 초기값 셋팅
initSearch${pageName}();
// 이벤트
setEvent${pageName}();
});
/**************************************************************************
* 초기 셋팅
**************************************************************************/
// 검색조건 초기값 셋팅
function initSearch${pageName}() {
// 업무구분
let defaultBizValue = $("#layout-navbar input[name='taskSeCd']:checked").val();
$("#frmSearch--${pageName} input[name='taskSeCd'][value='" + defaultBizValue + "']").prop("checked",true);
// 달력 초기화
initDatepicker("frmSearch--${pageName}");
$("#schDateFrom--${pageName}").datepicker("setDate", DateUtil.getDateDay(-365).date);
$("#schDateTo--${pageName}").datepicker("setDate", new Date());
}
//
function setEvent${pageName}() {
// 검색 버튼 이벤트
$("#btnSearch--${pageName}").on("click", () => searchList${pageName}());
// 테이블 스크롤 이벤트
$("#table-responsive--${pageName}").scroll(function() {
let el = $(this);
if (el.scrollTop() == 0) return;
if ((el[0].scrollHeight - el.scrollTop() + 15) == el.outerHeight()) {
searchList${pageName}(${pageName}Control.query.pageNum + 1);
}
});
}
/**************************************************************************
* Event
**************************************************************************/
// Dataset 변경
${pageName}Control.onDatasetChange = obj => {
renderList${pageName}();
$("#paging--${pageName}").setPaging({
list : ${pageName}Control.dataset
// , prefix : ${pageName}Control.prefix
, prefix : "paging--${pageName}"
, start : obj.${infoPrefix}Start
, totalSize : obj.${infoPrefix}Total
, fetchSize : obj.${infoPrefix}Fetch
, func : "${pageName}Control.load({index})"
});
};
// DataTables 클릭 이벤트
${pageName}Control.onCurrentChange = item => {
//
if (!item) return;
let key = item.data.RE_REG_ID;
$("#${infoPrefix}List").setCurrentRow(key);
};
// DataTables checkbox 클릭 이벤트
${pageName}Control.onSelectionChange = selected => {
let ${infoPrefix}List = ${pageName}Control.dataset;
let keys = selected.map(e => ${infoPrefix}List.getKey(e));
$("#tbody--${pageName} input[type='checkbox']").each(function() {
let checkbox = $(this);
checkbox.prop("checked", keys.includes(checkbox.val()));
});
// $("#btnRemove${infoPrefix}s").prop("disabled", keys.length < 1);
};
//
$("#term").onEnterPress(searchList${pageName}());
/**************************************************************************
*
**************************************************************************/
// 검색조건 파라미터 가져오기
function getParams${pageName}() {
let formFields = new FimsFormFields("#frmSearch--${pageName}");
let data = formFields.get();
data.sggCd = "41480"; // 시군구 코드 임시
data.fetchSize = 30; // 한번에 30건씩 조회
return data;
}
// 검색
function searchList${pageName}(pageNumber) {
// pageNumber 값 확인
if (!pageNumber) pageNumber = 1;
${pageName}Control.query = getParams${pageName}(); // 검색조건
${pageName}Control.query.orderBy = "RE_REG_ID"; // 정렬
${pageName}Control.urls.load = wctx.url("/excl/excl03/010/list.do"); // url
${pageName}Control.load(pageNumber);
}
// 테이블에 click, dbclick 이벤트
function renderList${pageName}() {
let ${infoPrefix}List = ${pageName}Control.dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, 'onclick="${pageName}Control.setCurrent(\'' + dataItem.getValue("{RE_REG_ID}") + '\');"')
.replace(/{ondblclick}/gi, 'ondblclick="${pageName}Control.getInfo(\'' + dataItem.getValue("{RE_REG_ID}") + '\')"')
);
$("#tbody--${pageName}").html(trs.join());
$("th input[type='checkbox']").prop("checked", false);
}
// 업무구분 변경
function fnResetAndChangeBiz(taskSeCd) {
$("tbody--${pageName}").html("");
}
</script>

@ -16,6 +16,4 @@ class LevyExclControl extends DatasetControl {
}
});
}
}

@ -17,6 +17,5 @@ class OpnnSbmsnControl extends DatasetControl {
}
});
}
}

@ -0,0 +1,18 @@
class CrdnReControl extends DatasetControl {
constructor(conf) {
super(conf || {
prefix : "crdnRe"
, prefixName : "단속재등록"
, infoSize : "xl"
, keymapper : info => info ? info.RE_REG_ID : ""
, dataGetter : obj => obj.crdnReList
, appendData : true
, formats : {
CRDN_REG_YMD : dateFormat
, CRDN_YMD_TM : datetimeFormat
, REG_DT : datetimeFormat
}
});
}
}
Loading…
Cancel
Save