package com.mgm.mcrm.common.dtos; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; @Getter @Setter @NoArgsConstructor public class BaseQueryRequest { private int startRow = -1; private int endRow = -1; public int getPageSize() { validatePageInfo(); return pageSize; } public int getPageNo() { validatePageInfo(); return pageNo; } private int pageSize = -1; private int pageNo=-1; private String sortOrder; private boolean pageInfoValidated=false; private void validatePageInfo() { if(pageInfoValidated) return; if(pageSize<0){ if(startRow>=0 && endRow>=0){ pageSize=endRow-startRow; }else{ pageSize=20; } } if(pageNo<=0){ if(startRow>=0){ pageNo = (startRow+1)/pageSize; if(pageNo<0) { pageNo=0; } }else{ pageNo=0; } }else{ pageNo--; } pageInfoValidated=true; } }