package com.neusoft.smart.pos.payment.persistent.ext.domain;

import lombok.Data;

import java.io.Serializable;

@Data
public class AliGrantPayNotify implements Serializable {
    private String notify_time;
    private String notify_type;
    private String notify_id;
    private String sign_type;
    private String sign;
    private String auth_no;     //支付宝资金授权订单号
    private String out_order_no;//商户的资金授权订单号
    private String operation_id;//支付宝的资金操作流水号
    private String out_request_no;//商户资金操作流水号
    private String operation_type;//资金操作类型，支持【FREEZE，UNFREEZE，PAY】
    private float amount;//本次操作冻结的金额，单位为：元（人民币），精确到小数点后两位
    private String status;//资金预授权明细的状态 目前支持： INIT：初始 SUCCESS: 成功 CLOSED：关闭
    private String gmt_create;//操作创建时间
    private String gmt_trans;//操作处理完成时间
    private String payer_logon_id;//付款方支付宝账号登录号
    private String payer_user_id;//付款方支付宝账号UID
    private String payee_logon_id;//收款方支付宝账号登陆号
    private String payee_user_id;//收款方支付宝账号UID
    private float total_freeze_amount;//累计冻结金额
    private float total_unfreeze_amount;//累计解冻金额
    private float total_pay_amount;//累计支付金额
    private float rest_amount;//剩余冻结金额
    private float credit_amount;//本次操作中信用金额，单位为：元（人民币），精确到小数点后两位（信用授权场景返回）
    private float fund_amount;//本次操作中自有资金金额，单位为：元（人民币），精确到小数点后两位（信用授权场景返回）
    private float total_freeze_credit_amount;//累计冻结信用金额，单位为：元（人民币），精确到小数点后两位（信用授权场景返回）
    private float total_freeze_fund_amount;//累计冻结自有资金金额，单位为：元（人民币），精确到小数点后两位 （信用授权场景返回）
    private float total_unfreeze_credit_amount;//累计解冻信用金额，单位为：元（人民币），精确到小数点后两位（信用授权场景返回）
    private float total_unfreeze_fund_amount;//累计解冻自有资金金额，单位为：元（人民币），精确到小数点后两位 （信用授权场景返回）
    private float total_pay_credit_amount;//累计支付信用金额，单位为：元（人民币），精确到小数点后两位 （信用授权场景返回）
    private float total_pay_fund_amount;//累计支付自有资金金额，单位为：元（人民币），精确到小数点后两位 （信用授权场景返回）
    private float rest_credit_amount;//剩余冻结信用金额，单位为：元（人民币），精确到小数点后两位 （信用授权场景返回）
    private float rest_fund_amount;//剩余冻结自有资金金额，单位为：元（人民币），精确到小数点后两位（信用授权场景返回）
    private String pre_auth_type;//预授权类型，目前支持 CREDIT_AUTH(信用预授权); 商户可根据该标识来判断该笔预授权的类型，当返回值为"CREDIT_AUTH"表明该笔预授权为信用预授权，没有真实冻结资金；如果未返回，则表示普通资金预授权，会冻结用户资金。
    private String trans_currency;
}