package cokr.xit.fims.cmmn;

import cokr.xit.foundation.component.QueryRequest;

public class CmmnQuery extends QueryRequest {

	private static final long serialVersionUID = 1L;

	private String sseKey;

	private String mainOption;
	private String subOption;

	private String cellDefs;
	private String includePhoto;

	private String thisDay;

	private String taskSeCd; 			// 업무 구분 코드
	private String sggCd;				// 시군구 코드
	private String deptCd;				// 부서 코드
	private String instCd; 				// 기관 코드
	private String useYn; 				// 사용 여부
	private String delYn;				// 삭제 여부

	private String schDateOpt; 			// 검색 일자 구분
	private String schDateFrom; 		// 검색 일자 시작
	private String schDateTo; 			// 검색 일자 종료
	private String schRegDateOpt;		// 등록 일자 구분
	private String schRegDateFrom;		// 등록 일자 시작
	private String schRegDateTo;		// 등록 일자 종료
	private String schRgtrOpt;			// 등록 사용자 구분
	private String schRgtrCd;			// 등록 사용자 코드
	private String schRgtrNm;			// 등록 사용자 명

	public String getSseKey() {
		return ifEmpty(sseKey, () -> null);
	}

	public <T extends CmmnQuery> T setSseKey(String sseKey) {
		this.sseKey = sseKey;
		return self();
	}

	public String getMainOption() {
		return ifEmpty(mainOption, () -> null);
	}

	public <T extends CmmnQuery> T setMainOption(String mainOption) {
		this.mainOption = mainOption;
		return self();
	}

	public String getSubOption() {
		return ifEmpty(subOption, () -> null);
	}

	public <T extends CmmnQuery> T setSubOption(String subOption) {
		this.subOption = subOption;
		return self();
	}

	public String getCellDefs() {
		return ifEmpty(cellDefs, () -> null);
	}

	public <T extends CmmnQuery> T setCellDefs(String cellDefs) {
		this.cellDefs = cellDefs;
		return self();
	}

	public String getIncludePhoto() {
		return ifEmpty(includePhoto, () -> null);
	}

	public <T extends CmmnQuery> T setIncludePhoto(String includePhoto) {
		this.includePhoto = includePhoto;
		return self();
	}

	public String getThisDay() {
		return ifEmpty(thisDay, () -> null);
	}

	public <T extends CmmnQuery> T setThisDay(String thisDay) {
		this.thisDay = thisDay;
		return self();
	}

	public String getSggCd() {
		return ifEmpty(sggCd, () -> null);
	}

	public <T extends CmmnQuery> T setSggCd(String sggCd) {
		this.sggCd = sggCd;
		return self();
	}

	public String getDeptCd() {
		return ifEmpty(deptCd, () -> null);
	}

	public <T extends CmmnQuery> T setDeptCd(String deptCd) {
		this.deptCd = deptCd;
		return self();
	}

	public String getTaskSeCd() {
		return ifEmpty(taskSeCd, () -> null);
	}

	public <T extends CmmnQuery> T setTaskSeCd(String taskSeCd) {
		this.taskSeCd = taskSeCd;
		return self();
	}

	public String getInstCd() {
		return ifEmpty(instCd, () -> null);
	}

	public <T extends CmmnQuery> T setInstCd(String instCd) {
		this.instCd = instCd;
		return self();
	}

	public String getUseYn() {
		return ifEmpty(useYn, () -> null);
	}

	public <T extends CmmnQuery> T setUseYn(String useYn) {
		this.useYn = useYn;
		return self();
	}

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

	public <T extends CmmnQuery> T setDelYn(String delYn) {
		this.delYn = delYn;
		return self();
	}

	public String getSchDateOpt() {
		return ifEmpty(schDateOpt, () -> null);
	}

	public <T extends CmmnQuery> T setSchDateOpt(String schDateOpt) {
		this.schDateOpt = schDateOpt;
		return self();
	}

	public String getSchDateFrom() {
		return ifEmpty(schDateFrom, () -> null);
	}

	public <T extends CmmnQuery> T setSchDateFrom(String schDateFrom) {
		this.schDateFrom = schDateFrom;
		return self();
	}

	public String getSchDateTo() {
		return ifEmpty(schDateTo, () -> null);
	}

	public <T extends CmmnQuery> T setSchDateTo(String schDateTo) {
		this.schDateTo = schDateTo;
		return self();
	}

	public String getSchRegDateOpt() {
		return ifEmpty(schRegDateOpt, () -> null);
	}

	public <T extends CmmnQuery> T setSchRegDateOpt(String schRegDateOpt) {
		this.schRegDateOpt = schRegDateOpt;
		return self();
	}

	public String getSchRegDateFrom() {
		return ifEmpty(schRegDateFrom, () -> null);
	}

	public <T extends CmmnQuery> T setSchRegDateFrom(String schRegDateFrom) {
		this.schRegDateFrom = schRegDateFrom;
		return self();
	}

	public String getSchRegDateTo() {
		return ifEmpty(schRegDateTo, () -> null);
	}

	public <T extends CmmnQuery> T setSchRegDateTo(String schRegDateTo) {
		this.schRegDateTo = schRegDateTo;
		return self();
	}

	public String getSchRgtrOpt() {
		return ifEmpty(schRgtrOpt, () -> null);
	}

	public <T extends CmmnQuery> T setSchRgtrOpt(String schRgtrOpt) {
		this.schRgtrOpt = schRgtrOpt;
		return self();
	}

	public String getSchRgtrCd() {
		return ifEmpty(schRgtrCd, () -> null);
	}

	public <T extends CmmnQuery> T setSchRgtrCd(String schRgtrCd) {
		this.schRgtrCd = schRgtrCd;
		return self();
	}

	public String getSchRgtrNm() {
		return ifEmpty(schRgtrNm, () -> null);
	}

	public <T extends CmmnQuery> T setSchRgtrNm(String schRgtrNm) {
		this.schRgtrNm = schRgtrNm;
		return self();
	}

}