2024-05-18 09:37:50 +08:00

53 lines
2.0 KiB
Dart
Executable File

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<void> updateKeyDateRequest() async {
var beginTimeTimestamp = DateTool().dateToTimestamp(state.beginTime.value, 1);
var endTimeTimestamp = DateTool().dateToTimestamp(state.endTime.value, 1);
if (beginTimeTimestamp > endTimeTimestamp || beginTimeTimestamp == endTimeTimestamp) {
showToast("失效时间需大于生效时间".tr);
return;
}
if (endTimeTimestamp < DateTime.now().millisecondsSinceEpoch) {
showToast("生效时间需大于当前时间".tr);
return;
}
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,
});
});
}
}
}