diff --git a/lib/services/exchange/lets_exchange/models/coin_info.dart b/lib/services/exchange/lets_exchange/models/coin_info.dart index dd19ed5f9..db1098a49 100644 --- a/lib/services/exchange/lets_exchange/models/coin_info.dart +++ b/lib/services/exchange/lets_exchange/models/coin_info.dart @@ -27,7 +27,17 @@ class CoinInfo { factory CoinInfo.fromJson(Map json) { final rawProfit = json["profit"] as String?; - final rawExpiredAt = json["rate_id_expired_at"] as int?; + + final rawExpiredAt = json["rate_id_expired_at"] is int + ? json["rate_id_expired_at"] as int + : json["rate_id_expired_at"] is String + ? int.tryParse(json["rate_id_expired_at"] as String) + : null; + + final expiredAt = rawExpiredAt == null + ? null + : DateTime.fromMillisecondsSinceEpoch(rawExpiredAt); + return CoinInfo( minAmount: Decimal.parse(json["min_amount"] as String), maxAmount: Decimal.parse(json["max_amount"] as String), @@ -36,9 +46,7 @@ class CoinInfo { profit: rawProfit == null ? null : Decimal.tryParse(rawProfit), withdrawalFee: Decimal.parse(json["withdrawal_fee"] as String), rateId: json["rate_id"] as String?, - rateIdExpiredAt: rawExpiredAt == null - ? null - : DateTime.fromMillisecondsSinceEpoch(rawExpiredAt), + rateIdExpiredAt: expiredAt, ); }