From 837189310099dd2b28c693d649e496695fd29418 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AD=8F=E5=B0=91=E9=98=B3?= <786612630@qq.com> Date: Mon, 22 Apr 2024 15:38:19 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=B7=BB=E5=8A=A0=E9=94=81=E5=9F=BA?= =?UTF-8?q?=E6=9C=AC=E4=BF=A1=E6=81=AF=E9=87=8C=E9=9D=A2=E7=9A=84=E5=8E=82?= =?UTF-8?q?=E5=95=86=E3=80=81=E5=9E=8B=E5=8F=B7=E3=80=81=E9=85=8D=E7=BD=91?= =?UTF-8?q?wifi=E5=90=8D=E5=AD=97=E3=80=81=E7=BB=91=E5=AE=9A=E5=9C=B0?= =?UTF-8?q?=E5=9D=80=E3=80=822=E3=80=81=E6=B7=BB=E5=8A=A0=E5=8D=A1?= =?UTF-8?q?=E3=80=81=E6=8C=87=E7=BA=B9=E4=BF=AE=E6=94=B9=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/images/lan/lan_en.json | 3 ++ star_lock/images/lan/lan_keys.json | 3 ++ star_lock/images/lan/lan_zh.json | 3 ++ .../card/cardDetail/cardDetail_logic.dart | 10 +++-- .../card/cardDetail/cardDetail_page.dart | 4 +- .../fingerprintDetail_logic.dart | 10 +++-- .../fingerprintDetail_state.dart | 3 +- .../basicInformation_page.dart | 27 +++++++++++-- .../configuringWifi_logic.dart | 38 +++++++++---------- .../lockSet/lockSet/lockSetInfo_entity.dart | 6 ++- .../addLock/nearbyLock/nearbyLock_logic.dart | 6 ++- star_lock/lib/network/api_provider.dart | 9 +++++ star_lock/lib/network/api_repository.dart | 11 ++++++ 13 files changed, 100 insertions(+), 33 deletions(-) diff --git a/star_lock/images/lan/lan_en.json b/star_lock/images/lan/lan_en.json index 4afa7f45..85988c5d 100644 --- a/star_lock/images/lan/lan_en.json +++ b/star_lock/images/lan/lan_en.json @@ -700,6 +700,8 @@ "重命名": "Rename", "分组下的锁将被移到未分组里": "The locks under the group will be moved to ungrouped", "编辑成功": "Edit success", + "厂商": "Manufacturer", + "型号": "Model", "相机": "camera", "相册": "photos", @@ -719,6 +721,7 @@ "去设置": "Go set it up", "当前网络": "Current network", "位置信息": "Location information", + "请输入wifi名称": "Please enter the wifi name", "虹膜":"iris", "手掌":"palm", diff --git a/star_lock/images/lan/lan_keys.json b/star_lock/images/lan/lan_keys.json index d939b12b..b3e878a5 100644 --- a/star_lock/images/lan/lan_keys.json +++ b/star_lock/images/lan/lan_keys.json @@ -701,6 +701,9 @@ "编辑成功": "编辑成功", "当前网络": "当前网络", "位置信息": "位置信息", + "请输入wifi名称": "请输入wifi名称", + "厂商": "厂商", + "型号": "型号", "相机": "相机", "相册": "相册", diff --git a/star_lock/images/lan/lan_zh.json b/star_lock/images/lan/lan_zh.json index e7e73eac..e123d2af 100644 --- a/star_lock/images/lan/lan_zh.json +++ b/star_lock/images/lan/lan_zh.json @@ -703,6 +703,9 @@ "编辑成功": "编辑成功", "当前网络": "当前网络", "位置信息": "位置信息", + "请输入wifi名称": "请输入wifi名称", + "厂商": "厂商", + "型号": "型号", "相机": "相机", "相册": "相册", diff --git a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_logic.dart b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_logic.dart index 9fffec0a..eb8b2ff6 100644 --- a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_logic.dart +++ b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_logic.dart @@ -42,7 +42,11 @@ class CardDetailLogic extends BaseGetXController{ Get.log("${reply.commandType!.typeValue} 数据解析成功"); cancelBlueConnetctToastTimer(); dismissEasyLoading(); - deletICCardData(); + if(state.isDeletCard.value == true){ + deletICCardData(); + }else{ + editICCardData(); + } break; case 0x06: //无权限 @@ -64,7 +68,7 @@ class CardDetailLogic extends BaseGetXController{ keyID:state.keyId.value.toString(), userID:await Storage.getUid(), cardNo:int.parse(state.typeNumber.value), - useCountLimit:0xff, + useCountLimit:state.isDeletCard.value == true ? 0 : 0xff, isForce:state.isStressFingerprint.value == true ? 1 : 0, // 是否是胁迫 isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 @@ -115,7 +119,7 @@ class CardDetailLogic extends BaseGetXController{ keyID:state.keyId.value.toString(), userID:await Storage.getUid(), cardNo:int.parse(state.typeNumber.value), - useCountLimit:0xff, + useCountLimit:state.isDeletCard.value == true ? 0 : 0xff, isForce:state.isStressFingerprint.value == true ? 1 : 0, // 是否是胁迫 isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 diff --git a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_page.dart b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_page.dart index ca094afa..3981599e 100644 --- a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_page.dart +++ b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_page.dart @@ -173,6 +173,7 @@ class _CardDetailPageState extends State with RouteAware { padding: EdgeInsets.only(top: 25.w, bottom: 25.w), onClick: () { ShowTipView().showIosTipWithContentDialog("确定要删除吗?".tr, () async { + state.isDeletCard.value = true; logic.senderAddICCard(); }); }), @@ -191,7 +192,8 @@ class _CardDetailPageState extends State with RouteAware { onChanged: (value) { setState(() { state.isStressFingerprint.value = value; - logic.editICCardData(); + state.isDeletCard.value = false; + logic.senderAddICCard(); }); }, ); diff --git a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_logic.dart b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_logic.dart index 98692236..df863f6f 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_logic.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_logic.dart @@ -42,7 +42,11 @@ class FingerprintDetailLogic extends BaseGetXController{ state.sureBtnState.value = 0; cancelBlueConnetctToastTimer(); dismissEasyLoading(); - deletFingerprintsData(); + if(state.isDeletFingerprint.value == true){ + deletFingerprintsData(); + }else{ + editFingerprintsData(); + } break; case 0x06: //无权限 @@ -64,7 +68,7 @@ class FingerprintDetailLogic extends BaseGetXController{ keyID:state.keyId.value.toString(), userID:await Storage.getUid(), fingerNo:int.parse(state.typeNumber.value), - useCountLimit:0xff, + useCountLimit:state.isDeletFingerprint.value == true ? 0 : 0xff, isForce:state.isStressFingerprint.value == true ? 1 : 0, // 是否是胁迫 isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 @@ -115,7 +119,7 @@ class FingerprintDetailLogic extends BaseGetXController{ keyID:state.keyId.value.toString(), userID:await Storage.getUid(), fingerNo:int.parse(state.typeNumber.value), - useCountLimit:0xff, + useCountLimit:state.isDeletFingerprint.value == true ? 0 : 0xff, isForce:state.isStressFingerprint.value == true ? 1 : 0, // 是否是胁迫 isRound:state.keyType.value == 4 ? 1: 0, // 是否是循环 weekRound:DateTool().accordingTheCycleIntoTheCorrespondingNumber(state.weekDay.value), // 周循环 diff --git a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart index e107590d..972d3e18 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart @@ -23,8 +23,9 @@ class FingerprintDetailState{ var ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示 var sureBtnState = 0.obs;// 0普通状态(可用) 1连接中(不可用) - + var isDeletFingerprint = true.obs;// 是否删除卡 final isStressFingerprint = false.obs; + FingerprintDetailState() { Map map = Get.arguments; if ((map["fingerprintItemData"] != null)) { diff --git a/star_lock/lib/main/lockDetail/lockSet/basicInformation/basicInformation/basicInformation_page.dart b/star_lock/lib/main/lockDetail/lockSet/basicInformation/basicInformation/basicInformation_page.dart index 51321167..199f51df 100644 --- a/star_lock/lib/main/lockDetail/lockSet/basicInformation/basicInformation/basicInformation_page.dart +++ b/star_lock/lib/main/lockDetail/lockSet/basicInformation/basicInformation/basicInformation_page.dart @@ -52,6 +52,16 @@ class _BasicInformationPageState extends State { rightTitle: "${state.lockBasicInfo.value.mac??""}/${state.lockBasicInfo.value.lockId??""}", allHeight: 70.h, + isHaveLine: true)), + Obx(() => CommonItem( + leftTitel: "厂商".tr, + rightTitle: state.lockBasicInfo.value.vendor ??"", + allHeight: 70.h, + isHaveLine: true)), + Obx(() => CommonItem( + leftTitel: "型号".tr, + rightTitle: state.lockBasicInfo.value.model ??"", + allHeight: 70.h, isHaveLine: false)), SizedBox( height: 10.h, @@ -153,9 +163,20 @@ class _BasicInformationPageState extends State { )), Obx(() => CommonItem( leftTitel: "位置信息".tr, - rightTitle: state.lockBasicInfo.value.address ?? "-", - allHeight: 70.h, - isHaveLine: true)), + // rightTitle: state.lockBasicInfo.value.address ?? "-", + allHeight: 80.h, + isHaveLine: false, + isHaveRightWidget: true, + rightWidget: Container( + width: 300.w, + child: Text(state.lockBasicInfo.value.address ?? "-", + maxLines: 2, + overflow: TextOverflow.ellipsis, + textAlign: TextAlign.end, + style: TextStyle( + fontSize: 22.sp, + color: AppColors.darkGrayTextColor)), + ),)), /* 2024-01-12 会议确定去掉“微信二维码” by DaisyWu CommonItem( leftTitel: diff --git a/star_lock/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart b/star_lock/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart index 416c70c5..65250366 100644 --- a/star_lock/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart +++ b/star_lock/lib/main/lockDetail/lockSet/configuringWifi/configuringWifi/configuringWifi_logic.dart @@ -16,6 +16,7 @@ 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/eventBusEventManage.dart'; import '../../../../../tools/storage.dart'; import 'configuringWifi_state.dart'; @@ -26,23 +27,19 @@ class ConfiguringWifiLogic extends BaseGetXController{ var entity = await ApiRepository.to.getWifiLockServiceIpAndPort(); if(entity.errorCode! == 0){ state.configuringWifiEntity.value = entity; + } + } - // var serversList = []; - // for(int i = 0; i senderConfiguringWifiAction() async { + if(state.wifiNameController.text.isEmpty){ + showToast("请输入wifi名称"); + return; + } + if(state.sureBtnState.value == 1){ return; } diff --git a/star_lock/lib/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart b/star_lock/lib/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart index 9070fc43..8188207b 100644 --- a/star_lock/lib/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart +++ b/star_lock/lib/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart @@ -341,6 +341,7 @@ class LockBasicInfo { List? weekDays; String? address; String? network; + String? vendor; LockBasicInfo( {this.lockId, @@ -365,7 +366,8 @@ class LockBasicInfo { this.lockUserNo, this.weekDays, this.address, - this.network}); + this.network, + this.vendor}); LockBasicInfo.fromJson(Map json) { lockId = json['lockId']; @@ -396,6 +398,7 @@ class LockBasicInfo { weekDays = json['weekDays']; address = json['address']; network = json['network']; + vendor = json['vendor']; } Map toJson() { @@ -425,6 +428,7 @@ class LockBasicInfo { data['weekDays'] = weekDays; data['address'] = address; data['network'] = network; + data['vendor'] = vendor; return data; } } diff --git a/star_lock/lib/mine/addLock/nearbyLock/nearbyLock_logic.dart b/star_lock/lib/mine/addLock/nearbyLock/nearbyLock_logic.dart index 1e8e64a1..ce8302ab 100644 --- a/star_lock/lib/mine/addLock/nearbyLock/nearbyLock_logic.dart +++ b/star_lock/lib/mine/addLock/nearbyLock/nearbyLock_logic.dart @@ -143,7 +143,8 @@ class NearbyLockLogic extends BaseGetXController { // 厂商名称 var vendor = reply.data.sublist(3, 23); var vendorStr = utf8String(vendor); - state.lockInfo["vendor"] = vendorStr; + // state.lockInfo["vendor"] = vendorStr; + state.lockInfo["vendor"] = "XL"; Get.log("vendor:$vendor vendorStr:$vendorStr reply.data:${reply.data}"); // 锁设备类型 @@ -154,7 +155,8 @@ class NearbyLockLogic extends BaseGetXController { // 产品名称 var model = reply.data.sublist(24, 44); var modelStr = utf8String(model); - state.lockInfo["model"] = modelStr; + // state.lockInfo["model"] = modelStr; + state.lockInfo["model"] = "JL-BLE-01"; // Get.log("model:$model modelStr:$modelStr modelStr:${modelStr.length}"); // 软件版本 diff --git a/star_lock/lib/network/api_provider.dart b/star_lock/lib/network/api_provider.dart index 6eae8992..0bcaf519 100644 --- a/star_lock/lib/network/api_provider.dart +++ b/star_lock/lib/network/api_provider.dart @@ -670,6 +670,15 @@ class ApiProvider extends BaseProvider { 'autoLockSecond': autoLockSecond, })); + /// 更新网络信息 配网之后把网络信息提交到服务器保存 + Future updateNetworkInfo(int lockId, String network) => + post( + updateLockSettingUrl.toUrl, + jsonEncode({ + 'lockId': lockId, + 'network': network, + })); + // 锁声音 Future setLockSoundData( int lockId, int lockSound, int lockSoundVolume) => diff --git a/star_lock/lib/network/api_repository.dart b/star_lock/lib/network/api_repository.dart index 6ca76a26..b6d3afa5 100644 --- a/star_lock/lib/network/api_repository.dart +++ b/star_lock/lib/network/api_repository.dart @@ -709,6 +709,17 @@ class ApiRepository { return LoginEntity.fromJson(res.body); } + // 更新网络信息 配网之后把网络信息提交到服务器保存 + Future updateNetworkInfo({ + required int lockId, + required String network, + }) async { + final res = await apiProvider.updateNetworkInfo(lockId, network); + return LoginEntity.fromJson(res.body); + } + + + // 锁声音 Future setLockSound({ required int lockId,