Платежный объект Razorpay не имеет полей - PullRequest
0 голосов
/ 12 января 2019

Я только начал просматривать Razorpay документацию. Согласно их документу их Payment объект имеет структуру

{
  "id": "pay_29QQoUBi66xm2f",
  "entity": "payment",
  "amount": 5000,
  "currency": "INR",
  "status": "captured",
  "method": "card",
  "description": "Payment for adidas shoes",
  "amount_refunded": 0,
  "refund_status": null,
  "email": "test@razorpay.com",
  "contact": "9364591752",
  "notes": {},
  "fee": 1145,
  "tax": 145,
  "error_code": null,
  "error_description": null,
  "created_at": 1400826750
}

Но когда я импортировал их объект import com.razorpay.Payment и щелкнул по этому классу в моем редакторе кода, я не нашел полей.

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package com.razorpay;

import org.json.JSONObject;

public class Payment extends Entity {
    public Payment(JSONObject jsonObject) {
        super(jsonObject);
    }
}

Нет полей и геттеров. Итак, как мне сопоставить содержимое объекта Payment с моим пользовательским классом? Мое понимание неверно?

Спасибо.

1 Ответ

0 голосов
/ 12 января 2019

Вы используете метод get(), определенный в классе Entity, чтобы получить нужные значения. См. документацию Razorpay Java SDK :

Payment payment = razorpayClient.Payments.fetch("payment_id");
// The the Entity.get("attribute_key") method has flexible return types depending on the attribute
int amount = payment.get("amount");
String id = payment.get("id");
Date createdAt = payment.get("created_at");
...