package com.yuchen.saas.payment.api.dto.orderCenter;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.nest.springwrap.core.mp.support.Query;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 已支付的订单统计
 * @author zhouhanwei
 * @create 2023/7/26 10:02
 */
@Data
public class PaidOrderStatisticsDataReqDTO extends Query {

    /**
     * 年/月/日(年，月,日)
     */
    @NotBlank(message = "时间维度不能为空")
    private String dateFlag;

    /**
     * 开始时间
     */
    @NotBlank(message = "结束时间不能为空")
    private String startDate;

    /**
     * 结束时间
     */
    @NotBlank(message = "结束时间不能为空")
    private String endDate;

    /**
     * 管理区id/园区id
     */
    private Long parkId;

    /**
     * 车场/电站/场地
     */
    private Long siteId;

    /**
     * 车场/电站/场地列表
     */
//    @NotNull(message = "管理区列表不能为空")
    private List<Long> siteIdList;

    /**
     * 运营商名称
     */
    @ApiModelProperty(name = "operatorName", value = "运营商名称")
    private String operatorName;


    /**
     * 运营商ID列表
     */
    @ApiModelProperty(name = "operatorList", value = "运营商ID列表")
    private List<Long> operatorList;

    /**
     * 运营商ID
     */
    @ApiModelProperty(name = "operator", value = "运营商ID")
    private Long operator;

    /**
     * 订单类型 1or3 ：临停， 2月卡，20错时卡，26充电，30：占位费
     */
    @ApiModelProperty(name = "orderType", value = "订单类型 1or3 ：临停， 2月卡，20错时卡，26充电，30：占位费")
    private String orderType;

    /**
     * 订单类型列表
     */
    @ApiModelProperty(name = "orderTypeList", value = "订单类型列表")
    private List<String> orderTypeList;

    /**
     * 业务类型（1：智慧停车，2：智慧充电，3：智慧物业）
     */
    @ApiModelProperty(name = "businessType", value = "业务类型（1：智慧停车，2：智慧充电，3：智慧物业）")
    private String businessType;

    /**
     * 支付方式 1:微信支付; 2:钱包支付;
     */
    @ApiModelProperty(name = "payType", value = "支付方式 1:微信支付; 2:钱包支付;")
    private String payType;

    /**
     * 支付渠道编码
     */
    @ApiModelProperty(name = "payChannelCode", value = "支付渠道编码（xc_pay：厦门银行，all_in_pay：通联支付）")
    private String payChannelCode;


}
