54 lines
2.0 KiB
Dart
Executable File
54 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 {
|
|
|
|
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,
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
}
|