package com.zanxiang.game.data.serve.pojo.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.util.List;

@Data
public class AdsOrderDetailTotalDTO {

    /**
     * 订单ID
     */
    
    private String orderId;

    /**
     * cp订单号
     */
    
    private String cpOrderId;

    /**
     * 第三方支付订单号
     */
    
    private String merchantOrderNo;

    /**
     * 玩家id
     */
    
    private String userId;

    /**
     * 玩家账号
     */
    
    private String username;

    /**
     * 所在服务器名称
     */
    
    private String serverName;

    /**
     * 所在原始服务器名称
     */
    
    private String sourceServerName;

    /**
     * 游戏角色
     */
    
    private String roleName;

    /**
     * cpId cp名称
     */
    
    private String cpName;

    /**
     * 充值游戏id
     */
    
    private List<Long> gameId;

    /**
     * 注册渠道对应的id --> agentId
     */
    
    private List<String> channelId;

    /**
     * 归因推广账号
     */
    
    private String accountId;

    /**
     * 归因投放人员
     */
    
    private String pitcherId;

    /**
     * 操作系统os
     */
    
    private String deviceSystem;

    /**
     * 产品名称(游戏商品名称)
     */
    
    private String productName;

    /**
     * 支付方式
     */
    
    private String payWay;

    /**
     * 收款商户号
     */
    
    private String merchantNo;

    /**
     * 支付状态
     */
    
    private String status;

    /**
     * CP通知状态
     */
    
    private String cpStatus;

    /**
     * 是否首充
     */
    
    private String isFirstRecharge;

    /**
     * 下单时间-开始
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate beginDate;

    /**
     * 下单时间-结束
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate endDate;

    /**
     * 玩家注册时间-开始
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate regTimeStart;

    /**
     * 玩家注册时间-结束
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate regTimeEnd;

    /**
     * 支付时间-开始
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate payTimeStart;

    /**
     * 支付时间-结束
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    
    private LocalDate payTimeEnd;

    /**
     * 充值到支付的间隔时间（最小分）
     */
    
    private Long regPayIntervalTimeMin;

    /**
     * 充值到支付的间隔时间（最大分）
     */
    
    private Long regPayIntervalTimeMax;

    /**
     * SDK来源
     */
    
    private String sourceSystem;

    /**
     * 计划ID
     */
    
    private String promotionId;

    /**
     * 广告ID
     */
    
    private String projectId;

    /**
     * 订单渠道类型
     */
    
    private String orderAgentType;

    /**
     * 回传状态
     */
    
    private Integer backStatus;

}
