/// countdown : 0
/// currentProgress : {"amount":0,"level":0}
/// lastWeekProgress : {"amount":0,"level":0,"ownerIncome":0,"ownerIncomeReceived":false,"rewardCoins":0,"rewardCoinsSent":false}

class SCRoomRewardInfoRes {
  SCRoomRewardInfoRes({
    int? countdown,
    CurrentProgress? currentProgress,
    LastWeekProgress? lastWeekProgress,
  }) {
    _countdown = countdown;
    _currentProgress = currentProgress;
    _lastWeekProgress = lastWeekProgress;
  }

  SCRoomRewardInfoRes.fromJson(dynamic json) {
    _countdown = json['countdown'];
    _currentProgress =
        json['currentProgress'] != null
            ? CurrentProgress.fromJson(json['currentProgress'])
            : null;
    _lastWeekProgress =
        json['lastWeekProgress'] != null
            ? LastWeekProgress.fromJson(json['lastWeekProgress'])
            : null;
  }

  int? _countdown;
  CurrentProgress? _currentProgress;
  LastWeekProgress? _lastWeekProgress;

  int? get countdown => _countdown;

  CurrentProgress? get currentProgress => _currentProgress;

  LastWeekProgress? get lastWeekProgress => _lastWeekProgress;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    map['countdown'] = _countdown;
    if (_currentProgress != null) {
      map['currentProgress'] = _currentProgress?.toJson();
    }
    if (_lastWeekProgress != null) {
      map['lastWeekProgress'] = _lastWeekProgress?.toJson();
    }
    return map;
  }
}

/// amount : 0
/// level : 0
/// ownerIncome : 0
/// ownerIncomeReceived : false
/// rewardCoins : 0
/// rewardCoinsSent : false

class LastWeekProgress {
  LastWeekProgress({
    num? amount,
    num? level,
    num? ownerIncome,
    bool? ownerIncomeReceived,
    num? rewardCoins,
    bool? rewardCoinsSent,
  }) {
    _amount = amount;
    _level = level;
    _ownerIncome = ownerIncome;
    _ownerIncomeReceived = ownerIncomeReceived;
    _rewardCoins = rewardCoins;
    _rewardCoinsSent = rewardCoinsSent;
  }

  LastWeekProgress.fromJson(dynamic json) {
    _amount = json['amount'];
    _level = json['level'];
    _ownerIncome = json['ownerIncome'];
    _ownerIncomeReceived = json['ownerIncomeReceived'];
    _rewardCoins = json['rewardCoins'];
    _rewardCoinsSent = json['rewardCoinsSent'];
  }

  num? _amount;
  num? _level;
  num? _ownerIncome;
  bool? _ownerIncomeReceived;
  num? _rewardCoins;
  bool? _rewardCoinsSent;

  num? get amount => _amount;

  num? get level => _level;

  num? get ownerIncome => _ownerIncome;

  bool? get ownerIncomeReceived => _ownerIncomeReceived;

  num? get rewardCoins => _rewardCoins;

  bool? get rewardCoinsSent => _rewardCoinsSent;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    map['amount'] = _amount;
    map['level'] = _level;
    map['ownerIncome'] = _ownerIncome;
    map['ownerIncomeReceived'] = _ownerIncomeReceived;
    map['rewardCoins'] = _rewardCoins;
    map['rewardCoinsSent'] = _rewardCoinsSent;
    return map;
  }
}

/// amount : 0
/// level : 0

class CurrentProgress {
  CurrentProgress({num? amount, num? level}) {
    _amount = amount;
    _level = level;
  }

  CurrentProgress.fromJson(dynamic json) {
    _amount = json['amount'];
    _level = json['level'];
  }

  num? _amount;
  num? _level;

  num? get amount => _amount;

  num? get level => _level;

  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    map['amount'] = _amount;
    map['level'] = _level;
    return map;
  }
}
