@@ -314,24 +314,104 @@ class OrderData extends MessageData {
314
314
}
315
315
316
316
class OrderStatusData extends MessageData {
317
- final String orderStatus ;
317
+ final Status status ;
318
318
319
- OrderStatusData ({required this .orderStatus });
319
+ OrderStatusData ({required this .status });
320
320
321
321
factory OrderStatusData .fromJson (Map <String , dynamic > json) {
322
322
return OrderStatusData (
323
- orderStatus : json['orderStatus' ] ,
323
+ status : Status . fromJson ( json['status' ]) ,
324
324
);
325
325
}
326
326
327
327
@override
328
328
Map <String , dynamic > toJson () {
329
329
return {
330
- 'orderStatus ' : orderStatus ,
330
+ 'status ' : status. toJson () ,
331
331
};
332
332
}
333
333
}
334
334
335
+ enum Status {
336
+ payinPending,
337
+ payinInitiated,
338
+ payinSettled,
339
+ payinFailed,
340
+ payinExpired,
341
+ payoutPending,
342
+ payoutInitiated,
343
+ payoutSettled,
344
+ payoutFailed,
345
+ refundPending,
346
+ refundInitiated,
347
+ refundFailed,
348
+ refundSettled;
349
+
350
+ static Status fromJson (String json) {
351
+ switch (json) {
352
+ case 'PAYIN_PENDING' :
353
+ return Status .payinPending;
354
+ case 'PAYIN_INITIATED' :
355
+ return Status .payinInitiated;
356
+ case 'PAYIN_SETTLED' :
357
+ return Status .payinSettled;
358
+ case 'PAYIN_FAILED' :
359
+ return Status .payinFailed;
360
+ case 'PAYIN_EXPIRED' :
361
+ return Status .payinExpired;
362
+ case 'PAYOUT_PENDING' :
363
+ return Status .payoutPending;
364
+ case 'PAYOUT_INITIATED' :
365
+ return Status .payoutInitiated;
366
+ case 'PAYOUT_SETTLED' :
367
+ return Status .payoutSettled;
368
+ case 'PAYOUT_FAILED' :
369
+ return Status .payoutFailed;
370
+ case 'REFUND_PENDING' :
371
+ return Status .refundPending;
372
+ case 'REFUND_INITIATED' :
373
+ return Status .refundInitiated;
374
+ case 'REFUND_FAILED' :
375
+ return Status .refundFailed;
376
+ case 'REFUND_SETTLED' :
377
+ return Status .refundSettled;
378
+ default :
379
+ throw Exception ('Unknown status: $json ' );
380
+ }
381
+ }
382
+
383
+ String toJson () {
384
+ switch (this ) {
385
+ case Status .payinPending:
386
+ return 'PAYIN_PENDING' ;
387
+ case Status .payinInitiated:
388
+ return 'PAYIN_INITIATED' ;
389
+ case Status .payinSettled:
390
+ return 'PAYIN_SETTLED' ;
391
+ case Status .payinFailed:
392
+ return 'PAYIN_FAILED' ;
393
+ case Status .payinExpired:
394
+ return 'PAYIN_EXPIRED' ;
395
+ case Status .payoutPending:
396
+ return 'PAYOUT_PENDING' ;
397
+ case Status .payoutInitiated:
398
+ return 'PAYOUT_INITIATED' ;
399
+ case Status .payoutSettled:
400
+ return 'PAYOUT_SETTLED' ;
401
+ case Status .payoutFailed:
402
+ return 'PAYOUT_FAILED' ;
403
+ case Status .refundPending:
404
+ return 'REFUND_PENDING' ;
405
+ case Status .refundInitiated:
406
+ return 'REFUND_INITIATED' ;
407
+ case Status .refundFailed:
408
+ return 'REFUND_FAILED' ;
409
+ case Status .refundSettled:
410
+ return 'REFUND_SETTLED' ;
411
+ }
412
+ }
413
+ }
414
+
335
415
class OrderInstructionsData extends MessageData {
336
416
final PaymentInstruction payin;
337
417
final PaymentInstruction payout;
0 commit comments