From ba0b9c0fab23262d91662f98399aab13e7b0fc43 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Fri, 31 May 2024 15:10:57 +0800 Subject: [PATCH] =?UTF-8?q?1=EF=BC=8C=E9=94=81=E8=AF=A6=E6=83=85=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=96=B0=E5=A2=9E=E6=89=8B=E6=9C=BA=E9=9C=80=E8=81=94?= =?UTF-8?q?=E7=BD=91=E5=AD=97=E6=AE=B5=E5=8F=8A=E6=A0=87=E8=AF=86=202?= =?UTF-8?q?=EF=BC=8Cxhj=E9=94=81=E8=AF=A6=E6=83=85=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E9=83=A8=E5=88=86=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- images/main/icon_lockDetail_needNetwork.png | Bin 0 -> 4199 bytes .../lockDetail/lockDetail_page.dart | 160 ++++++++++-------- .../lockMian/entity/lockListInfo_entity.dart | 4 + 3 files changed, 94 insertions(+), 70 deletions(-) create mode 100644 images/main/icon_lockDetail_needNetwork.png diff --git a/images/main/icon_lockDetail_needNetwork.png b/images/main/icon_lockDetail_needNetwork.png new file mode 100644 index 0000000000000000000000000000000000000000..32a741f0440e72383497451bb287be5eb622517a GIT binary patch literal 4199 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 crossAxisAlignment: CrossAxisAlignment.center, children: [ const Spacer(), + Positioned( + child: GestureDetector( + onTap: () { + ShowTipView().showSureAlertDialog( + "${"锁电量更新时间:".tr}${DateTool().dateToYMDHNString(state.keyInfos.value.electricQuantityDate!.toString())}"); + }, + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Image.asset(showElectricIcon(state.electricQuantity.value), + width: 30.w, height: 24.w), + SizedBox(width: 2.w), + Text('${state.electricQuantity.value}%', + style: TextStyle( + fontSize: 18.sp, + color: AppColors.darkGrayTextColor)), + SizedBox(width: 2.w), + Icon( + Icons.info, // 使用内置的 warning 图标,它是一个叹号 + color: AppColors.mainColor, // 设置图标颜色为红色 + size: 25.w, // 设置图标大小为 30 + ), + SizedBox(width: 20.w), + ], + ), + SizedBox( + height: 15.h, + ), + Visibility( + visible: state + .keyInfos.value.lockFeature!.isSupportBackupBattery == + 1, + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + FlavorsImg( + child: Image.asset( + showElectricIcon( + state.electricQuantityStandby.value), + width: 30.w, + height: 24.w), + ), + SizedBox(width: 2.w), + Text('${state.electricQuantityStandby.value}%', + style: TextStyle( + fontSize: 18.sp, + color: AppColors.darkGrayTextColor)), + SizedBox(width: 2.w), + FlavorsImg( + child: Icon( + Icons.info, // 使用内置的 warning 图标,它是一个叹号 + color: AppColors.mainColor, // 设置图标颜色为红色 + size: 25.w, // 设置图标大小为 30 + ), + ), + SizedBox(width: 20.w), + ], + ), + ) + ], + ), + )), GestureDetector( onTap: () { if (state.openDoorBtnisUneable.value == true) { @@ -282,7 +348,7 @@ class _LockDetailPageState extends State spreadRadius: 0, ), ]), - margin: EdgeInsets.only(top: 20.h), + margin: EdgeInsets.only(top: 0.h), child: Stack( alignment: AlignmentDirectional.center, children: [ @@ -326,10 +392,10 @@ class _LockDetailPageState extends State Padding( padding: EdgeInsets.only(left: 15.w, right: 00.w, bottom: 15.h), child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, + mainAxisAlignment: MainAxisAlignment.center, children: [ Column( - crossAxisAlignment: CrossAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.center, children: [ Text( TranslationLoader @@ -339,76 +405,12 @@ class _LockDetailPageState extends State fontSize: 20.sp, ), ), + SizedBox( + height: 16.h, + ), adminInfoView(center: false, max: false), ], ), - GestureDetector( - onTap: () { - ShowTipView().showSureAlertDialog( - "${"锁电量更新时间:".tr}${DateTool().dateToYMDHNString(state.keyInfos.value.electricQuantityDate!.toString())}"); - }, - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Image.asset( - showElectricIcon(state.electricQuantity.value), - width: 30.w, - height: 24.w), - SizedBox(width: 2.w), - Text('${state.electricQuantity.value}%', - style: TextStyle( - fontSize: 18.sp, - color: AppColors.darkGrayTextColor)), - SizedBox(width: 2.w), - Icon( - Icons.info, // 使用内置的 warning 图标,它是一个叹号 - color: AppColors.mainColor, // 设置图标颜色为红色 - size: 25.w, // 设置图标大小为 30 - ), - SizedBox(width: 20.w), - ], - ), - SizedBox( - height: 15.h, - ), - Visibility( - visible: state.keyInfos.value.lockFeature! - .isSupportBackupBattery == - 1, - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - FlavorsImg( - child: Image.asset( - showElectricIcon( - state.electricQuantityStandby.value), - width: 30.w, - height: 24.w), - ), - SizedBox(width: 2.w), - Text('${state.electricQuantityStandby.value}%', - style: TextStyle( - fontSize: 18.sp, - color: AppColors.darkGrayTextColor)), - SizedBox(width: 2.w), - FlavorsImg( - child: Icon( - Icons.info, // 使用内置的 warning 图标,它是一个叹号 - color: AppColors.mainColor, // 设置图标颜色为红色 - size: 25.w, // 设置图标大小为 30 - ), - ), - SizedBox(width: 20.w), - ], - ), - ) - ], - ), - ) ], ), ) @@ -760,6 +762,24 @@ class _LockDetailPageState extends State ? AppColors.mainColor : AppColors.btnDisableColor), ), + if (add) SizedBox(width: 20.w) else SizedBox(width: 40.w), + FlavorsImg( + child: Image.asset('images/main/icon_lockDetail_needNetwork.png', + width: 24.w, + height: 20.w, + color: state.keyInfos.value.appUnlockOnline == 1 + ? AppColors.mainColor + : AppColors.btnDisableColor), + ), + SizedBox(width: 6.w), + Text( + '手机需联网', + style: TextStyle( + fontSize: 20.sp, + color: state.keyInfos.value.appUnlockOnline == 1 + ? AppColors.mainColor + : AppColors.btnDisableColor), + ), if (add) ...[ const Spacer(), GestureDetector( diff --git a/lib/main/lockMian/entity/lockListInfo_entity.dart b/lib/main/lockMian/entity/lockListInfo_entity.dart index c3a63756..b3c62d17 100755 --- a/lib/main/lockMian/entity/lockListInfo_entity.dart +++ b/lib/main/lockMian/entity/lockListInfo_entity.dart @@ -133,6 +133,7 @@ class LockListInfoItemEntity { LockFeature? lockFeature; LockSetting? lockSetting; int? hasGateway; + int? appUnlockOnline; String? mac; LockListInfoItemEntity({ @@ -169,6 +170,7 @@ class LockListInfoItemEntity { this.model, this.vendor, this.hasGateway, + this.appUnlockOnline, this.mac, }); @@ -212,6 +214,7 @@ class LockListInfoItemEntity { ? LockSetting.fromJson(json['lockSetting']) : null; hasGateway = json['hasGateway']; + appUnlockOnline = json['appUnlockOnline']; mac = json['mac']; } @@ -256,6 +259,7 @@ class LockListInfoItemEntity { data['lockSetting'] = lockSetting!.toJson(); } data['hasGateway'] = hasGateway; + data['appUnlockOnline'] = appUnlockOnline; data['mac'] = mac; return data; }