package com.zm.order.tool.server.query;

import com.alibaba.fastjson.JSON;
import com.zm.order.tool.server.model.BasePageQuery;


import java.util.Date;
import java.util.List;

/**
 * @Description 退款单查询参数
 * @Author: ph
 * @Date: 2019/11/4 09:11
 */
public class RefundQuery extends BasePageQuery {

    /**
     * 退款单号
     */
    private Integer bizType;

    /**
     * 退款单号
     */
    private String refundNo;

    private Integer sortFlag;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 订单号列表
     */
    private List<String> orderNoList;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * 商家id
     */
    private Long sellerId;

    /**
     * 门店id
     */
    private Long storeId;

    /**
     * 状态列表
     */
    private List<Integer> statusList;

    /**
     * 退款申请开始时间
     */
    private Date applyAtStart;

    /**
     * 退款申请结束时间
     */
    private Date applyAtEnd;

    /**
     * 来源单号
     */
    private String sourceNo;

    /**
     * 订单类型
     */
    private Integer orderType;

    /**
     * 订单子类型
     */
    private Integer orderSubType;

    /**
     * 买家手机号
     */
    private String mobile;

    /**
     * 订单来源
     */
    private Integer source;

    /**
     * 是否独立收款
     */
    private Integer isAlone;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 统计数量字段
     */
    private String amountField;

    /**
     * 假分页数量
     */
    private Integer fakePageSize;

    /**
     * 退款单列表
     */
    private List<String> refundNoList;

    /**
     * 门店id列表
     */
    private List<Long> storeIdList;

    /**
     * 退款单类型
     */
    private Integer refundType;

    /**
     * 更新时间开始
     */
    private Date updatedAtStart;

    /**
     * 更新时间结束
     */
    private Date updatedAtEnd;

    /**
     * 用于批量查询 search-after
     */
    private Long lastId;

    /**
     * 数量 search-after
     */
    private Integer size;

    /**
     * 导出类型
     */
    private Integer exportType;

    /**
     * 退款方式  1-商家退款，2-用户申请退款,3-用户申请售后
     */
    private Integer refundWay;

    /**
     * 订单子类型列表
     */
    private List<Integer> orderSubTypeList;

    /**
     * 处理开始时间
     */
    private Date dealAtStart;

    /**
     * 处理结束时间
     */
    private Date dealAtEnd;

    /**
     * 是否查询当天退款单标记
     * 0：除去当天的退款单(当天时间指的是是否与下单时间在同一天)
     * 1：只查询当天的退款单(当天时间指的是是否与下单时间在同一天)
     */
    private Integer currentDayFlags;

    /**
     * 机构id
     */
    private Long orgId;

    private Date orderAtStart;

    private Date orderAtEnd;

    private Long maxId;

    /**
     * 排除dealAt时间
     */
    private Integer excDealAt;

    public Integer getSortFlag() {
        return sortFlag;
    }

    public void setSortFlag(Integer sortFlag) {
        this.sortFlag = sortFlag;
    }

    public Integer getExcDealAt() {
        return excDealAt;
    }

    public void setExcDealAt(Integer excDealAt) {
        this.excDealAt = excDealAt;
    }

    public Long getMaxId() {
        return maxId;
    }

    public void setMaxId(Long maxId) {
        this.maxId = maxId;
    }

    public Integer getBizType() {
        return bizType;
    }

    public void setBizType(Integer bizType) {
        this.bizType = bizType;
    }

    public Date getOrderAtStart() {
        return orderAtStart;
    }

    public void setOrderAtStart(Date orderAtStart) {
        this.orderAtStart = orderAtStart;
    }

    public Date getOrderAtEnd() {
        return orderAtEnd;
    }

    public void setOrderAtEnd(Date orderAtEnd) {
        this.orderAtEnd = orderAtEnd;
    }

    public Integer getCurrentDayFlags() {
        return currentDayFlags;
    }

    public void setCurrentDayFlags(Integer currentDayFlags) {
        this.currentDayFlags = currentDayFlags;
    }

    public List<Integer> getOrderSubTypeList() {
        return orderSubTypeList;
    }

