package com.xhpc.card.domain;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
 * Wrapper response class of interface of query recharging record
 *
 * @author WH
 * @date 2022/2/14 16:08
 * @since version-1.0
 */
@NoArgsConstructor
@Data
public class QueryRechargingRecordResponse {

    /**
     * 总条数
     */
    @JsonProperty("totalItems")
    private Long totalItems;
    /**
     * 数据
     */
    @JsonProperty("data")
    private List<DataDTO> data;

    /**
     * 一条数据
     */
    @NoArgsConstructor
    @Data
    public static class DataDTO {

        /**
         * 用户账户
         */
        @JsonProperty("userAccount")
        private String userAccount;
        /**
         * 订单编号
         */
        @JsonProperty("orderNumber")
        private String orderNumber;
        /**
         * 订单编号
         */
        @JsonProperty("rechargeOrderNumber")
        private String rechargeOrderNumber;
        /**
         * 充值金额
         */
        @JsonProperty("amount")
        private BigDecimal amount;
        /**
         * 充值金额
         */
        @JsonProperty("rechargeMoney")
        private Long rechargeMoney;
        /**
         * 充值方式（1 微信 2 支付宝 3 平台 4 卡机设备)
         */
        @JsonProperty("rechargeMethod")
        private String rechargeMethod;
        /**
         * 充值方式（1 微信 2 支付宝 3 平台 4 卡机设备)
         */
        @JsonProperty("type")
        private Integer type;
        /**
         * 订单状态（0待支付 1充值成功，2充值失败）
         */
        @JsonProperty("orderStatus")
        private Integer orderStatus;
        /**
         * 订单状态（0待支付 1充值成功，2充值失败）
         */
        @JsonProperty("status")
        private Integer status;
        /**
         * 创建时间
         */
        @JsonProperty("createTime")
        private String createTime;
        /**
         * 用户类型  8离线端
         */
        @JsonProperty("source")
        private Integer source;
    }

}
