package com.crm.pay.entity.callback;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;

import java.math.BigDecimal;

@Data
public class S2sPayCallbackEntity {

    private String id;

    @JSONField(name = "order_number")
    private String orderNumber;

    @JSONField(name = "order_amount")
    private String orderAmount;

    @JSONField(name = "order_currency")
    private String orderCurrency;

    @JSONField(name = "order_description")
    private String orderDescription;

    @JSONField(name = "order_status")
    private String orderStatus;

    private String type;

    private String status;

    @JSONField(name = "connector_name")
    private String connectorName;

    @JSONField(name = "rrn")
    private String rrn;

    @JSONField(name = "arn")
    private String arn;

    @JSONField(name = "approval_code")
    private String approvalCode;

    @JSONField(name = "gateway_id")
    private String gatewayId;

    @JSONField(name = "extra_gateway_id")
    private String extraGatewayId;

    @JSONField(name = "merchant_name")
    private String merchantCame;

    @JSONField(name = "mid_name")
    private String midName;

    @JSONField(name = "issuer_country")
    private String issuerCountry;

    @JSONField(name = "issuer_bank")
    private String issuerBank;

    @JSONField(name = "card")
    private String card;

    @JSONField(name = "card_expiration_date")
    private String cardExpirationDate;

    @JSONField(name = "customer_name")
    private String customerName;

    @JSONField(name = "customer_email")
    private String customerEmail;

    @JSONField(name = "customer_country")
    private String customerCountry;

    @JSONField(name = "customer_state")
    private String customerState;

    @JSONField(name = "customer_city")
    private String customerCity;

    @JSONField(name = "customerAddress")
    private String customerAddress;

    @JSONField(name = "customerIp")
    private String customerIp;

    @JSONField(name = "date")
    private String date;

    @JSONField(name = "recurring_init_trans_id")
    private String recurringInitTransId;

    @JSONField(name = "recurring_token")
    private String recurringToken;

    @JSONField(name = "schedule_id")
    private String scheduleId;

    @JSONField(name = "exchange_rate")
    private BigDecimal exchange_rate;

    @JSONField(name = "exchange_rate_base")
    private BigDecimal exchangeRateBase;

    @JSONField(name = "exchange_currency")
    private String exchangeCurrency;

    @JSONField(name = "exchange_amount")
    private Integer exchangeAmount;

    @JSONField(name = "extendedData")
    private String extendedData;

    private String hash;
}

