package cokr.xit.fims.rcvm;

import cokr.xit.fims.cmmn.CmmnQuery;

/**수납 대장 정보 조회 요청
 *
 * <p>상세 설명:
 *
 * <pre>
 * ============ 변경 이력 ============
 * 2023-08-31	JoJH 최초 작성
 * ================================
 * </pre>
 */
public class RcvmQuery extends CmmnQuery {

	private static final long serialVersionUID = 1L;

	// ID
	private String crdnId;														// 단속 ID
	private String levyId;														// 부과 ID
	private String[] rcvmtIDs;													// 수납 IDs
	private String rcvmtId;														// 수납 ID
	// ETC
	private String callPurpose;													// 호출용도 필요시 사용(select, create, update)
	private String delYn;														// 삭제 여부
	private String delRsn;														// 삭제 사유

	public String getCrdnId() {
		return ifEmpty(crdnId, () -> null);
	}

	public <T extends RcvmQuery> T setCrdnId(String crdnId) {
		this.crdnId = crdnId;

		return self();
	}

	public String getLevyId() {
		return ifEmpty(levyId, () -> null);
	}

	public <T extends RcvmQuery> T setLevyId(String levyId) {
		this.levyId = levyId;

		return self();
	}

	public String[] getRcvmtIDs() {
		return ifEmpty(rcvmtIDs, () -> null);
	}

	public <T extends RcvmQuery> T setRcvmtIDs(String... rcvmtIDs) {
		this.rcvmtIDs = rcvmtIDs;

		return self();
	}

	public String getRcvmtId() {
		return ifEmpty(rcvmtId, () -> null);
	}

	public <T extends RcvmQuery> T setRcvmtId(String rcvmtId) {
		this.rcvmtId = rcvmtId;

		return self();
	}

	// ETC /////////////////////////////////////////////////////////////////////
	public String getCallPurpose() {
		return ifEmpty(callPurpose, () -> null);
	}

	public <T extends RcvmQuery> T setCallPurpose(String callPurpose) {
		this.callPurpose = callPurpose;

		return self();
	}

	public String getDelYn() {
		return ifEmpty(delYn, () -> null);
	}

	public <T extends RcvmQuery> T setDelYn(String delYn) {
		this.delYn = delYn;

		return self();
	}

	public String getDelRsn() {
		return ifEmpty(delRsn, () -> null);
	}

	public <T extends RcvmQuery> T setDelRsn(String delRsn) {
		this.delRsn = delRsn;

		return self();
	}
	// ETC /////////////////////////////////////////////////////////////////////

}
