/** * 文件名:@OnePage.java
* 包名:cn.efunbox.afw.core.domain.page
* 项目名:afw-core
* @author xtwin
*/ package cn.efunbox.audio.page; import java.io.Serializable; import java.util.Collections; import java.util.List; public class ResOnePage implements ResPageable> ,Serializable { private static final long serialVersionUID = 1L; // 默认分页数据条数 public final static int DEFAULT_PAGE_SIZE = 20; // 当前页 private int pageNum = 1; // 当前页大小 private int pageSize = DEFAULT_PAGE_SIZE; // 总条数 private long pageTotal; // 数据内容 private List list; // 数据内容 private List contentList; //数据内容 private List chapterList; /** * 构造方法 */ protected ResOnePage() { // 默认构造方法 } /** * 构造方法 */ public ResOnePage(Long pageTotal) { this(pageTotal, null, null); } /** * 构造方法 */ public ResOnePage(Long pageTotal, Integer pageNum) { this(pageTotal, pageNum, null); } /** * 构造方法 */ public ResOnePage(Long pageTotal, Integer pageNum, Integer pageSize) { // 总记录数 if (null != pageTotal) { if (pageTotal < 0) { throw new RuntimeException("pageTotal must be not less than zero!"); } this.pageTotal = pageTotal; } // 当前页码 if (null != pageNum) { if (pageNum < 0) { throw new RuntimeException("pageNum must be not less than zero!"); } this.pageNum = pageNum; } // 当前页数据条数 if (null != pageSize) { if (pageSize < 0) { throw new RuntimeException("pageSize must be not less than zero!"); } this.pageSize = pageSize; } } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public int getTotalNo() { return pageTotal == 0 ? 1 : (int) ((pageTotal / pageSize) + (pageTotal % pageSize == 0 ? 0 : 1)); } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public long getPageTotal() { return pageTotal; } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public int getPageNum() { return pageNum; } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public int getPageSize() { return pageSize; } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public boolean hasNext() { return getPageNum() < getTotalNo(); } /** * 功能:
* * 重写:xtwin
* * @version :2016年7月31日 上午9:27:27
* * @return
*/ @Override public boolean hasPrevious() { return getPageNum() > 1; } /** * @version 2016年7月31日-上午10:57:49 */ public void setPageNum(int pageNum) { this.pageNum = pageNum; } /** * @version 2016年7月31日-上午10:57:49 */ public void setPageSize(int pageSize) { this.pageSize = pageSize; } /** * @version 2016年7月31日-上午10:57:49 */ public void setPageTotal(int pageTotal) { /*if (pageTotal < 0) { throw new AfwRuntimeException("pageTotal must be not less than zero!"); }*/ this.pageTotal = pageTotal; } /** * 功能:bean规范
* * @author xtwin
* @version 2016年7月31日 下午12:54:59
*/ public boolean isHasNext() { return hasNext(); } /** * 功能:bean规范
* * @author xtwin
* @version 2016年7月31日 下午12:55:22
*/ public boolean isHasPrevious() { return hasPrevious(); } /** * @version 2016年8月1日-上午10:00:32 */ public void setList(List list) { this.list = list; } public List getContentList() { return null == contentList ? Collections.emptyList() : contentList; } public void setContentList(List contentList) { this.contentList = contentList; } public List getChapterList() { return null == chapterList ? Collections.emptyList() : chapterList; } public void setChapterList(List chapterList) { this.chapterList = chapterList; } /** * 功能:
* * 重写:xtwin
* * @version :2016年8月1日 上午9:49:32
* * @return
* @see Pageable#getList() */ @Override public List getList() { return null == list ? Collections.emptyList() : list; } /** * 功能:
* * 重写:xtwin
* * @version :2016年8月1日 上午10:05:48
* * @return
* @see Pageable#getStart() */ @Override public int getStart() { return (getPageNum() - 1) * getPageSize(); } }