package com.hzs.sale.deliver.param;

import com.hzs.common.core.web.domain.BaseAuthorityEntity;
import lombok.*;

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

/**
 * 立即发货列表查询入参
 */
@AllArgsConstructor
@NoArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
@Data
public class DeliverParam extends BaseAuthorityEntity {

    /**
     * 发货单ID列表
     */
    private List<Long> deliverIdList;

    /**
     * 发货单号
     */
    private String deliverCode;
    /**
     * 订单编号
     */
    private String orderCode;

    /**
     * 会员编号
     */
    private String memberCode;

    /**
     * 会员名称
     */
    private String memberName;

    /**
     * 联系方式
     */
    private String phone;

    /**
     * 订单发货状态（EDeliveryStatus）
     */
    private Integer deliveryStatus;

    /**
     * 产品名称
     */
    private String productName;
    /**
     * 产品规格
     */
    private String specsName;

    /**
     * 发货方式（EDelivery）
     */
    private Integer deliveryWay;
    /**
     * 运输方式（ETransportType）
     */
    private Integer transportType;
    /**
     * 供应方式（ESupplyWay）
     */
    private Integer operateScope;

    /**
     * 物流公司
     */
    private String logisticsCompany;
    /**
     * 物流单号
     */
    private String logisticsCode;

    /**
     * 收货人
     */
    private String recName;
    /**
     * 收货电话
     */
    private String recPhone;

    /**
     * 省
     */
    private Integer recProvince;
    /**
     * 市
     */
    private Integer recCity;
    /**
     * 县
     */
    private Integer recCounty;
    /**
     * 收货地址
     */
    private String recAddress;

    /**
     * 创建时间
     */
    private Date[] creationTime;

    /**
     * 支付时间
     */
    private Date[] payTime;

    /**
     * 打印时间
     */
    private Date[] printTime;

    /**
     * 发货时间
     */
    private Date[] deliverTime;

    /**
     * 打印状态（EPrintStatus）
     */
    private Integer printStatus;

    /**
     * 发货单ID（非传入）
     */
    private Long pkDeliver;
    /**
     * 发货单明细ID（非传入）
     */
    private Long pkDeliverItems;

    /**
     * 发货类型（1=总仓发货，2=一件代发） -- EShippingChannel
     */
    private Integer shippingChannel;
    /**
     * 发货仓库
     */
    private Integer pkStorehouse;

    /**
     * 发货单ID列表
     */
    private List<Long> pkIdList;

    /**
     * 系统类型（2=新零售）
     */
    private Integer systemType;

    /**
     * 全部系统（0=是，1=否）
     */
    private Integer systemAll;

    /**
     * 隶属体系
     */
    private Long pkVertex;

}
