import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/electronicKey/sendEmailNotification/sendEmailNotification_entity.dart'; import 'package:star_lock/main/lockDetail/electronicKey/sendEmailNotification/sendEmailNotification_state.dart'; import 'package:star_lock/network/api_repository.dart'; import 'package:star_lock/tools/baseGetXController.dart'; import 'package:star_lock/tools/commonDataManage.dart'; class SendEmailNotificationLogic extends BaseGetXController { final SendEmailNotificationState state = SendEmailNotificationState(); //获取电子钥匙通知模板 渠道:1短信 2邮箱 Future getKeyNoticeTemplate() async { final SendEmailNotificationEntity entity = await ApiRepository.to.getKeyNoticeTemplate( lockId: CommonDataManage().currentKeyInfo.lockId ?? 0, keyId: state.getKeyId.value, channelType: state.channelType.value, ); if (entity.errorCode!.codeIsSuccessful) { state.emailTemplateList.value = entity.data?.list ?? []; state.currentNotifyItem.value = state.emailTemplateList.first; state.templateContentController.text = state.currentNotifyItem.value.template ?? ''; state.emailTemplateList.refresh(); state.currentNotifyItem.refresh(); } } //发送短信、邮件通知 channelType--1短信 2邮件 opisAPKFileName Future keyNoticeSubmitRequest() async { if (state.receiverController.text.isEmpty && state.getReceiver.value.isEmpty) { showToast('请输入接收者'); return; } final SendEmailNotificationEntity entity = await ApiRepository.to.keyNoticeSubmit( receiverName: state.getReceiver.value.isEmpty ? state.receiverController.text : state.getReceiver.value, lockId: CommonDataManage().currentKeyInfo.lockId ?? 0, keyId: state.getKeyId.value, channelType: state.channelType.value, openDoorType: 1, templateType: state.currentNotifyItem.value.type ?? '', ); if (entity.errorCode!.codeIsSuccessful) { showToast('发送成功'); Get.back(); } } }