TransactionModel.fromJson constructor

TransactionModel.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory TransactionModel.fromJson(Map<String, dynamic> json) {
  return TransactionModel(
    id: json['id'],
    type: TransactionType.fromValue(json['type']),
    status: TransactionStatus.fromValue(json['status']),
    paymentMethod: PaymentMethod.fromValue(json['paymentMethod']),
    token: json['token'],
    credit: json['credit'],
    price: json['price'] ?? 0,
    createdAt: DateTime.parse(json['createdAt']),
    updatedAt: json['updatedAt'] != null
        ? DateTime.parse(json['updatedAt'])
        : null,
    userId: json['userId'],
    // Support both old 'campainId' (typo) and correct 'campaignId'
    campaignId: json['campaignId'] ?? json['campainId'],
    offerId: json['offerId'],
    companyId: json['companyId'],
    period: json['period'] != null
        ? TransactionPeriod.fromValue(json['period'])
        : null,
  );
}