package cn.superdesk.uniorder.dto.param.operationCenter.order;

import cn.superdesk.uniorder.common.enums.accounting.order.ImportAccountingOrderExcelEnum;
import cn.superdesk.uniorder.common.pagination.PageQueryParam;
import cn.superdesk.uniorder.dto.param.operationCenter.base.OperationCenterParam;
import cn.superdesk.uniorder.dto.vo.operationCenter.customer.OpCenterCustomerOperatorOrgVo;
import cn.superdesk.uniorder.dto.vo.operationCenter.operators.OperationCenterOperatorsVo;
import cn.superdesk.uniorder.dto.vo.sys.SysSupplierVo;
import cn.superdesk.uniorder.dto.vo.sys.sysPlatformVo;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @Author : zx
 * @Create : 2023/3/24 11:31
 * Description : 运营中心PC 订单管理列表入参
 */

@Data
public class OperationCenterOrderParam  extends OperationCenterParam {

    private Integer pageNumber;//页码

    private Integer pageSize;//每页数量

    //运营中心-订单id
    private Long id;

    //运营商id --运营中心表中id
    //private String operatorId;
    //当选中客户-运营商-项目时
    private List<OpCenterCustomerOperatorOrgVo> opCenterCustomerOperatorOrgList;

    private List<sysPlatformVo> sysPlatformVirList;

    //业务平台 业务平台编码 ①FLSC：福利商城②FWZC：服务之窗
    private String bizPlatformCode;
    //订单类型 订单类型编码1）FLSC：福利商城（2）FZS：蜂助手
    private List<String> orderTypeCode;

    //业务类型 1-订单 2-售后单
    private List<Integer> orderBizTypeId;
    //支付状态 1-未支付，2-已支付，3-未退款，4-已退款
    private List<Integer> orderPayStatus;


    //平台支付方式-多个
    private List<Integer> platformPayTypeIdList;

    //交易状态  1-未完成，2-已完成，3-已取消
    private List<Integer> transactionStatusId;
    //售后状态
    private List<Integer> platformAftersaleStatusId;
    //售后类型
    private List<String> platformAftersaleTypeId;
    //下单人
    private String buyerName;
    //下单人手机号码
    private String buyerMobile;
    //物流单号
    private String expressTrackingNo;
    //第三方单号
    private String thirdPartyOrderSn;
    //退单原单号
    private String refundOriginOrderSn;
    //订单编号
    private String orderSn;

    //订单时间 开始时间
    private String orderBeginTime;
    //订单截止 时间
    private String orderEndTime;


    //支付时间 trading_time
    private String tradingBeginTime;
    private String tradingEndTime;

    //发货时间send_time
    private String sendBeginTime;
    private String sendEndTime;

    //完成时间finish_time
    private String finishBeginTime;
    private String finishEndTime;

/**
 * #########################对账添加参数##############
 */

    //标记 1-查询统计 2-导出 默认null 列表
    private Integer flag;//
    //商品类型
    private Integer goodsTypeId;
    //业务平台 多选
  //  private List<String> bizPlatformCodeList;
    //商品id
    private String goodsId;
    private String goodsName;
    //对账状态
    private String accountingStatus;
    //账单编号
    private String accountingOrderSnOperator;
    //是否参与结算
    private String isSettlement;
    private String integralTypeName;
    private String batch;

    private String supplierIds;//供应商id 多个

    private List<SysSupplierVo> supplierList;

    private ImportAccountingOrderExcelEnum importAccountingOrderExcelEnum;

}
