package com.leanwo.activiti.dto;

import java.util.ArrayList;
import java.util.List;

/**
 * 如果输出的是分页集合类型，那么使用BaseRangeResponse<XXXResponse>.
 *
 * @author YangZhiJie 2022-04-08
 * @param <T> the generic type
 */
public class BaseRangeResponse<T> extends BaseResponse {

    /** The datas. */
    private List<T> datas;

    /** 查询开始的行数. */
    private int start;
    
    /** 查询多少条数据. */
    private int length;

    /** 查询结果的总行数. */
    private int total;
    
    

    /**
     * Gets the datas.
     *
     * @return the datas
     */
    public List<T> getDatas() {
        return datas;
    }

    /**
     * Sets the datas.
     *
     * @param datas the new datas
     */
    public void setDatas(List<T> datas) {
        this.datas = datas;
    }

    /**
     * Adds the data.
     *
     * @param t the t
     */
    public void addData(T t) {
        if (datas == null) {
            datas = new ArrayList<T>();
        }
        datas.add(t);
    }

    /**
     * Gets the 查询开始的行数.
     *
     * @return the 查询开始的行数
     */
    public int getStart() {
        return start;
    }

    /**
     * Sets the 查询开始的行数.
     *
     * @param start the new 查询开始的行数
     */
    public void setStart(int start) {
        this.start = start;
    }

    /**
     * Gets the 查询结果的总行数.
     *
     * @return the 查询结果的总行数
     */
    public int getTotal() {
        return total;
    }

    /**
     * Sets the 查询结果的总行数.
     *
     * @param total the new 查询结果的总行数
     */
    public void setTotal(int total) {
        this.total = total;
    }

    
	/**
	 * Gets the 查询多少条数据.
	 *
	 * @return the 查询多少条数据
	 */
	public int getLength() {
		return length;
	}

	/**
	 * Sets the 查询多少条数据.
	 *
	 * @param length the new 查询多少条数据
	 */
	public void setLength(int length) {
		this.length = length;
	}
    
    
}
