import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/messageWarn/msgNotification/msgNotification/msgNotification_entity.dart'; import 'package:star_lock/main/lockDetail/messageWarn/msgNotification/openDoorNotify/openDoorNotify_entity.dart'; import 'package:star_lock/main/lockDetail/messageWarn/notificationMode/notificationMode_data.dart'; class NotificationModeState { NotificationModeState() { final Map map = Get.arguments; if (map['familyData'] != null) { familyData.value = map['familyData']; if (familyData.value.settingValue != null) { for (final NoticeWay item in familyData.value.settingValue!.noticeWayList!) { if (item.type == 'mail' && item.accounts != null) { for (final Accounts account in item.accounts!) { if (account.account != null) { final MsgNoticeModeData msgNoticeModeData = MsgNoticeModeData(); msgNoticeModeData.receiveEmail = account.account!; emailReceiverList.value.add(msgNoticeModeData); } } } else if (item.type == 'sms' && item.accounts != null) { for (final Accounts account in item.accounts!) { if (account.account != null && account.countryCode != null) { final MsgNoticeModeData msgNoticeModeData = MsgNoticeModeData(); msgNoticeModeData.receivePhone = account.account!; msgNoticeModeData.countryCode = account.countryCode!; phoneReceiverList.value.add(msgNoticeModeData); } } } } } } if (map['msgNoticeInfo'] != null) { msgNoticeInfo.value = map['msgNoticeInfo']; if (msgNoticeInfo.value.dayNotOpenDoorNoticeWayList != null) { for (final NoticeWay item in msgNoticeInfo.value.dayNotOpenDoorNoticeWayList!) { if (item.type == 'mail' && item.accounts != null) { for (final Accounts account in item.accounts!) { if (account.account != null) { final MsgNoticeModeData msgNoticeModeData = MsgNoticeModeData(); msgNoticeModeData.receiveEmail = account.account!; emailReceiverList.value.add(msgNoticeModeData); } } } else if (item.type == 'sms' && item.accounts != null) { for (final Accounts account in item.accounts!) { if (account.account != null && account.countryCode != null) { final MsgNoticeModeData msgNoticeModeData = MsgNoticeModeData(); msgNoticeModeData.receivePhone = account.account!; msgNoticeModeData.countryCode = account.countryCode!; phoneReceiverList.value.add(msgNoticeModeData); } } } } } } } RxList emailReceiverList = [].obs; RxList phoneReceiverList = [].obs; RxString countryName = '中国'.tr.obs; RxInt countryCode = 86.obs; Rx familyData = DataList().obs; Rx msgNoticeInfo = MsgNoticeData().obs; }