package com.hzs.sale.deliver.param;

import com.hzs.common.core.web.domain.BaseAuthorityEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * @Description: 未合单列表查询入参
 * @Author: jiang chao
 * @Time: 2022/10/21 17:26
 * @Classname: DeliverOrderItemParam
 * @PackageName: com.hzs.sale.deliver.param
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class DeliverUnhandledParam extends BaseAuthorityEntity {

    /**
     * 订单编号
     */
    private String orderCode;

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

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

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

    /**
     * 订单类型（EOrderType）
     */
    private Integer orderType;

    /**
     * 订单状态（EOrderStatus）
     */
    private Integer orderStatus;

    /**
     * 预售状态（EPresaleStatus）
     */
    private Integer preSaleStatus;

    /**
     * 发货方式（EDelivery）
     */
    private Integer deliveryWay;

    /**
     * 运输方式（ETransportType）
     */
    private Integer transportType;

    /**
     * 支付方式（EOrderPayType）
     */
    private Integer payType;

    /**
     * 供应方式（ESupplyWay）
     */
    private Integer operateScope;

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

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

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

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

    /**
     * 运输方式（ETransportType）
     */
    private List<Integer> transportTypeList;
    /**
     * 发货方式（EDelivery）
     */
    private List<Integer> deliveryWayList;

    /**
     * 销售类型（0=赠品，1=销售）
     */
    private Integer isGift;

    /**
     * 发货类型（1=总仓发货，2=一件代发，3=工具流） -- EShippingChannel
     */
    private Integer shippingChannel;

    /**
     * 产品分类
     */
    private Integer pkClassify;

    /**
     * 订单状态列表（各接口根据逻辑传入不同查询状态）
     */
    private List<Integer> orderStatusList;

    /**
     * 产品名称
     */
    private String productName;

    /**
     * 产品规格
     */
    private String specsName;

    /**
     * 原单号
     */
    private String originalOrderCode;
    /**
     * 原单号ID
     */
    private Long pkOriginalOrder;

    /**
     * 发货仓库
     */
    private String fhck;
    /**
     * 发货仓库
     */
    private Integer pkStorehouse;

    /**
     * 订单明细ID列表
     */
    private List<Long> pkIdList;

}
