import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/electronicKey/electronicKeyDetail/electronicKeyDetailChangeDate/electronicKeyDetailChangeDate_state.dart'; import 'package:star_lock/network/api_repository.dart'; import 'package:star_lock/tools/baseGetXController.dart'; import '../../../../../tools/dateTool.dart'; import '../../../../../tools/eventBusEventManage.dart'; import '../../../lockOperatingRecord/keyOperationRecord_entity.dart'; class ElectronicKeyDetailChangeDateLogic extends BaseGetXController { final ElectronicKeyDetailChangeDateState state = ElectronicKeyDetailChangeDateState(); //编辑电子钥匙有效期请求 Future updateKeyDateRequest() async { final int beginTimeTimestamp = DateTool().dateToTimestamp(state.beginTime.value, 1); final int endTimeTimestamp = DateTool().dateToTimestamp(state.endTime.value, 1); if (beginTimeTimestamp > endTimeTimestamp || beginTimeTimestamp == endTimeTimestamp) { showToast('失效时间需晚于生效时间'.tr); return; } if (endTimeTimestamp < DateTime.now().millisecondsSinceEpoch) { showToast('生效时间需晚于当前时间'.tr); return; } final KeyOperationRecordEntity entity = await ApiRepository.to.updateKeyDate( keyId:state.keyId.value.toString(), lockId:state.lockId.value.toString(), endDate:endTimeTimestamp.toString(), startDate:beginTimeTimestamp.toString(), weekDays:[], keyType:2, startTime: 0, endTime: 0, isOnlyManageSelf: state.isOnlyManageSelf!.value, remoteEnable: state.remoteEnable!.value ); if (entity.errorCode!.codeIsSuccessful) { showToast('修改成功'.tr, something: () { eventBus.fire(ElectronicKeyListRefreshUI()); eventBus.fire(AuthorizedAdminPageRefreshUI()); Get.back(result: { 'beginTimeTimestamp': beginTimeTimestamp, 'endTimeTimestamp': endTimeTimestamp, }); }); } } }