    public void setOrderSubTypeList(List<Integer> orderSubTypeList) {
        this.orderSubTypeList = orderSubTypeList;
    }

    public Date getDealAtStart() {
        return dealAtStart;
    }

    public void setDealAtStart(Date dealAtStart) {
        this.dealAtStart = dealAtStart;
    }

    public Date getDealAtEnd() {
        return dealAtEnd;
    }

    public void setDealAtEnd(Date dealAtEnd) {
        this.dealAtEnd = dealAtEnd;
    }

    public Integer getRefundWay() {
        return refundWay;
    }

    public void setRefundWay(Integer refundWay) {
        this.refundWay = refundWay;
    }

    public String getRefundNo() {
        return refundNo;
    }

    public void setRefundNo(String refundNo) {
        this.refundNo = refundNo;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public List<String> getOrderNoList() {
        return orderNoList;
    }

    public void setOrderNoList(List<String> orderNoList) {
        this.orderNoList = orderNoList;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getSellerId() {
        return sellerId;
    }

    public void setSellerId(Long sellerId) {
        this.sellerId = sellerId;
    }

    public Long getStoreId() {
        return storeId;
    }

    public void setStoreId(Long storeId) {
        this.storeId = storeId;
    }

    public List<Integer> getStatusList() {
        return statusList;
    }

    public void setStatusList(List<Integer> statusList) {
        this.statusList = statusList;
    }

    public Date getApplyAtStart() {
        return applyAtStart;
    }

    public void setApplyAtStart(Date applyAtStart) {
        this.applyAtStart = applyAtStart;
    }

    public Date getApplyAtEnd() {
        return applyAtEnd;
    }

    public void setApplyAtEnd(Date applyAtEnd) {
        this.applyAtEnd = applyAtEnd;
    }

    public String getSourceNo() {
        return sourceNo;
    }

    public void setSourceNo(String sourceNo) {
        this.sourceNo = sourceNo;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }

    public Integer getOrderSubType() {
        return orderSubType;
    }

    public void setOrderSubType(Integer orderSubType) {
        this.orderSubType = orderSubType;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public Integer getSource() {
        return source;
    }

    public void setSource(Integer source) {
        this.source = source;
    }

    public Integer getIsAlone() {
        return isAlone;
    }

    public void setIsAlone(Integer isAlone) {
        this.isAlone = isAlone;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getAmountField() {
        return amountField;
    }

    public void setAmountField(String amountField) {
        this.amountField = amountField;
    }

    public Integer getFakePageSize() {
        return fakePageSize;
    }

    public void setFakePageSize(Integer fakePageSize) {
        this.fakePageSize = fakePageSize;
    }

    public List<String> getRefundNoList() {
        return refundNoList;
    }

    public void setRefundNoList(List<String> refundNoList) {
        this.refundNoList = refundNoList;
    }

    public List<Long> getStoreIdList() {
        return storeIdList;
    }

    public void setStoreIdList(List<Long> storeIdList) {
        this.storeIdList = storeIdList;
    }

    public Integer getRefundType() {
        return refundType;
    }

    public void setRefundType(Integer refundType) {
        this.refundType = refundType;
    }

    public Date getUpdatedAtStart() {
        return updatedAtStart;
    }

    public void setUpdatedAtStart(Date updatedAtStart) {
        this.updatedAtStart = updatedAtStart;
    }

    public Date getUpdatedAtEnd() {
        return updatedAtEnd;
    }

    public void setUpdatedAtEnd(Date updatedAtEnd) {
        this.updatedAtEnd = updatedAtEnd;
    }

    public Long getLastId() {
        return lastId;
    }

    public void setLastId(Long lastId) {
        this.lastId = lastId;
    }

    public Integer getSize() {
        return size;
    }

    public void setSize(Integer size) {
        this.size = size;
    }

    public Integer getExportType() {
        return exportType;
    }

    public void setExportType(Integer exportType) {
        this.exportType = exportType;
    }

    public Long getOrgId() {
        return orgId;
    }

    public void setOrgId(Long orgId) {
        this.orgId = orgId;
    }

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }
}
