56 lines
1.5 KiB
Dart
56 lines
1.5 KiB
Dart
import 'package:money2/money2.dart';
|
|
|
|
|
|
class PaymentOperationMoneySnapshot {
|
|
final Money? amount;
|
|
final Money? convertedAmount;
|
|
|
|
const PaymentOperationMoneySnapshot({
|
|
required this.amount,
|
|
required this.convertedAmount,
|
|
});
|
|
}
|
|
|
|
class PaymentOperationMoney {
|
|
final PaymentOperationMoneySnapshot? planned;
|
|
final PaymentOperationMoneySnapshot? executed;
|
|
|
|
const PaymentOperationMoney({required this.planned, required this.executed});
|
|
}
|
|
|
|
class PaymentExecutionOperation {
|
|
final String? stepRef;
|
|
final String? operationRef;
|
|
final String? gateway;
|
|
final String? code;
|
|
final String? state;
|
|
final String? label;
|
|
final PaymentOperationMoney? money;
|
|
final String? failureCode;
|
|
final String? failureReason;
|
|
final DateTime? startedAt;
|
|
final DateTime? completedAt;
|
|
|
|
const PaymentExecutionOperation({
|
|
required this.stepRef,
|
|
required this.operationRef,
|
|
required this.gateway,
|
|
required this.code,
|
|
required this.state,
|
|
required this.label,
|
|
required this.money,
|
|
required this.failureCode,
|
|
required this.failureReason,
|
|
required this.startedAt,
|
|
required this.completedAt,
|
|
});
|
|
|
|
Money? get amount => money?.executed?.amount ?? money?.planned?.amount;
|
|
Money? get convertedAmount =>
|
|
money?.executed?.convertedAmount ?? money?.planned?.convertedAmount;
|
|
Money? get plannedAmount => money?.planned?.amount;
|
|
Money? get plannedConvertedAmount => money?.planned?.convertedAmount;
|
|
Money? get executedAmount => money?.executed?.amount;
|
|
Money? get executedConvertedAmount => money?.executed?.convertedAmount;
|
|
}
|