diff --git a/lib/main/lockDetail/card/addICCard/addICCard_logic.dart b/lib/main/lockDetail/card/addICCard/addICCard_logic.dart index f25dbe42..91d317a7 100755 --- a/lib/main/lockDetail/card/addICCard/addICCard_logic.dart +++ b/lib/main/lockDetail/card/addICCard/addICCard_logic.dart @@ -4,12 +4,12 @@ import 'dart:async'; import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_settings.dart'; -import 'package:star_lock/blue/io_type.dart'; +import 'package:star_lock/login/login/entity/LoginEntity.dart'; +import 'package:star_lock/main/lockDetail/card/addICCard/addICCard_entity.dart'; import 'package:star_lock/tools/baseGetXController.dart'; import '../../../../blue/blue_manage.dart'; import '../../../../blue/io_protocol/io_addICCardWithTimeCycleCoercion.dart'; -// import '../../../../blue/io_protocol/io_addStressICCard.dart'; import '../../../../blue/io_reply.dart'; import '../../../../blue/io_tool/io_tool.dart'; import '../../../../blue/io_tool/manager_event_bus.dart'; @@ -26,7 +26,7 @@ class AddICCardLogic extends BaseGetXController{ // 监听设备返回的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) async { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) async { // 添加IC卡开始 if((reply is SenderAddICCardWithTimeCycleCoercionReply) && (state.ifCurrentScreen.value == true)) { _replyAddICCardBegin(reply); @@ -40,13 +40,13 @@ class AddICCardLogic extends BaseGetXController{ } Future _replyAddICCardBegin(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; switch(status){ case 0x00: //成功 - var cardNumberList = reply.data.sublist(reply.data.length - 2); - var cardNumber = listChangInt(cardNumberList).toString(); + final List cardNumberList = reply.data.sublist(reply.data.length - 2); + final String cardNumber = listChangInt(cardNumberList).toString(); // AppLog.log("添加卡号:$cardNumberList cardNumber:$cardNumber"); state.cardNumber.value = cardNumber.toString(); cancelBlueConnetctToastTimer(); @@ -56,29 +56,29 @@ class AddICCardLogic extends BaseGetXController{ break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); // var publicKey = await Storage.getStringList(saveBluePublicKey); // List publicKeyDataList = changeStringListToIntList(publicKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); - AppLog.log("添加卡token:$token"); + AppLog.log('添加卡token:$token'); IoSenderManage.senderAddCardWithTimeCycleCoercionCommand( - keyID:"1", + keyID:'1', userID:await Storage.getUid(), cardNo:0, useCountLimit:0xffff, operate:0, // 0:注册 1:修改 2:删除 3:删除全部 - isAdmin:state.isAdministrator.value == "2" ? 1 : 0, - isForce:state.isCoerced.value == "2" ? 1 : 0, // 是否是胁迫 - isRound:state.selectType.value == "2" ? 1: 0, // 是否是循环 + isAdmin:state.isAdministrator.value == '2' ? 1 : 0, + isForce:state.isCoerced.value == '2' ? 1 : 0, // 是否是胁迫 + isRound:state.selectType.value == '2' ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 startDate: int.parse(state.startDate.value)~/1000, endDate: int.parse(state.endDate.value)~/1000, @@ -98,7 +98,7 @@ class AddICCardLogic extends BaseGetXController{ } Future _replyAddICCardConfirmation(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; state.ifAddState.value = false; switch(status){ case 0x00: @@ -107,27 +107,27 @@ class AddICCardLogic extends BaseGetXController{ switch(reply.data[5]){ case 0xff: // 注册指纹失败 - showToast("退出添加".tr); + showToast('退出添加'.tr); Get.close(1); break; case 0xFE: // 管理员已满 - showToast("管理员已满".tr); + showToast('管理员已满'.tr); Get.close(1); break; case 0xFD: // 用户已满 - showToast("用户已满".tr); + showToast('用户已满'.tr); Get.close(1); break; case 0xFC: // 指纹已满 - showToast("锁上面添加卡已满".tr); + showToast('锁上面添加卡已满'.tr); Get.close(1); break; case 0xFB: // 指纹已存在 - showToast("卡已存在".tr); + showToast('卡已存在'.tr); break; default: // 添加指纹中 @@ -153,24 +153,24 @@ class AddICCardLogic extends BaseGetXController{ // var publicKey = await Storage.getStringList(saveBluePublicKey); // List publicKeyDataList = changeStringListToIntList(publicKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderAddCardWithTimeCycleCoercionCommand( - keyID:"1", + keyID:'1', userID:await Storage.getUid(), cardNo:0, useCountLimit:0xffff, operate:0, // 0:注册 1:修改 2:删除 3:删除全部 - isAdmin:state.isAdministrator.value == "2" ? 1 : 0, - isForce:state.isCoerced.value == "2" ? 1 : 0, // 是否是胁迫 - isRound:state.selectType.value == "2" ? 1: 0, // 是否是循环 + isAdmin:state.isAdministrator.value == '2' ? 1 : 0, + isForce:state.isCoerced.value == '2' ? 1 : 0, // 是否是胁迫 + isRound:state.selectType.value == '2' ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 startDate: int.parse(state.startDate.value)~/1000, endDate: int.parse(state.endDate.value)~/1000, @@ -195,17 +195,17 @@ class AddICCardLogic extends BaseGetXController{ Future senderCancelAddCardCommand() async { BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected){ - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderCancelAddCardCommand( - keyID:"1", + keyID:'1', userID:await Storage.getUid(), needAuthor:1, signKey:signKeyDataList, @@ -222,8 +222,8 @@ class AddICCardLogic extends BaseGetXController{ }); } - void addICCardData() async { - var entity = await ApiRepository.to.addICCardData( + Future addICCardData() async { + final AddICCardEntity entity = await ApiRepository.to.addICCardData( lockId: state.lockId.value.toString(), endDate: state.endDate.value, cardName: state.cardName.value.toString(), @@ -235,21 +235,21 @@ class AddICCardLogic extends BaseGetXController{ weekDay: state.weekDay.value, startTime: int.parse(state.effectiveDateTime.value), endTime: int.parse(state.failureDateTime.value), - cardRight: state.isAdministrator.value == "2" ? 1 : 0, + cardRight: state.isAdministrator.value == '2' ? 1 : 0, ); if (entity.errorCode!.codeIsSuccessful) { updateIdCardUserNoLoadData(entity.data!.cardId.toString()); } } - void updateIdCardUserNoLoadData(String cardId) async{ - var entity = await ApiRepository.to.updateIdCardUserNoLoadData( + Future updateIdCardUserNoLoadData(String cardId) async{ + final LoginEntity entity = await ApiRepository.to.updateIdCardUserNoLoadData( lockId: state.lockId.value.toString(), cardId: cardId, cardUserNo: state.cardNumber.value, ); if(entity.errorCode!.codeIsSuccessful){ - showToast("添加成功".tr, something:(){ + showToast('添加成功'.tr, something:(){ if(state.fromType.value == 2){ // 回调指纹号 eventBus.fire(ChickInAddStaffCardAndFingerprintBlockNumberEvent(state.cardNumber.value)); @@ -263,7 +263,6 @@ class AddICCardLogic extends BaseGetXController{ @override void onReady() { - // TODO: implement onReady super.onReady(); _initReplySubscription(); @@ -271,7 +270,6 @@ class AddICCardLogic extends BaseGetXController{ @override void onInit() { - // TODO: implement onInit super.onInit(); senderAddICCard(); @@ -279,7 +277,6 @@ class AddICCardLogic extends BaseGetXController{ @override void onClose() { - // TODO: implement onClose _replySubscription.cancel(); } diff --git a/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_logic.dart b/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_logic.dart index 28f18489..b76786d3 100755 --- a/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_logic.dart +++ b/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_logic.dart @@ -3,7 +3,7 @@ import 'dart:async'; import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:get/get.dart'; -import 'package:star_lock/blue/io_type.dart'; +import 'package:star_lock/login/login/entity/LoginEntity.dart'; import 'package:star_lock/tools/baseGetXController.dart'; import '../../../../blue/blue_manage.dart'; import '../../../../blue/io_protocol/io_addFace.dart'; @@ -14,7 +14,6 @@ import '../../../../blue/io_tool/io_tool.dart'; import '../../../../blue/io_tool/manager_event_bus.dart'; import '../../../../blue/sender_manage.dart'; import '../../../../network/api_repository.dart'; -import '../../../../tools/dateTool.dart'; import '../../../../tools/eventBusEventManage.dart'; import '../../../../tools/storage.dart'; import 'otherTypeKeyChangeDate_state.dart'; @@ -25,7 +24,7 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ // 监听设备返回的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) async { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) async { // 添加卡片开始(重置锁里面所有卡) if((reply is SenderAddICCardWithTimeCycleCoercionReply) && (state.ifCurrentScreen.value == true)) { _replyAddICCardBegin(reply); @@ -45,7 +44,7 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ // 添加人脸开始 Future _replyAddFaceBegin(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; switch (status) { case 0x00: @@ -57,14 +56,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); IoSenderManage.senderAddFaceCommand( @@ -76,11 +75,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.faceRight!, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -107,14 +106,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ }); BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); IoSenderManage.senderAddFaceCommand( keyID:state.fingerprintItemData.value.faceId!.toString(), @@ -125,11 +124,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.faceRight!, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -149,7 +148,7 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ // 添加卡片开始(此处用作删除卡片) Future _replyAddICCardBegin(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; switch(status){ case 0x00: @@ -160,14 +159,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); IoSenderManage.senderAddCardWithTimeCycleCoercionCommand( @@ -179,11 +178,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.cardRight!, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -198,7 +197,7 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ // 添加指纹开始 Future _replyAddFingerprintBegin(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; switch(status){ case 0x00: //成功 @@ -209,14 +208,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); IoSenderManage.senderAddFingerprintWithTimeCycleCoercionCommand( @@ -228,11 +227,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.fingerRight, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -262,14 +261,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ // var publicKey = await Storage.getStringList(saveBluePublicKey); // List publicKeyDataList = changeStringListToIntList(publicKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderAddFingerprintWithTimeCycleCoercionCommand( keyID:state.fingerprintItemData.value.fingerprintId.toString(), @@ -280,11 +279,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.fingerRight, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -316,14 +315,14 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected){ - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderAddCardWithTimeCycleCoercionCommand( keyID:state.fingerprintItemData.value.cardId!.toString(), @@ -334,11 +333,11 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ isAdmin:state.fingerprintItemData.value.cardRight!, isForce:state.fingerprintItemData.value.isCoerced, // 是否是胁迫 isRound:0, // 是否是循环 - weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.fingerprintItemData.value.weekDay!), // 周循环 + weekRound:0, // 周循环 startDate: state.beginTimeTimestamp.value~/1000, endDate: state.endTimeTimestamp.value~/1000, - startTime:"0", - endTime:"0", + startTime:'0', + endTime:'0', needAuthor:1, signKey:signKeyDataList, privateKey:getPrivateKeyList, @@ -356,38 +355,38 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ } // 修改指纹信息 - void editFingerprintsData() async{ - var entity = await ApiRepository.to.editFingerprintsData( + Future editFingerprintsData() async{ + final LoginEntity entity = await ApiRepository.to.editFingerprintsData( fingerprintId: state.fingerprintItemData.value.fingerprintId.toString(), lockId: state.fingerprintItemData.value.lockId.toString(), - weekDay: state.fingerprintItemData.value.weekDay!, + weekDay: [], startDate: state.beginTimeTimestamp.value.toString(), endDate: state.endTimeTimestamp.value.toString(), isCoerced: state.fingerprintItemData.value.isCoerced.toString(), fingerprintName: state.fingerprintItemData.value.fingerprintName!, - changeType: "1", + changeType: '1', startTime: 0, endTime: 0, - fingerprintType: state.fingerprintItemData.value.fingerprintType! == 4 ? 4 : 2, + fingerprintType: 2, fingerRight: state.fingerprintItemData.value.fingerRight!, ); if(entity.errorCode!.codeIsSuccessful){ - showToast("修改成功".tr, something: (){ + showToast('修改成功'.tr, something: (){ eventBus.fire(OtherTypeRefreshListEvent()); - Get.back(result: { - "beginTimeTimestamp":state.beginTimeTimestamp.value.toString(), - "endTimeTimestamp":state.endTimeTimestamp.value.toString(), + Get.back(result: { + 'beginTimeTimestamp':state.beginTimeTimestamp.value.toString(), + 'endTimeTimestamp':state.endTimeTimestamp.value.toString(), }); }); } } // 编辑iC卡 - void editICCardData() async{ - var entity = await ApiRepository.to.editICCardData( + Future editICCardData() async{ + final LoginEntity entity = await ApiRepository.to.editICCardData( cardId: state.fingerprintItemData.value.cardId.toString(), lockId: state.fingerprintItemData.value.lockId.toString(), - weekDay: state.fingerprintItemData.value.weekDay!, + weekDay: [], startDate: state.beginTimeTimestamp.value.toString(), endDate: state.endTimeTimestamp.value.toString(), isCoerced: state.fingerprintItemData.value.isCoerced.toString(), @@ -399,10 +398,10 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ cardRight: state.fingerprintItemData.value.cardRight!, ); if(entity.errorCode!.codeIsSuccessful){ - showToast("修改成功".tr, something: (){ - Get.back(result: { - "beginTimeTimestamp":state.beginTimeTimestamp.value.toString(), - "endTimeTimestamp":state.endTimeTimestamp.value.toString(), + showToast('修改成功'.tr, something: (){ + Get.back(result: { + 'beginTimeTimestamp':state.beginTimeTimestamp.value.toString(), + 'endTimeTimestamp':state.endTimeTimestamp.value.toString(), }); eventBus.fire(OtherTypeRefreshListEvent()); }); @@ -410,23 +409,8 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ } // 修改人脸有效期 - void editFaceData() async { - // var entity = await ApiRepository.to.updateFaceValidity( - // lockId: state.faceItemData.value.lockId!, - // faceId: state.faceItemData.value.faceId!, - // startDate: int.parse(state.startDate.value), - // endDate: int.parse(state.endDate.value), - // startTime: int.parse(state.startTime.value), - // endTime: int.parse(state.endTime.value), - // faceType: state.keyType.value, - // weekDay: state.weekDay.value, - // faceName: state.changeNameController.text, - // addType: "1", - // isCoerced: state.isStressFace.value ? 2 : 1, - // faceRight: state.isAdministrator.value ? 1 : 0, - // ); - - var entity = await ApiRepository.to.updateFaceValidity( + Future editFaceData() async { + final LoginEntity entity = await ApiRepository.to.updateFaceValidity( lockId: state.fingerprintItemData.value.lockId!, faceId: state.fingerprintItemData.value.faceId!, startDate: state.beginTimeTimestamp.value, @@ -434,17 +418,17 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ startTime: 0, endTime: 0, faceType: 2, - weekDay: state.fingerprintItemData.value.weekDay!, + weekDay: [], faceName: state.fingerprintItemData.value.faceName!, - addType: "1", + addType: '1', isCoerced: state.fingerprintItemData.value.isCoerced!, faceRight: state.fingerprintItemData.value.faceRight!, ); if (entity.errorCode!.codeIsSuccessful) { - showToast("修改成功", something: () { - Get.back(result: { - "beginTimeTimestamp":state.beginTimeTimestamp.value.toString(), - "endTimeTimestamp":state.endTimeTimestamp.value.toString(), + showToast('修改成功', something: () { + Get.back(result: { + 'beginTimeTimestamp':state.beginTimeTimestamp.value.toString(), + 'endTimeTimestamp':state.endTimeTimestamp.value.toString(), }); eventBus.fire(OtherTypeRefreshListEvent()); }); @@ -453,7 +437,6 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ @override void onReady() { - // TODO: implement onReady super.onReady(); _initReplySubscription(); @@ -461,14 +444,12 @@ class OtherTypeKeyChangeDateLogic extends BaseGetXController{ @override void onInit() { - // TODO: implement onInit super.onInit(); } @override void onClose() { - // TODO: implement onClose super.onClose(); _replySubscription.cancel(); diff --git a/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_state.dart b/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_state.dart index 9c4e0414..333647e4 100755 --- a/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_state.dart +++ b/lib/main/lockDetail/card/otherTypeKeyChangeDate/otherTypeKeyChangeDate_state.dart @@ -4,29 +4,19 @@ import 'package:star_lock/app_settings/app_settings.dart'; import '../../../../tools/dateTool.dart'; import '../../fingerprint/fingerprintList/fingerprintListData_entity.dart'; -class OtherTypeKeyChangeDateState{ - final fingerprintItemData = FingerprintItemData().obs; - - var beginTime = "".obs;// 开始时间 - var endTime = "".obs;// 结束时间 - var beginTimeTimestamp = 0.obs;// 开始时间 - var endTimeTimestamp = 0.obs;// 结束时间 - - var pushType = 0.obs;// 0卡 1指纹 2遥控 3人脸 - var ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 - var sureBtnState = 0.obs;// 0普通状态(可用) 1连接中(不可用) +class OtherTypeKeyChangeDateState{// 0普通状态(可用) 1连接中(不可用) OtherTypeKeyChangeDateState() { Map map = Get.arguments; - if(map["pushType"] != null){ - pushType.value = map["pushType"]; + if(map['pushType'] != null){ + pushType.value = map['pushType']; } - if(map["fingerprintItemData"] != null){ - fingerprintItemData.value = map["fingerprintItemData"]; + if(map['fingerprintItemData'] != null){ + fingerprintItemData.value = map['fingerprintItemData']; } - AppLog.log("fingerprintItemData.value.startDate:${fingerprintItemData.value.startDate} fingerprintItemData.value.endDate:${fingerprintItemData.value.endDate}"); + AppLog.log('fingerprintItemData.value.startDate:${fingerprintItemData.value.startDate} fingerprintItemData.value.endDate:${fingerprintItemData.value.endDate}'); if(fingerprintItemData.value.startDate == 0){ beginTime.value = DateTool().dateToYMDHNString(DateTime.now().millisecondsSinceEpoch.toString()); endTime.value = DateTool().dateToYMDHNString(DateTime.now().millisecondsSinceEpoch.toString()); @@ -39,6 +29,17 @@ class OtherTypeKeyChangeDateState{ endTimeTimestamp.value = fingerprintItemData.value.endDate!; } - AppLog.log("beginTime.value:${beginTime.value} endTime.value:${endTime.value} beginTimeTimestamp.value:${beginTimeTimestamp.value} endTimeTimestamp.value:${endTimeTimestamp.value}"); + AppLog.log('beginTime.value:${beginTime.value} endTime.value:${endTime.value} beginTimeTimestamp.value:${beginTimeTimestamp.value} endTimeTimestamp.value:${endTimeTimestamp.value}'); } + + final Rx fingerprintItemData = FingerprintItemData().obs; + + RxString beginTime = ''.obs;// 开始时间 + RxString endTime = ''.obs;// 结束时间 + RxInt beginTimeTimestamp = 0.obs;// 开始时间 + RxInt endTimeTimestamp = 0.obs;// 结束时间 + + RxInt pushType = 0.obs;// 0卡 1指纹 2遥控 3人脸 + RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 + RxInt sureBtnState = 0.obs; } \ No newline at end of file diff --git a/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart b/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart index 28c999e7..fe829ab8 100755 --- a/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart +++ b/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_logic.dart @@ -1,3 +1,4 @@ + import 'dart:async'; import 'package:flutter_blue_plus/flutter_blue_plus.dart'; @@ -22,10 +23,10 @@ class PasswordKeyDetailLogic extends BaseGetXController { // 监听设备返回的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) async { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) async { // 设置自定义密码 if (reply is SenderCustomPasswordsReply && state.ifCurrentScreen.value == true) { - int status = reply.data[2]; + final int status = reply.data[2]; switch (status) { case 0x00: //成功 @@ -40,14 +41,14 @@ class PasswordKeyDetailLogic extends BaseGetXController { break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); IoSenderManage.senderCustomPasswordsCommand( @@ -77,21 +78,21 @@ class PasswordKeyDetailLogic extends BaseGetXController { //删除密码请求 deleteType:1-蓝牙 2-网关 Future deletePwdRequest() async { - PasswordKeyEntity entity = await ApiRepository.to.deleteKeyboardPwd( + final PasswordKeyEntity entity = await ApiRepository.to.deleteKeyboardPwd( lockId:state.itemData.value.lockId.toString(), keyboardPwdId:state.itemData.value.keyboardPwdId.toString(), deleteType:1); if (entity.errorCode!.codeIsSuccessful) { - showToast("删除成功".tr, something: (){ + showToast('删除成功'.tr, something: (){ // eventBus.fire(GetPasswordListRefreshUI()); - Get.back(result: "deletScuess"); + Get.back(result: 'deletScuess'); }); } } //更新密码请求 Future updatePwdRequest(int changType) async { - PasswordKeyEntity entity = await ApiRepository.to.updatePasswordKey( + final PasswordKeyEntity entity = await ApiRepository.to.updatePasswordKey( lockId: state.itemData.value.lockId!, keyboardPwdId: state.itemData.value.keyboardPwdId.toString(), keyboardPwdName: state.inputNameController.text, @@ -106,7 +107,7 @@ class PasswordKeyDetailLogic extends BaseGetXController { pwdRight: state.isAdministrator.value == true ? 1 : 0); if (entity.errorCode!.codeIsSuccessful) { Get.back(); - showToast("修改成功".tr, something: (){ + showToast('修改成功'.tr, something: (){ if(changType == 1){ // 修改名字 state.keyboardPwdName.value = state.inputNameController.text; @@ -129,28 +130,14 @@ class PasswordKeyDetailLogic extends BaseGetXController { }); BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); - - // IoSenderManage.senderCustomPasswordsCommand( - // keyID:state.keyId.value.toString(), - // userID:await Storage.getUid(), - // pwdNo: state.keyboardUserNo.value, - // pwd: "000000", - // useCountLimit: 0, - // startTime:0x11223344, - // endTime:0x11223344, - // needAuthor: 1, - // isBeforeAddUser: false, - // signKey: signKeyDataList, - // privateKey: getPrivateKeyList, - // token: getTokenList); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderCustomPasswordsCommand( keyID:state.itemData.value.keyboardPwdId!.toString(), @@ -180,12 +167,12 @@ class PasswordKeyDetailLogic extends BaseGetXController { //使用期限详情显示 String getUseDateStr() { - int? getPwdType = state.itemData.value.keyboardPwdType; + final int? getPwdType = state.itemData.value.keyboardPwdType; String useDateStr = ''; - DateTime startDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.startDate!); - DateTime endDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.endDate!); - String starHour = "${state.itemData.value.hoursStart}"; - String endHour = "${state.itemData.value.hoursEnd}"; + final DateTime startDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.startDate!); + final DateTime endDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.endDate!); + final String starHour = '${state.itemData.value.hoursStart}'; + final String endHour = '${state.itemData.value.hoursEnd}'; switch (getPwdType) { case 1: @@ -267,14 +254,14 @@ class PasswordKeyDetailLogic extends BaseGetXController { } String getShareContentStr() { - int? getPwdType = state.itemData.value.keyboardPwdType; + final int? getPwdType = state.itemData.value.keyboardPwdType; String useDateStr = ''; - DateTime startDateStr = + final DateTime startDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.startDate!); - DateTime endDateStr = + final DateTime endDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.endDate!); - int starHour = startDateStr.hour; - int endHour = endDateStr.hour; + final int starHour = startDateStr.hour; + final int endHour = endDateStr.hour; switch (getPwdType) { case 1: @@ -335,30 +322,21 @@ class PasswordKeyDetailLogic extends BaseGetXController { //周日循环 14 每周日开始和结束时间指定时间段内有效 useDateStr = '类型:循环\n周日 $starHour:00-$endHour:00'; break; - default: } - return "您好,您的密码是:${state.itemData.value.keyboardPwd}\n$useDateStr\n密码名字:${state.itemData.value.keyboardPwdName}"; + return '您好,您的密码是:${state.itemData.value.keyboardPwd}\n$useDateStr\n密码名字:${state.itemData.value.keyboardPwdName}'; } @override void onReady() { - // TODO: implement onReady super.onReady(); _initReplySubscription(); // getPasswordTypeUpdateIndexAction(); } - @override - void onInit() { - // TODO: implement onInit - super.onInit(); - } - @override void onClose() { - // TODO: implement onClose _replySubscription.cancel(); } diff --git a/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_state.dart b/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_state.dart index 591739c1..26be4b8f 100755 --- a/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_state.dart +++ b/lib/main/lockDetail/passwordKey/passwordKeyDetail/passwordKeyDetail_state.dart @@ -1,28 +1,12 @@ + import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart'; class PasswordKeyDetailState { - final itemData = PasswordKeyListItem().obs; - final TextEditingController inputPwdController = TextEditingController(); - final TextEditingController inputNameController = TextEditingController(); - final changeType = '1'.obs; //1-通过APP走蓝牙修改,不传默认1,必需先通过APP SDK蓝牙修改后调用该接口 2-通过网关或WiFi锁修改,如果是WiFi锁或有连接网关,则可以传2,直接调用该接口修改生效 - final keyboardPwd = ''.obs;// - final keyboardUserNo = 0.obs;// - final keyboardPwdName = ''.obs; - final keyboardPwdType = ''.obs;// 1单次 2永久 3限时 4删除 5周末循环 6周日循环 7工作日循环 8周一循环 9周二循环 10周三循环 11周四循环 12周五循环 13周六循环 14周天循环 - final isCirculation = false.obs;// 是否是循环 - var keyId = 0.obs;// 卡id - - var ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 - var sureBtnState = 0.obs;// 0普通状态(可用) 1连接中(不可用) - final passwordKeyNumber = "".obs;// 密码号 - var isDeletPasswordKey = true.obs;// 是否删除密码 - var isAdministrator = false.obs;// 是否是管理员 - PasswordKeyDetailState() { - Map map = Get.arguments; - itemData.value = map["itemData"]; + final Map map = Get.arguments; + itemData.value = map['itemData']; // isCoerced.value = itemData.value.isCoerced!.toString(); keyboardPwd.value = itemData.value.keyboardPwd!; keyboardPwdName.value = itemData.value.keyboardPwdName!; @@ -30,10 +14,27 @@ class PasswordKeyDetailState { inputPwdController.text = itemData.value.keyboardPwd!; keyId.value = itemData.value.keyboardPwdId!; keyboardUserNo.value = itemData.value.pwdUserNo!; - isAdministrator.value = itemData.value.pwdRight! == 1 ? true : false; + isAdministrator.value = itemData.value.pwdRight! == 1; // startDate.value = itemData.value.startDate!; // endDate.value = itemData.value.endDate!; // hoursStart.value = itemData.value.hoursStart!; // hoursEnd.value = itemData.value.hoursEnd!; } + + final Rx itemData = PasswordKeyListItem().obs; + final TextEditingController inputPwdController = TextEditingController(); + final TextEditingController inputNameController = TextEditingController(); + final RxString changeType = '1'.obs; //1-通过APP走蓝牙修改,不传默认1,必需先通过APP SDK蓝牙修改后调用该接口 2-通过网关或WiFi锁修改,如果是WiFi锁或有连接网关,则可以传2,直接调用该接口修改生效 + final RxString keyboardPwd = ''.obs;// + final RxInt keyboardUserNo = 0.obs;// + final RxString keyboardPwdName = ''.obs; + final RxString keyboardPwdType = ''.obs;// 1单次 2永久 3限时 4删除 5周末循环 6周日循环 7工作日循环 8周一循环 9周二循环 10周三循环 11周四循环 12周五循环 13周六循环 14周天循环 + final RxBool isCirculation = false.obs;// 是否是循环 + RxInt keyId = 0.obs;// 卡id + + RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 + RxInt sureBtnState = 0.obs;// 0普通状态(可用) 1连接中(不可用) + final RxString passwordKeyNumber = ''.obs;// 密码号 + RxBool isDeletPasswordKey = true.obs;// 是否删除密码 + RxBool isAdministrator = false.obs;// 是否是管理员 } diff --git a/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_logic.dart b/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_logic.dart index f583fdb2..0d4855be 100755 --- a/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_logic.dart +++ b/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_logic.dart @@ -24,10 +24,10 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { // 监听设备返回的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) async { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) async { // 设置自定义密码 if ((reply is SenderCustomPasswordsReply) && (state.ifCurrentScreen.value == true)) { - int status = reply.data[2]; + final int status = reply.data[2]; switch (status) { case 0x00: //成功 @@ -38,14 +38,14 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var token = reply.data.sublist(5, 9); - var saveStrList = changeIntListToStringList(token); + final List token = reply.data.sublist(5, 9); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); IoSenderManage.senderCustomPasswordsCommand( @@ -75,20 +75,20 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { //更新密码请求 Future updatePwdRequest() async { - var beginTimeTimestamp = DateTool().dateToTimestamp(state.selectEffectiveDate.value, 1); - var endTimeTimestamp = DateTool().dateToTimestamp(state.selectFailureDate.value, 1); + final int beginTimeTimestamp = DateTool().dateToTimestamp(state.selectEffectiveDate.value, 1); + final int endTimeTimestamp = DateTool().dateToTimestamp(state.selectFailureDate.value, 1); if (beginTimeTimestamp > endTimeTimestamp || beginTimeTimestamp == endTimeTimestamp) { - showToast("失效时间需大于生效时间"); + showToast('失效时间需大于生效时间'); return; } if (endTimeTimestamp < DateTime.now().millisecondsSinceEpoch) { - showToast("生效时间需大于当前时间"); + showToast('生效时间需大于当前时间'); return; } - PasswordKeyEntity entity = await ApiRepository.to.updatePasswordKey( + final PasswordKeyEntity entity = await ApiRepository.to.updatePasswordKey( lockId: state.itemData.value.lockId!, keyboardPwdId: state.itemData.value.keyboardPwdId.toString(), keyboardPwdName: state.itemData.value.keyboardPwdName!, @@ -98,16 +98,16 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { changeType: '1', hoursStart: state.itemData.value.hoursStart!, hoursEnd: state.itemData.value.hoursEnd!, - isCoerced: "1", + isCoerced: '1', keyboardPwdType: 3, pwdRight: state.itemData.value.pwdRight!); if (entity.errorCode!.codeIsSuccessful) { - showToast("修改成功", something: (){ + showToast('修改成功', something: (){ eventBus.fire(GetPasswordListRefreshUI()); - AppLog.log("beginTimeTimestamp:$beginTimeTimestamp endTimeTimestamp:$endTimeTimestamp"); - Get.back(result: { - "beginTimeTimestamp": beginTimeTimestamp.toString(), - "endTimeTimestamp": endTimeTimestamp.toString(), + AppLog.log('beginTimeTimestamp:$beginTimeTimestamp endTimeTimestamp:$endTimeTimestamp'); + Get.back(result: { + 'beginTimeTimestamp': beginTimeTimestamp.toString(), + 'endTimeTimestamp': endTimeTimestamp.toString(), }); }); } @@ -123,14 +123,14 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { }); BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderCustomPasswordsCommand( keyID:state.itemData.value.keyboardPwdId!.toString(), @@ -138,7 +138,7 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { pwdNo: state.itemData.value.pwdUserNo!, pwd: state.itemData.value.keyboardPwd!.toString(), operate: 1, - isAdmin: state.itemData.value.pwdUserNo!, + isAdmin: state.itemData.value.pwdRight!, useCountLimit: 0xffff, startTime:DateTool().dateToTimestamp(state.selectEffectiveDate.value, 1) ~/ 1000, endTime:DateTool().dateToTimestamp(state.selectFailureDate.value, 1) ~/ 1000, @@ -160,22 +160,14 @@ class PasswordKeyDetailChangeDateLogic extends BaseGetXController { @override void onReady() { - // TODO: implement onReady super.onReady(); _initReplySubscription(); // getPasswordTypeUpdateIndexAction(); } - @override - void onInit() { - // TODO: implement onInit - super.onInit(); - } - @override void onClose() { - // TODO: implement onClose _replySubscription.cancel(); } } diff --git a/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_state.dart b/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_state.dart index 40d099f8..f01943e1 100755 --- a/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_state.dart +++ b/lib/main/lockDetail/passwordKey/passwordKeyDetailChangeDate/passwordKeyDetailChangeDate_state.dart @@ -1,23 +1,22 @@ -import 'package:flutter/material.dart'; + import 'package:get/get.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart'; import 'package:star_lock/tools/dateTool.dart'; class PasswordKeyDetailChangeDateState { - final itemData = PasswordKeyListItem().obs; - - final selectEffectiveDate = ''.obs; //生效时间 - final selectFailureDate = ''.obs; //失效时间 - - var ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 - var sureBtnState = 0.obs;// 0普通状态(可用) 1连接中(不可用) - PasswordKeyDetailChangeDateState() { - Map map = Get.arguments; - if ((map["itemData"] != null)) { - itemData.value = map["itemData"]; + final Map map = Get.arguments; + if (map['itemData'] != null) { + itemData.value = map['itemData']; selectEffectiveDate.value = itemData.value.startDate == 0 ? DateTool().getNowDateWithType(2) : DateTool().dateToYMDHNString(itemData.value.startDate.toString()); selectFailureDate.value = itemData.value.endDate == 0 ? DateTool().getNowDateWithType(2) : DateTool().dateToYMDHNString(itemData.value.endDate.toString()); } } + final Rx itemData = PasswordKeyListItem().obs; + + final RxString selectEffectiveDate = ''.obs; //生效时间 + final RxString selectFailureDate = ''.obs; //失效时间 + + RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 + RxInt sureBtnState = 0.obs; // 0普通状态(可用) 1连接中(不可用) } diff --git a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart index 0d6122d3..bb083396 100755 --- a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart +++ b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart @@ -1,18 +1,17 @@ -// ignore_for_file: slash_for_doc_comments import 'dart:async'; import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:get/get.dart'; -import 'package:star_lock/app_settings/app_settings.dart'; +import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKeyEntity.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart'; import 'package:star_lock/network/api_repository.dart'; import 'package:star_lock/tools/eventBusEventManage.dart'; import '../../../../blue/blue_manage.dart'; import '../../../../blue/io_modelVendor.dart'; -import '../../../../blue/io_reply.dart'; import '../../../../blue/io_protocol/io_senderCustomPasswords.dart'; +import '../../../../blue/io_reply.dart'; import '../../../../blue/io_tool/io_tool.dart'; import '../../../../blue/io_tool/manager_event_bus.dart'; import '../../../../blue/sender_manage.dart'; @@ -25,18 +24,16 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { final PasswordKeyPerpetualState state = PasswordKeyPerpetualState(); /// 收到点击密码类型更新 - /** - * getKeyType 单次1 永久2 限期3 删除4 周未循环5 每日循环6 工作日循环7 周一循环8 周二循环9 周三循环10 周四循环11 周五循环12 周六循环13 周天循环14 - */ + /// getKeyType 单次1 永久2 限期3 删除4 周未循环5 每日循环6 工作日循环7 周一循环8 周二循环9 周三循环10 周四循环11 周五循环12 周六循环13 周天循环14 //获取密码请求 Future getKeyboardPwdRequest() async { - var startDate = DateTool().dateToTimestamp(state.beginTime.value, 1); - var endDate = DateTool().dateToTimestamp(state.endTime.value, 1); - String lockId = state.keyInfo.value.lockId.toString(); - String getKeyType = "0"; + final int startDate = DateTool().dateToTimestamp(state.beginTime.value, 1); + final int endDate = DateTool().dateToTimestamp(state.endTime.value, 1); + final String lockId = state.keyInfo.value.lockId.toString(); + String getKeyType = '0'; if (state.nameController.text.isEmpty) { - showToast("请输入姓名".tr); + showToast('请输入姓名'.tr); return; } @@ -48,7 +45,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { // 鑫鸿佳不需要生效时间 if(CommonDataManage().currentKeyInfo.vendor == IoModelVendor.vendor_XHJ && (CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XHJ_SYD || CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XHJ_JL)){ if (endDate <= DateTool().dateToTimestamp(DateTool().getNowDateWithType(3), 1)) { - showToast("失效时间要大于当前时间".tr); + showToast('失效时间要大于当前时间'.tr); return; } } @@ -57,12 +54,12 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { if(CommonDataManage().currentKeyInfo.vendor == IoModelVendor.vendor_XL && (CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XL_BLE || CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XL_WIFI)){ //限时 if (startDate < DateTool().dateToTimestamp(DateTool().getNowDateWithType(3), 1)) { - showToast("生效时间不能小于当前时间".tr); + showToast('生效时间不能小于当前时间'.tr); return; } if (startDate >= endDate) { - showToast("失效时间要大于生效时间".tr); + showToast('失效时间要大于生效时间'.tr); return; } } @@ -77,13 +74,13 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { // 芯连需要结束时间 if(CommonDataManage().currentKeyInfo.vendor == IoModelVendor.vendor_XL && (CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XL_BLE || CommonDataManage().currentKeyInfo.model == IoModelVendor.model_XL_WIFI)){ if (endDate < DateTool().dateToTimestamp(DateTool().getNowDateWithType(3), 1)) { - showToast("结束时间不能小于当前时间".tr); + showToast('结束时间不能小于当前时间'.tr); return; } } if (state.loopStartHours.value >= state.loopEndHours.value) { - showToast("失效时间要大于生效时间".tr); + showToast('失效时间要大于生效时间'.tr); return; } if (state.loopModeStr.value == '周末') { @@ -111,7 +108,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { //清空码 getKeyType = '4'; } - var entity = await ApiRepository.to.getPasswordKey( + final PasswordKeyEntity entity = await ApiRepository.to.getPasswordKey( endDate: endDate.toString(), keyboardPwdName: state.nameController.text, keyboardPwdType: getKeyType, @@ -124,8 +121,8 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { state.isSendSuccess.value = true; state.sendSucceedType.value = state.widgetType.value; state.pwdNameStr = state.nameController.text; - state.nameController.text = ""; - state.pwdController.text = ""; + state.nameController.text = ''; + state.pwdController.text = ''; if (entity.data != null) { state.getPwdStr.value = entity.data!.keyboardPwd!; } @@ -140,7 +137,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { Future addKeyboardPwdRequest() async { String getEffectiveDateTime = '0'; String getFailureDateTime = '0'; - String lockId = state.keyInfo.value.lockId.toString(); + final String lockId = state.keyInfo.value.lockId.toString(); String getKeyType = '2'; //是否为永久 if (state.isPermanent.value == false) { @@ -148,7 +145,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { getEffectiveDateTime = DateTool().dateToTimestamp(state.customBeginTime.value, 1).toString(); getFailureDateTime = DateTool().dateToTimestamp(state.customEndTime.value, 1).toString(); } - var entity = await ApiRepository.to.addPasswordKey( + final PasswordKeyEntity entity = await ApiRepository.to.addPasswordKey( lockId:lockId, keyboardPwdName:state.nameController.text, keyboardPwd:state.pwdController.text, @@ -156,13 +153,14 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { startDate:getEffectiveDateTime, endDate:getFailureDateTime, addType:'1', - pwdRight:state.isAdministrator.value == true ? 1 : 0,); + pwdRight:state.isAdministrator.value == true ? 1 : 0 + ); if (entity.errorCode!.codeIsSuccessful) { state.isSendSuccess.value = true; state.sendSucceedType.value = state.widgetType.value; state.pwdNameStr = state.nameController.text; - state.nameController.text = ""; - state.pwdController.text = ""; + state.nameController.text = ''; + state.pwdController.text = ''; if (entity.data != null) { state.getPwdStr.value = entity.data!.keyboardPwd!; updatePWDNumberRequest(entity.data!.keyboardPwdId.toString()); @@ -173,7 +171,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { } Future updatePWDNumberRequest(String pwdNumberId) async { - var entity = await ApiRepository.to.updatePWDNumber( + final PasswordKeyEntity entity = await ApiRepository.to.updatePWDNumber( lockId: state.keyInfo.value.lockId.toString(), keyboardPwdId: pwdNumberId, pwdUserNo: state.pwdNumber.value.toString()); @@ -184,14 +182,14 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { Future checkKeyboardpwdNameRequest() async { if (state.nameController.text.isEmpty) { - showToast("请输入姓名".tr); + showToast('请输入姓名'.tr); return; } if (state.pwdController.text.isEmpty) { - showToast("请输入密码".tr); + showToast('请输入密码'.tr); return; } - var entity = await ApiRepository.to.checkKeyboardpwdName( + final PasswordKeyEntity entity = await ApiRepository.to.checkKeyboardpwdName( lockId:state.keyInfo.value.lockId.toString(), keyboardPwdName:state.nameController.text, keyboardPwd:state.pwdController.text,); @@ -206,10 +204,10 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { // 监听设备返回的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) async { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) async { // 设置自定义密码 if ((reply is SenderCustomPasswordsReply) && (state.ifCurrentScreen.value == true)) { - int status = reply.data[2]; + final int status = reply.data[2]; switch (status) { case 0x00: //成功 @@ -227,23 +225,23 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { break; case 0xff: // 注册人脸失败 - showToast("退出添加".tr); + showToast('退出添加'.tr); break; case 0xFE: // 管理员已满 - showToast("管理员已满".tr); + showToast('管理员已满'.tr); break; case 0xFD: // 用户已满 - showToast("用户已满".tr); + showToast('用户已满'.tr); break; case 0xFC: // 指纹已满 - showToast("锁上面添加密码已满".tr); + showToast('锁上面添加密码已满'.tr); break; case 0xFB: // 指纹已存在 - showToast("密码已存在".tr); + showToast('密码已存在'.tr); break; default: // 添加密码 @@ -252,26 +250,26 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { break; case 0x06: //无权限 - var token = reply.data.sublist(5, 9); + final List token = reply.data.sublist(5, 9); // AppLog.log("token:$token"); - var saveStrList = changeIntListToStringList(token); + final List saveStrList = changeIntListToStringList(token); Storage.setStringList(saveBlueToken, saveStrList); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var startDate = DateTool().dateToTimestamp(state.customBeginTime.value, 1); - var endDate = DateTool().dateToTimestamp(state.customEndTime.value, 1); + int startDate = DateTool().dateToTimestamp(state.customBeginTime.value, 1); + int endDate = DateTool().dateToTimestamp(state.customEndTime.value, 1); //非永久 须有时限 if (state.isPermanent.value == true) { startDate = 0; endDate = 0; } IoSenderManage.senderCustomPasswordsCommand( - keyID: "1", + keyID: '1', userID: await Storage.getUid(), pwdNo: 0, pwd:state.pwdController.text, @@ -309,17 +307,17 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { // 设置自定义密码 Future senderCustomPasswords() async { - var startDate = DateTool().dateToTimestamp(state.customBeginTime.value, 1); - var endDate = DateTool().dateToTimestamp(state.customEndTime.value, 1); + int startDate = DateTool().dateToTimestamp(state.customBeginTime.value, 1); + int endDate = DateTool().dateToTimestamp(state.customEndTime.value, 1); //非永久 须有时限 if (state.isPermanent.value == false) { if (startDate < DateTool().dateToTimestamp(DateTool().getNowDateWithType(2), 1)) { - showToast("生效时间要大于当前时间"); + showToast('生效时间要大于当前时间'); return; } if (endDate <= startDate) { - showToast("失效时间需大于生效时间"); + showToast('失效时间需大于生效时间'); return; } }else{ @@ -328,7 +326,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { } if (state.pwdController.text.length < 6 || state.pwdController.text.length > 9) { - showToast("请输入6-9位数字密码"); + showToast('请输入6-9位数字密码'); return; } @@ -344,17 +342,17 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { }); BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected) { - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderCustomPasswordsCommand( - keyID: "1", + keyID: '1', userID: await Storage.getUid(), pwdNo: 0, pwd:state.pwdController.text, @@ -380,7 +378,7 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { } String getShareContentStr() { - int? getPwdType = state.widgetType.value; + final int getPwdType = state.widgetType.value; String useDateStr = ''; // DateTime startDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.startDate!); // DateTime endDateStr = DateTime.fromMillisecondsSinceEpoch(state.itemData.value.endDate!); @@ -421,11 +419,11 @@ class PasswordKeyPerpetualLogic extends BaseGetXController { default: } - return "您好,您的密码是:${state.getPwdStr.value}\n$useDateStr\n密码名字:${state.pwdNameStr}"; + return '您好,您的密码是:${state.getPwdStr.value}\n$useDateStr\n密码名字:${state.pwdNameStr}'; } String addSpaces(String input) { - return input.replaceAllMapped(RegExp(r'.{4}'), (match) { + return input.replaceAllMapped(RegExp(r'.{4}'), (Match match) { return '${match.group(0)} '; }).trim(); } diff --git a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart index 95835bbe..bfc15647 100755 --- a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart +++ b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_page.dart @@ -1,3 +1,4 @@ + import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; @@ -7,6 +8,7 @@ import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_colors.dart'; import 'package:star_lock/app_settings/app_settings.dart'; import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_logic.dart'; +import 'package:star_lock/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart'; import 'package:star_lock/tools/commonDataManage.dart'; import 'package:star_lock/tools/pickers/pickers.dart'; import 'package:star_lock/tools/pickers/style/default_style.dart'; @@ -25,7 +27,6 @@ import '../../../../tools/pickers/time_picker/model/pduration.dart'; import '../../../../tools/submitBtn.dart'; import '../../../../tools/titleAppBar.dart'; import '../../../../translations/trans_lib.dart'; -import '../../../lockMian/entity/lockListInfo_entity.dart'; class PasswordKeyPerpetualPage extends StatefulWidget { const PasswordKeyPerpetualPage({Key? key}) : super(key: key); @@ -37,12 +38,11 @@ class PasswordKeyPerpetualPage extends StatefulWidget { class _PasswordKeyPerpetualPageState extends State with RouteAware, SingleTickerProviderStateMixin { - final logic = Get.put(PasswordKeyPerpetualLogic()); - final state = Get.find().state; + final PasswordKeyPerpetualLogic logic = Get.put(PasswordKeyPerpetualLogic()); + final PasswordKeyPerpetualState state = Get.find().state; @override void initState() { - // TODO: implement initState super.initState(); state.tabController = @@ -67,7 +67,7 @@ class _PasswordKeyPerpetualPageState extends State haveBack: true, backgroundColor: AppColors.mainColor), body: Column( - children: [ + children: [ _tabBar(), _pageWidget(), ], @@ -86,14 +86,14 @@ class _PasswordKeyPerpetualPageState extends State // 永久 return SingleChildScrollView( child: Column( - children: [ + children: [ perpetualKeyWidget( false, TranslationLoader.lanKeys!.name!.tr, TranslationLoader.lanKeys!.pleaseNameYourPassword!.tr, state.nameController), keyBottomWidget( - "密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。" + '密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。' .tr) ], ), @@ -104,7 +104,7 @@ class _PasswordKeyPerpetualPageState extends State // 限时 return SingleChildScrollView( child: Column( - children: [ + children: [ keyTimeLimitWidget(), perpetualKeyWidget( false, @@ -112,7 +112,7 @@ class _PasswordKeyPerpetualPageState extends State TranslationLoader.lanKeys!.pleaseNameYourPassword!.tr, state.nameController), keyBottomWidget( - "密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。" + '密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。' .tr) ], ), @@ -123,7 +123,7 @@ class _PasswordKeyPerpetualPageState extends State // 单次 return SingleChildScrollView( child: Column( - children: [ + children: [ perpetualKeyWidget( false, TranslationLoader.lanKeys!.name!.tr, @@ -140,11 +140,9 @@ class _PasswordKeyPerpetualPageState extends State // 自定义 return SingleChildScrollView( child: Column( - children: [ + children: [ keyIfPerpetualWidget(), - state.isPermanent.value == false - ? keyCustomTimeLimitWidget() - : Container(), + if (state.isPermanent.value == false) keyCustomTimeLimitWidget() else Container(), perpetualKeyWidget( false, TranslationLoader.lanKeys!.name!.tr, @@ -153,7 +151,7 @@ class _PasswordKeyPerpetualPageState extends State perpetualKeyWidget( false, TranslationLoader.lanKeys!.password!.tr, - "请输入6-9位数字", + '请输入6-9位数字', state.pwdController), keyIfAdministratorWidget(), keyBottomWidget( @@ -167,7 +165,7 @@ class _PasswordKeyPerpetualPageState extends State // 循环 return SingleChildScrollView( child: Column( - children: [ + children: [ keyCirculationWidget(), perpetualKeyWidget( true, @@ -175,7 +173,7 @@ class _PasswordKeyPerpetualPageState extends State TranslationLoader.lanKeys!.pleaseNameYourPassword!.tr, state.nameController), keyBottomWidget( - "密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。" + '密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。' .tr) ], ), @@ -186,14 +184,14 @@ class _PasswordKeyPerpetualPageState extends State // 清空 return SingleChildScrollView( child: Column( - children: [ + children: [ perpetualKeyWidget( false, TranslationLoader.lanKeys!.name!.tr, TranslationLoader.lanKeys!.pleaseNameYourPassword!.tr, state.nameController), keyBottomWidget( - "清空密码底部提示".tr) + '清空密码底部提示'.tr) ], ), ); @@ -208,11 +206,11 @@ class _PasswordKeyPerpetualPageState extends State Widget perpetualKeyWidget(bool isTopHeight, String titleStr, String rightTitle, TextEditingController controller) { return Column( - children: [ - isTopHeight ? SizedBox(height: 10.h) : Container(), + children: [ + if (isTopHeight) SizedBox(height: 10.h) else Container(), CommonItem( leftTitel: titleStr, - rightTitle: "", + rightTitle: '', isHaveRightWidget: true, rightWidget: getTFWidget(rightTitle, controller)), SizedBox(height: 10.h), @@ -223,17 +221,17 @@ class _PasswordKeyPerpetualPageState extends State // 限时顶部选择日期 Widget keyTimeLimitWidget() { return Column( - children: [ + children: [ Visibility( visible: - CommonDataManage().currentKeyInfo.vendor == "XHJ" ? false : true, + CommonDataManage().currentKeyInfo.vendor == 'XHJ' ? false : true, child: CommonItem( leftTitel: TranslationLoader.lanKeys!.effectiveTime!.tr, rightTitle: state.beginTime.value, isHaveLine: true, isHaveDirection: true, action: () { - PDuration selectDate = + final PDuration selectDate = PDuration.parse(DateTime.tryParse(state.beginTime.value)); Pickers.showDatePicker(context, selectDate: selectDate, @@ -243,7 +241,7 @@ class _PasswordKeyPerpetualPageState extends State day: DateTime.now().day, hour: 24), // minDate: PDuration.now(), - mode: DateMode.YMDHM, onConfirm: (p) { + mode: DateMode.YMDHM, onConfirm: (PDuration p) { state.beginTime.value = DateTool().getYMDHNDateString(p, 4); }); }), @@ -253,7 +251,7 @@ class _PasswordKeyPerpetualPageState extends State rightTitle: state.endTime.value, isHaveDirection: true, action: () { - PDuration selectDate = + final PDuration selectDate = PDuration.parse(DateTime.tryParse(state.endTime.value)); Pickers.showDatePicker(context, selectDate: selectDate, @@ -266,7 +264,7 @@ class _PasswordKeyPerpetualPageState extends State year: DateTime.now().year, month: DateTime.now().month, day: DateTime.now().day), - mode: DateMode.YMDH, onConfirm: (p) { + mode: DateMode.YMDH, onConfirm: (PDuration p) { state.endTime.value = DateTool().getYMDHNDateString(p, 4); }); }), @@ -278,20 +276,20 @@ class _PasswordKeyPerpetualPageState extends State // 自定义限时顶部选择日期 Widget keyCustomTimeLimitWidget() { return Column( - children: [ + children: [ CommonItem( leftTitel: TranslationLoader.lanKeys!.effectiveTime!.tr, rightTitle: state.customBeginTime.value, isHaveLine: true, isHaveDirection: true, action: () { - PDuration selectDate = PDuration.parse( + final PDuration selectDate = PDuration.parse( DateTime.tryParse(state.customBeginTime.value)); Pickers.showDatePicker(context, selectDate: selectDate, // maxDate: PDuration(year: DateTime.now().year + 3, month: DateTime.now().month, day: DateTime.now().day, hour: 24), // minDate: PDuration.now(), - mode: DateMode.YMDHM, onConfirm: (p) { + mode: DateMode.YMDHM, onConfirm: (PDuration p) { state.customBeginTime.value = DateTool().getYMDHNDateString(p, 1); }); @@ -301,14 +299,14 @@ class _PasswordKeyPerpetualPageState extends State rightTitle: state.customEndTime.value, isHaveDirection: true, action: () { - PDuration selectDate = + final PDuration selectDate = PDuration.parse(DateTime.tryParse(state.customEndTime.value)); Pickers.showDatePicker(context, selectDate: selectDate, // maxDate传入三年以后得今天的时间 // maxDate: PDuration(year: DateTime.now().year + 3, month: DateTime.now().month, day: DateTime.now().day), // minDate: PDuration(year: DateTime.now().year, month: DateTime.now().month, day: DateTime.now().day), - mode: DateMode.YMDHM, onConfirm: (p) { + mode: DateMode.YMDHM, onConfirm: (PDuration p) { state.customEndTime.value = DateTool().getYMDHNDateString(p, 1); }); }), @@ -320,15 +318,13 @@ class _PasswordKeyPerpetualPageState extends State // 自定义是否永久 Widget keyIfPerpetualWidget() { return Column( - children: [ + children: [ CommonItem( leftTitel: TranslationLoader.lanKeys!.permanent!.tr, - rightTitle: "", + rightTitle: '', isHaveRightWidget: true, rightWidget: SizedBox(width: 60.w, height: 50.h, child: _switch())), - state.isPermanent.value == true - ? Container(height: 10.h) - : Container(height: 1.h), + if (state.isPermanent.value == true) Container(height: 10.h) else Container(height: 1.h), ], ); } @@ -339,11 +335,11 @@ class _PasswordKeyPerpetualPageState extends State visible: CommonDataManage().currentKeyInfo.isLockOwner == 1 ? true : false, child: Column( - children: [ + children: [ // SizedBox(height: 10.h), Obx(() => CommonItem( - leftTitel: "是否为管理员".tr, - rightTitle: "", + leftTitel: '是否为管理员'.tr, + rightTitle: '', isTipsImg: false, isHaveRightWidget: true, rightWidget: SizedBox( @@ -357,14 +353,14 @@ class _PasswordKeyPerpetualPageState extends State // 循环 Widget keyCirculationWidget() { return Column( - children: [ + children: [ CommonItem( - leftTitel: "有效日", + leftTitel: '有效日', rightTitle: state.loopModeStr.value, isHaveLine: true, isHaveDirection: true, action: () { - List pickerDataList = [ + final List pickerDataList = [ '周末', '每日', '工作日', @@ -393,11 +389,11 @@ class _PasswordKeyPerpetualPageState extends State isHaveLine: true, isHaveDirection: true, action: () { - PDuration selectDate = + final PDuration selectDate = PDuration.parse(DateTime.tryParse(state.endTime.value)); Pickers.showDatePicker(context, selectDate: selectDate, - mode: DateMode.YMDH, onConfirm: (p) { + mode: DateMode.YMDH, onConfirm: (PDuration p) { state.endTime.value = DateTool().getYMDHNDateString(p, 4); }); }), @@ -408,10 +404,10 @@ class _PasswordKeyPerpetualPageState extends State isHaveLine: true, isHaveDirection: true, action: () { - PDuration selectDate = PDuration.parse( + final PDuration selectDate = PDuration.parse( DateTool().dateToDateTime(state.loopEffectiveDate.value, 0)); Pickers.showDatePicker(context, - selectDate: selectDate, mode: DateMode.H, onConfirm: (p) { + selectDate: selectDate, mode: DateMode.H, onConfirm: (PDuration p) { state.loopEffectiveDate.value = DateTool().getYMDHNDateString(p, 5); state.loopStartHours.value = p.hour!; @@ -422,10 +418,10 @@ class _PasswordKeyPerpetualPageState extends State rightTitle: state.loopFailureDate.value, isHaveDirection: true, action: () { - PDuration selectDate = PDuration.parse( + final PDuration selectDate = PDuration.parse( DateTool().dateToDateTime(state.loopFailureDate.value, 0)); Pickers.showDatePicker(context, - selectDate: selectDate, mode: DateMode.H, onConfirm: (p) { + selectDate: selectDate, mode: DateMode.H, onConfirm: (PDuration p) { state.loopFailureDate.value = DateTool().getYMDHNDateString(p, 5); state.loopEndHours.value = p.hour!; @@ -445,19 +441,19 @@ class _PasswordKeyPerpetualPageState extends State showPickerView(BuildContext context, List dataList) { Pickers.showSinglePicker(context, data: dataList, - pickerStyle: DefaultPickerStyle(), onConfirm: (p, position) { + pickerStyle: DefaultPickerStyle(), onConfirm: (p, int position) { state.loopModeStr.value = p; - }, onChanged: (p, position) {}); + }, onChanged: (p, int position) {}); } Widget keyBottomWidget(String tipStr) { return Column( - children: [ + children: [ Container( padding: EdgeInsets.all(20.w), child: Row( // crossAxisAlignment: CrossAxisAlignment.start, - children: [ + children: [ Expanded( child: Text( tipStr, @@ -472,10 +468,10 @@ class _PasswordKeyPerpetualPageState extends State ), SubmitBtn( btnName: state.widgetType.value == 3 - ? "设置密码" + ? '设置密码' : TranslationLoader.lanKeys!.getPassword!.tr, onClick: () async { - var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); + final bool? isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); if (isDemoMode == false) { //自定义密码 if (state.widgetType.value == 3) { @@ -484,7 +480,7 @@ class _PasswordKeyPerpetualPageState extends State logic.getKeyboardPwdRequest(); } } else { - logic.showToast("演示模式"); + logic.showToast('演示模式'); } }), ], @@ -494,13 +490,13 @@ class _PasswordKeyPerpetualPageState extends State // 发送电子钥匙成功 Widget sendElectronicKeySucceed() { return Column( - children: [ + children: [ Container( height: 270.h, width: 1.sw, color: Colors.white, child: Column( - children: [ + children: [ SizedBox( height: 30.h, ), @@ -513,7 +509,7 @@ class _PasswordKeyPerpetualPageState extends State height: 20.h, ), Text( - "操作成功,密码为", + '操作成功,密码为', style: TextStyle(fontSize: 22.sp, color: Colors.black), ), SizedBox( @@ -536,8 +532,8 @@ class _PasswordKeyPerpetualPageState extends State btnName: '完成'.tr, onClick: () { state.isSendSuccess.value = false; - state.nameController.text = ""; - state.pwdController.text = ""; + state.nameController.text = ''; + state.pwdController.text = ''; // Navigator.pop(context, true); }), SizedBox( @@ -566,7 +562,7 @@ class _PasswordKeyPerpetualPageState extends State height: 65.h, width: 300.w, child: Row( - children: [ + children: [ Expanded( child: TextField( //输入框一行 @@ -630,7 +626,7 @@ class _PasswordKeyPerpetualPageState extends State trackColor: CupertinoColors.systemGrey5, thumbColor: CupertinoColors.white, value: state.isPermanent.value, - onChanged: (value) { + onChanged: (bool value) { state.isPermanent.value = value; }, ); @@ -643,15 +639,15 @@ class _PasswordKeyPerpetualPageState extends State trackColor: CupertinoColors.systemGrey5, thumbColor: CupertinoColors.white, value: state.isAdministrator.value, - onChanged: (value) { + onChanged: (bool value) { state.isAdministrator.value = value; - AppLog.log("isAdministrator:${state.isAdministrator.value}"); + AppLog.log('isAdministrator:${state.isAdministrator.value}'); }, ); } String intToStr(int v) { - return (v < 10) ? "0$v" : "$v"; + return (v < 10) ? '0$v' : '$v'; } Future _openModalBottomSheet() async { @@ -662,7 +658,7 @@ class _PasswordKeyPerpetualPageState extends State constraints: BoxConstraints(maxHeight: 270.h), builder: (BuildContext context) { return Column( - children: [ + children: [ SizedBox( width: ScreenUtil().screenWidth, height: 180.h, @@ -695,7 +691,7 @@ class _PasswordKeyPerpetualPageState extends State TabBar _tabBar() { return TabBar( controller: state.tabController, - onTap: (index) { + onTap: (int index) { FocusScope.of(context).requestFocus(FocusNode()); }, tabs: _itemTabs.map((ItemView item) => _tab(item)).toList(), @@ -746,16 +742,16 @@ class _PasswordKeyPerpetualPageState extends State } final List _itemTabs = [ - ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, type: "0"), - ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, type: "1"), - ItemView(title: TranslationLoader.lanKeys!.once!.tr, type: "2"), - ItemView(title: TranslationLoader.lanKeys!.custom!.tr, type: "3"), - ItemView(title: TranslationLoader.lanKeys!.circulation!.tr, type: "4"), - ItemView(title: TranslationLoader.lanKeys!.clearAll!.tr, type: "5"), + ItemView(title: TranslationLoader.lanKeys!.permanent!.tr, type: '0'), + ItemView(title: TranslationLoader.lanKeys!.timeLimit!.tr, type: '1'), + ItemView(title: TranslationLoader.lanKeys!.once!.tr, type: '2'), + ItemView(title: TranslationLoader.lanKeys!.custom!.tr, type: '3'), + ItemView(title: TranslationLoader.lanKeys!.circulation!.tr, type: '4'), + ItemView(title: TranslationLoader.lanKeys!.clearAll!.tr, type: '5'), ]; List initBottomSheetList() { - List widgetList = []; + final List widgetList = []; widgetList.add(buildCenter3('images/icon_wechat.png', '微信好友'.tr, 0)); widgetList.add(buildCenter3('images/icon_message.png', '短信'.tr, 1)); @@ -775,7 +771,7 @@ class _PasswordKeyPerpetualPageState extends State EdgeInsets.only(top: 20.w, bottom: 20.w, left: 10.w, right: 10.w), child: Column( mainAxisAlignment: MainAxisAlignment.center, - children: [ + children: [ Image.asset( imageName, width: 50.w, @@ -799,7 +795,7 @@ class _PasswordKeyPerpetualPageState extends State //\n生效时间:${itemData.startDate}\n类型:永久\n锁名:${itemData.keyboardPwdName} _jumpSmartDeviceRoute(int itemIndex) { Get.back(); - String pwdShareStr = logic.getShareContentStr(); + final String pwdShareStr = logic.getShareContentStr(); switch (itemIndex) { case 0: //微信好友 diff --git a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart index 9b5b51d9..bf798e78 100755 --- a/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart +++ b/lib/main/lockDetail/passwordKey/passwordKey_perpetual/passwordKey_perpetual_state.dart @@ -4,42 +4,42 @@ import 'package:star_lock/main/lockMian/entity/lockListInfo_entity.dart'; import 'package:star_lock/tools/dateTool.dart'; class PasswordKeyPerpetualState { + + PasswordKeyPerpetualState() { + Map map = Get.arguments; + if (map['keyInfo'] != null) { + keyInfo.value = map['keyInfo']; + } + } final TextEditingController nameController = TextEditingController(); final TextEditingController pwdController = TextEditingController(); // final isInitialized = false.obs; - final isSendSuccess = false.obs; //是否发送成功 - final isPermanent = true.obs; //是否永久 - var getPwdStr = ''.obs; - var pwdNameStr = ''; - final isAdministrator = false.obs; // 是否为管理员 + final RxBool isSendSuccess = false.obs; //是否发送成功 + final RxBool isPermanent = true.obs; //是否永久 + RxString getPwdStr = ''.obs; + String pwdNameStr = ''; + final RxBool isAdministrator = false.obs; // 是否为管理员 - var beginTime = DateTool().getNowDateWithType(3).obs; //默认为当前时间 开始时间 - var endTime = DateTool().getNowDateWithType(3).obs; //默认为当前时间 结束时间 + RxString beginTime = DateTool().getNowDateWithType(3).obs; //默认为当前时间 开始时间 + RxString endTime = DateTool().getNowDateWithType(3).obs; //默认为当前时间 结束时间 - var loopEffectiveDate = DateTool().getNowDateWithType(7).obs; //生效时间 - var loopFailureDate = DateTool().getNowDateWithType(7).obs; //失效时间 - var loopStartHours = DateTime.now().hour.obs; - var loopEndHours = DateTime.now().hour.obs; - var loopModeStr = '周末'.obs; //循环模式 + RxString loopEffectiveDate = DateTool().getNowDateWithType(7).obs; //生效时间 + RxString loopFailureDate = DateTool().getNowDateWithType(7).obs; //失效时间 + RxInt loopStartHours = DateTime.now().hour.obs; + RxInt loopEndHours = DateTime.now().hour.obs; + RxString loopModeStr = '周末'.obs; //循环模式 - var customBeginTime = DateTool().getNowDateWithType(2).obs; //默认为当前时间 开始时间 - var customEndTime = DateTool().getNowDateWithType(2).obs; //默认为当前时间 结束时间 + RxString customBeginTime = DateTool().getNowDateWithType(2).obs; //默认为当前时间 开始时间 + RxString customEndTime = DateTool().getNowDateWithType(2).obs; //默认为当前时间 结束时间 - final widgetType = 0.obs; - final sendSucceedType = 0.obs; - final keyInfo = LockListInfoItemEntity().obs; + final RxInt widgetType = 0.obs; + final RxInt sendSucceedType = 0.obs; + final Rx keyInfo = LockListInfoItemEntity().obs; - var ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 - var sureBtnState = 0.obs; // 0普通状态(可用) 1连接中(不可用) + RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 + RxInt sureBtnState = 0.obs; // 0普通状态(可用) 1连接中(不可用) - var pwdNumber = 0.obs; // 密码编号 + RxInt pwdNumber = 0.obs; // 密码编号 late TabController tabController; - - PasswordKeyPerpetualState() { - Map map = Get.arguments; - if (map["keyInfo"] != null) { - keyInfo.value = map["keyInfo"]; - } - } } diff --git a/lib/mine/mineSet/lockUserManage/expireLockList/expireFace/expireFace_page.dart b/lib/mine/mineSet/lockUserManage/expireLockList/expireFace/expireFace_page.dart index 29b556ce..94b51d18 100755 --- a/lib/mine/mineSet/lockUserManage/expireLockList/expireFace/expireFace_page.dart +++ b/lib/mine/mineSet/lockUserManage/expireLockList/expireFace/expireFace_page.dart @@ -222,7 +222,7 @@ class _ExpireFacePageState extends State { ); } else { return Container( - padding: EdgeInsets.only(left: 5.w, right: 5.w), + padding: EdgeInsets.only(left: 5.w, right: 5.w, bottom: 2.h), decoration: BoxDecoration( color: Colors.red, borderRadius: BorderRadius.circular(2.0), diff --git a/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_logic.dart b/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_logic.dart index e9ebb90d..3aa7fb2e 100755 --- a/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_logic.dart +++ b/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_logic.dart @@ -4,6 +4,7 @@ import 'dart:async'; import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:star_lock/blue/io_tool/io_tool.dart'; import 'package:star_lock/blue/io_type.dart'; +import 'package:star_lock/login/login/entity/LoginEntity.dart'; import 'package:star_lock/tools/baseGetXController.dart'; import 'package:star_lock/tools/dateTool.dart'; @@ -24,7 +25,7 @@ class ExpireFingerprintLogic extends BaseGetXController { // 获取解析后的数据 late StreamSubscription _replySubscription; void _initReplySubscription() { - _replySubscription = EventBusManager().eventBus!.on().listen((reply) { + _replySubscription = EventBusManager().eventBus!.on().listen((Reply reply) { // 添加指纹开始(此处用作删除指纹) if((reply is SenderAddFingerprintWithTimeCycleCoercionReply) && (state.ifCurrentScreen.value == true)) { _replyAddFingerprintBegin(reply); @@ -34,7 +35,7 @@ class ExpireFingerprintLogic extends BaseGetXController { // 添加指纹开始 Future _replyAddFingerprintBegin(Reply reply) async { - int status = reply.data[2]; + final int status = reply.data[2]; switch(status){ case 0x00: @@ -46,17 +47,17 @@ class ExpireFingerprintLogic extends BaseGetXController { break; case 0x06: //无权限 - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var publicKey = await Storage.getStringList(saveBluePublicKey); - List publicKeyDataList = changeStringListToIntList(publicKey!); + final List? publicKey = await Storage.getStringList(saveBluePublicKey); + final List publicKeyDataList = changeStringListToIntList(publicKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderAddFingerprintWithTimeCycleCoercionCommand( keyID:state.deletExpireFingerprintItemEntity.fingerprintId.toString(), @@ -100,14 +101,14 @@ class ExpireFingerprintLogic extends BaseGetXController { // var publicKey = await Storage.getStringList(saveBluePublicKey); // List publicKeyDataList = changeStringListToIntList(publicKey!); - var signKey = await Storage.getStringList(saveBlueSignKey); - List signKeyDataList = changeStringListToIntList(signKey!); + final List? signKey = await Storage.getStringList(saveBlueSignKey); + final List signKeyDataList = changeStringListToIntList(signKey!); - var privateKey = await Storage.getStringList(saveBluePrivateKey); - List getPrivateKeyList = changeStringListToIntList(privateKey!); + final List? privateKey = await Storage.getStringList(saveBluePrivateKey); + final List getPrivateKeyList = changeStringListToIntList(privateKey!); - var token = await Storage.getStringList(saveBlueToken); - List getTokenList = changeStringListToIntList(token!); + final List? token = await Storage.getStringList(saveBlueToken); + final List getTokenList = changeStringListToIntList(token!); IoSenderManage.senderAddFingerprintWithTimeCycleCoercionCommand( keyID:state.deletExpireFingerprintItemEntity.fingerprintId.toString(), @@ -154,7 +155,7 @@ class ExpireFingerprintLogic extends BaseGetXController { // 删除指纹 void deletFingerprintsData() async{ - var entity = await ApiRepository.to.deletFingerprintsData( + final LoginEntity entity = await ApiRepository.to.deletFingerprintsData( fingerprintId: state.deletExpireFingerprintItemEntity.fingerprintId.toString(), lockId: state.deletExpireFingerprintItemEntity.lockId.toString(), type: "0", @@ -172,7 +173,7 @@ class ExpireFingerprintLogic extends BaseGetXController { //请求指纹即将到期列表 Future expirFingerprintListRequest() async { - ExpireFingerprintEntity entity = await ApiRepository.to.expireFingerprintList(pageNo.toString(), pageSize.toString()); + final ExpireFingerprintEntity entity = await ApiRepository.to.expireFingerprintList(pageNo.toString(), pageSize.toString()); if(entity.errorCode!.codeIsSuccessful){ if (pageNo == 1) { state.dataList.value = entity.data!.list!; diff --git a/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_page.dart b/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_page.dart index 333b888f..9d49169e 100755 --- a/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_page.dart +++ b/lib/mine/mineSet/lockUserManage/expireLockList/expireFingerprint/expireFingerprint_page.dart @@ -226,7 +226,7 @@ class _ExpireFingerprintPageState extends State { ); } else { return Container( - padding: EdgeInsets.only(left: 5.w, right: 5.w), + padding: EdgeInsets.only(left: 5.w, right: 5.w, bottom: 2.h), decoration: BoxDecoration( color: Colors.red, borderRadius: BorderRadius.circular(2.0), diff --git a/lib/mine/mineSet/lockUserManage/expireLockList/expireLockManage_tabbar.dart b/lib/mine/mineSet/lockUserManage/expireLockList/expireLockManage_tabbar.dart index 71c41ad6..2c9c9a00 100755 --- a/lib/mine/mineSet/lockUserManage/expireLockList/expireLockManage_tabbar.dart +++ b/lib/mine/mineSet/lockUserManage/expireLockList/expireLockManage_tabbar.dart @@ -39,7 +39,7 @@ class _ExpireLockManageTabbarState extends State with Si _tabController = TabController( vsync: this, length: _itemTabs.length, - initialIndex: 1); + initialIndex: 0); _tabController.addListener(() { if (_tabController.animation!.value == _tabController.index) { FocusScope.of(context).requestFocus(FocusNode()); diff --git a/lib/mine/mineSet/lockUserManage/expireLockList/expirePassword/expirePassword_page.dart b/lib/mine/mineSet/lockUserManage/expireLockList/expirePassword/expirePassword_page.dart index 746969b1..e9d7cee7 100755 --- a/lib/mine/mineSet/lockUserManage/expireLockList/expirePassword/expirePassword_page.dart +++ b/lib/mine/mineSet/lockUserManage/expireLockList/expirePassword/expirePassword_page.dart @@ -117,20 +117,20 @@ class _ExpirePasswordPageState extends State { // getHttpData(); // } // } else { - // var backData = await Get.toNamed( - // Routers.passwordKeyDetailChangeDatePage, - // arguments: { - // 'itemData': itemData, + var backData = await Get.toNamed( + Routers.passwordKeyDetailChangeDatePage, + arguments: { + 'itemData': itemData, - // }); - // if (backData != null) { - // itemData.startDate = - // int.parse(backData["beginTimeTimestamp"]) * 1000; - // itemData.endDate = int.parse(backData["endTimeTimestamp"]) * 1000; - // // 改了日期之后,永久只能改限时的 - // itemData.keyboardPwdType = 3; - // setState(() {}); - // } + }); + if (backData != null) { + itemData.startDate = + int.parse(backData["beginTimeTimestamp"]) * 1000; + itemData.endDate = int.parse(backData["endTimeTimestamp"]) * 1000; + // 改了日期之后,永久只能改限时的 + itemData.keyboardPwdType = 3; + setState(() {}); + } // } }, child: Container( @@ -219,7 +219,7 @@ class _ExpirePasswordPageState extends State { Visibility( visible: itemData.keyboardPwdStatus! == 2 ? true : false, child: Container( - padding: EdgeInsets.only(left: 5.w, right: 5.w), + padding: EdgeInsets.only(left: 5.w, right: 5.w, bottom: 2.h), decoration: BoxDecoration( color: Colors.red, borderRadius: BorderRadius.circular(2.0), diff --git a/lib/tools/dateTool.dart b/lib/tools/dateTool.dart index cb6b6f85..3e986e92 100755 --- a/lib/tools/dateTool.dart +++ b/lib/tools/dateTool.dart @@ -6,21 +6,21 @@ import 'pickers/time_picker/model/pduration.dart'; class DateTool { /// 获取当前年月日时分秒 String getNowDateWithType(int type) { - var dateStr = ''; + String dateStr = ''; // 获取当前时间对象 - DateTime now = DateTime.now(); + final DateTime now = DateTime.now(); //获取当前时间的年 - int year = now.year; + final int year = now.year; //获取当前时间的月 - int month = now.month; + final int month = now.month; //获取当前时间的日 - int day = now.day; + final int day = now.day; //获取当前时间的时 - int hour = now.hour; + final int hour = now.hour; //获取当前时间的分 - int minute = now.minute; + final int minute = now.minute; //获取当前时间的秒 - int millisecond = now.millisecond; + final int millisecond = now.millisecond; switch (type) { case 1: @@ -76,13 +76,13 @@ class DateTool { /// 根据传入的PDuration及时间类型获取时间字符串 /// type 1: 年月日时分(2023-01-01 12:00) 2: 年月日(2023-01-01) 3: 时分(12:00) String getYMDHNDateString(PDuration p, int type) { - var year = p.year == 0 ? DateTime.now().year : p.year; - var month = p.month == 0 ? DateTime.now().month : p.month; - var day = p.day == 0 ? DateTime.now().day : p.day; - var hour = p.hour == 0 ? DateTime.now().hour : p.hour; - var minute = p.minute; + final int? year = p.year == 0 ? DateTime.now().year : p.year; + final int? month = p.month == 0 ? DateTime.now().month : p.month; + final int? day = p.day == 0 ? DateTime.now().day : p.day; + final int? hour = p.hour; + final int? minute = p.minute; - var dateStr = ''; + String dateStr = ''; switch (type) { case 1: // 年月日时分(2023-01-01 12:48) @@ -121,16 +121,16 @@ class DateTool { int dateToTimestamp(String dateStr, int type) { int timestamp = 0; if (type == 0) { - List timeParts = dateStr.split(":"); + final List timeParts = dateStr.split(':'); if (timeParts.length < 2) { return 0; } - DateTime now = DateTime.now(); - DateTime dateTime = DateTime(now.year, now.month, now.day, + final DateTime now = DateTime.now(); + final DateTime dateTime = DateTime(now.year, now.month, now.day, int.parse(timeParts[0]), int.parse(timeParts[1])); timestamp = dateTime.millisecondsSinceEpoch; } else { - DateTime dateTime = DateTime.parse(dateStr); + final DateTime dateTime = DateTime.parse(dateStr); timestamp = dateTime.millisecondsSinceEpoch; } return timestamp; @@ -139,7 +139,7 @@ class DateTool { /// 日期转化为时间戳 /// type 0: 12:00 1: 其他 DateTime? dateToDateTime(String dateStr, int type) { - int timestamp = dateToTimestamp(dateStr, type); + final int timestamp = dateToTimestamp(dateStr, type); if (timestamp == 0) { return null; } else { @@ -154,9 +154,9 @@ class DateTool { if (timestamp.length == 10) { time = time * 1000; } - DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); - String appointmentDate = - formatDate(nowDate, [yyyy, '-', mm, '-', dd, ' ', HH, ':', nn]); + final DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); + final String appointmentDate = + formatDate(nowDate, [yyyy, '-', mm, '-', dd, ' ', HH, ':', nn]); return appointmentDate; } @@ -166,33 +166,33 @@ class DateTool { if (time.toString().length == 10) { time = time * 1000; } - DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); - String appointmentDate = - formatDate(nowDate, [yyyy, '-', mm, '-', dd, ' ', HH, ':', nn]); + final DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); + final String appointmentDate = + formatDate(nowDate, [yyyy, '-', mm, '-', dd, ' ', HH, ':', nn]); return appointmentDate; } /// 将时间戳传化为年月日 (年-月-日) String dateToYMDString(String timestamp) { - int time = int.parse(timestamp); - DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); - String appointmentDate = formatDate(nowDate, [yyyy, '-', mm, '-', dd]); + final int time = int.parse(timestamp); + final DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); + final String appointmentDate = formatDate(nowDate, [yyyy, '-', mm, '-', dd]); return appointmentDate; } /// 将时间戳传化为年月日 (时:分) String dateToHNString(String timestamp) { - int time = int.parse(timestamp); - DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); - String appointmentDate = formatDate(nowDate, [HH, ':', nn]); + final int time = int.parse(timestamp); + final DateTime nowDate = DateTime.fromMillisecondsSinceEpoch(time); + final String appointmentDate = formatDate(nowDate, [HH, ':', nn]); return appointmentDate; } /// 获取是否超过现在的时间 bool compareTimeIsOvertime(int endTiem) { - DateTime dateTime = + final DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(endTiem); // 将时间戳转换为 DateTime - DateTime now = DateTime.now(); // 获取当前时间 + final DateTime now = DateTime.now(); // 获取当前时间 if (now.isAfter(dateTime)) { // 过期 return true; @@ -203,25 +203,25 @@ class DateTool { /// 获取两个距离当前时间相差几天 1705132260000 int compareTimeGetDaysFromNow(int endTiem) { - DateTime dateTime = + final DateTime dateTime = DateTime.fromMillisecondsSinceEpoch(endTiem); // 将时间戳转换为 DateTime - DateTime now = DateTime.now(); // 获取当前时间 - Duration difference = dateTime.difference(now); // 计算两个日期之间的差异 - int days = difference.inDays; // 获取差异的天数 + final DateTime now = DateTime.now(); // 获取当前时间 + final Duration difference = dateTime.difference(now); // 计算两个日期之间的差异 + final int days = difference.inDays; // 获取差异的天数 return days; } // 根据循环的循环周期转化为对应的整型(Bit0 -- 6 置位分别代表周日 -- 周六) int accordingTheCycleIntoTheCorrespondingNumber(List weekDay) { - var weekStr = "00000000"; + String weekStr = '00000000'; for (var day in weekDay) { - int index = day % 7; // 将周日的索引转换为 0 + final int index = day % 7; // 将周日的索引转换为 0 weekStr = '${weekStr.substring(0, index)}1${weekStr.substring(index + 1)}'; } // 倒序 weekStr weekStr = weekStr.split('').reversed.join(''); - int weekRound = int.parse(weekStr, radix: 2); + final int weekRound = int.parse(weekStr, radix: 2); return weekRound; } }