From 2821d581629265f4a1b23ecc05e54f33cd293334 Mon Sep 17 00:00:00 2001 From: anfe <448468458@qq.com> Date: Sun, 28 Apr 2024 11:38:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E9=A6=96=E9=A1=B5=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/images/icon_lock_circle.png | Bin 0 -> 2599 bytes .../main/lockMian/lockList/lockList_page.dart | 14 +- .../lockMian/lockList/lockList_xhj_page.dart | 507 ++++++++++++++++++ .../main/lockMian/lockMain/lockMain_page.dart | 8 +- .../mine/addLock/addLock/addLock_state.dart | 4 +- 5 files changed, 516 insertions(+), 17 deletions(-) create mode 100644 star_lock/images/icon_lock_circle.png create mode 100644 star_lock/lib/main/lockMian/lockList/lockList_xhj_page.dart diff --git a/star_lock/images/icon_lock_circle.png b/star_lock/images/icon_lock_circle.png new file mode 100644 index 0000000000000000000000000000000000000000..8ff61791b3bc3b8e044a4d781e19b9b1607417f2 GIT binary patch literal 2599 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 JPDHLkV1i`rw%h;! literal 0 HcmV?d00001 diff --git a/star_lock/lib/main/lockMian/lockList/lockList_page.dart b/star_lock/lib/main/lockMian/lockList/lockList_page.dart index 214f898e..66f07890 100644 --- a/star_lock/lib/main/lockMian/lockList/lockList_page.dart +++ b/star_lock/lib/main/lockMian/lockList/lockList_page.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_slidable/flutter_slidable.dart'; import 'package:get/get.dart'; +import 'package:star_lock/flavors.dart'; import '../../../appRouters.dart'; import '../../../app_settings/app_colors.dart'; @@ -37,17 +38,6 @@ class _LockListPageState extends State with RouteAware { widget.lockListInfoGroupEntity.groupList as Iterable); return Scaffold( - floatingActionButton: FloatingActionButton( - shape: const CircleBorder(), - onPressed: () { - Get.toNamed(Routers.addLockPage); - }, - backgroundColor: AppColors.mainColor, - child: const Icon( - Icons.add, - color: AppColors.darkGrayTextColor, - ), - ), body: ListView.separated( itemCount: groupDataList.length, itemBuilder: (context, index) { @@ -70,8 +60,6 @@ class _LockListPageState extends State with RouteAware { List lockItemList = itemData.lockList ?? []; return LockListGroupPage( onTap: () { - // selectGroupIdList.add(index); - // clickIndex = index; //是否选中组 if (itemData.isChecked) { } else {} diff --git a/star_lock/lib/main/lockMian/lockList/lockList_xhj_page.dart b/star_lock/lib/main/lockMian/lockList/lockList_xhj_page.dart new file mode 100644 index 00000000..b283e009 --- /dev/null +++ b/star_lock/lib/main/lockMian/lockList/lockList_xhj_page.dart @@ -0,0 +1,507 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:flutter_slidable/flutter_slidable.dart'; +import 'package:get/get.dart'; +import 'package:star_lock/flavors.dart'; + +import '../../../appRouters.dart'; +import '../../../app_settings/app_colors.dart'; +import '../../../common/XSConstantMacro/XSConstantMacro.dart'; +import '../../../tools/appRouteObserver.dart'; +import '../../../tools/dateTool.dart'; +import '../entity/lockListInfo_entity.dart'; +import 'lockListGroup_page.dart'; +import 'lockList_logic.dart'; + +class LockListXHJPage extends StatefulWidget { + final LockListInfoGroupEntity lockListInfoGroupEntity; + + const LockListXHJPage({Key? key, required this.lockListInfoGroupEntity}) + : super(key: key); + + @override + State createState() => _LockListXHJPageState(); +} + +class _LockListXHJPageState extends State with RouteAware { + final logic = Get.put(LockListLogic()); + final state = Get.find().state; + + var groupDataList = []; + + @override + Widget build(BuildContext context) { + if (widget.lockListInfoGroupEntity.pageNo == 1) { + groupDataList = []; + } + groupDataList.addAll( + widget.lockListInfoGroupEntity.groupList as Iterable); + + return Scaffold( + floatingActionButton: FloatingActionButton( + shape: const CircleBorder(), + onPressed: () { + Get.toNamed(Routers.selectLockTypePage); + }, + backgroundColor: AppColors.mainColor, + child: const Icon( + Icons.add, + color: AppColors.darkGrayTextColor, + ), + ), + body: ListView.separated( + itemCount: groupDataList.length, + itemBuilder: (context, index) { + GroupList itemData = groupDataList[index]; + return _buildLockExpandedList(context, index, itemData); + }, + shrinkWrap: true, + physics: const AlwaysScrollableScrollPhysics(), + separatorBuilder: (context, index) { + return const Divider( + height: 1, + color: AppColors.greyLineColor, + ); + }), + ); + } + + //设备多层级列表 + Widget _buildLockExpandedList(context, index, GroupList itemData) { + List lockItemList = itemData.lockList ?? []; + return LockListGroupPage( + onTap: () { + //是否选中组 + if (itemData.isChecked) { + } else {} + setState(() {}); + }, + typeImgList: const [], + groupItem: itemData, + child: ListView.separated( + itemCount: lockItemList.length, + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + separatorBuilder: (context, index) { + return const Divider(height: 1, color: AppColors.greyLineColor); + }, + itemBuilder: (c, index) { + LockListInfoItemEntity keyInfo = lockItemList[index]; + bool isLast = false; + if (lockItemList.length == index + 1) { + isLast = true; + } + + return Slidable( + key: ValueKey(keyInfo.keyId), + endActionPane: ActionPane( + extentRatio: 0.2, + motion: const ScrollMotion(), + children: [ + SlidableAction( + onPressed: (BuildContext context) { + state.lockListInfoItemEntity = keyInfo; + logic.deleyLockLogicOfRoles(); + }, + backgroundColor: Colors.red, + foregroundColor: Colors.white, + label: '删除'.tr, + padding: EdgeInsets.only(left: 5.w, right: 5.w), + ), + ], + ), + child: lockInfoListItem(keyInfo, isLast, () { + if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == + XSConstantMacro.keyStatusWaitIneffective)) { + logic.showToast("您的钥匙未生效".tr); + return; + } + if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen)) { + logic.showToast("您的钥匙已冻结".tr); + return; + } + if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == XSConstantMacro.keyStatusExpired)) { + logic.showToast("您的钥匙已过期".tr); + return; + } + Get.toNamed(Routers.lockDetailMainPage, arguments: { + // "lockMainEntity": widget.lockMainEntity, + "keyInfo": keyInfo, + "isOnlyOneData": false, + }); + }), + ); + }), + ); + } + + Widget lockInfoListItem( + LockListInfoItemEntity keyInfo, bool isLast, Function() action) { + return F.sw( + defaultCall: () => _defaultLockInfoListItem(keyInfo, isLast, action), + xhjCall: () => _xhjLockInfoListItem(keyInfo, isLast, action)); + } + + Widget _defaultLockInfoListItem( + LockListInfoItemEntity keyInfo, bool isLast, Function() action) { + return GestureDetector( + onTap: action, + child: Container( + // height: 122.h, + margin: isLast + ? EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w, bottom: 20.w) + : EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w), + decoration: BoxDecoration( + color: ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == + XSConstantMacro.keyStatusWaitIneffective || + keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen || + keyInfo.keyStatus == XSConstantMacro.keyStatusExpired)) + ? AppColors.greyBackgroundColor + : Colors.white, + borderRadius: BorderRadius.circular(20.w), + ), + child: Column( + // mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + height: 20.h, + ), + Row( + children: [ + SizedBox(width: 30.w), + Expanded( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + keyInfo.lockAlias!, + style: TextStyle( + fontSize: 24.sp, + fontWeight: FontWeight.w500, + color: keyInfo.passageMode == 1 + ? AppColors.openPassageModeColor + : AppColors.darkGrayTextColor), + ), + ], + ), + ), + SizedBox(width: 20.w), + Image.asset( + logic.showElectricIcon(keyInfo.electricQuantity!), + width: 30.w, + height: 24.w, + ), + SizedBox(width: 2.w), + Text( + "${keyInfo.electricQuantity!}%", + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + SizedBox(width: 30.w), + ], + ), + SizedBox(height: 5.h), + Visibility( + visible: keyInfo.passageMode == 1 ? true : false, + child: Row( + children: [ + SizedBox(width: 30.w), + Container( + padding: EdgeInsets.only(right: 5.w, left: 5.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(5.w), + color: AppColors.openPassageModeColor, + ), + child: Text("常开模式开启".tr, + style: TextStyle( + fontSize: 18.sp, + color: AppColors.appBarIconColor)), + ), + ], + )), + SizedBox(height: 5.h), + Visibility( + visible: keyInfo.lockSetting!.remoteUnlock == 1 ? true : false, + child: Row( + children: [ + SizedBox(width: 30.w), + Text( + "远程开锁".tr, + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + ], + )), + SizedBox(height: 20.h), + Visibility( + visible: ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == + XSConstantMacro.keyStatusWaitIneffective || + keyInfo.keyStatus == + XSConstantMacro.keyStatusFrozen || + keyInfo.keyStatus == + XSConstantMacro.keyStatusExpired)) + ? true + : false, + // visible: true, + child: Row( + children: [ + SizedBox(width: 30.w), + Container( + padding: EdgeInsets.only(right: 5.w, left: 5.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(5.w), + color: + DateTool().compareTimeIsOvertime(keyInfo.endDate!) + ? AppColors.listTimeYellowColor + : AppColors.mainColor, + ), + child: Text(logic.getKeyEffective(keyInfo), + style: TextStyle(fontSize: 18.sp, color: Colors.white) + // child: Text(logic.compareTimeIsOvertime(keyInfo.endDate!) ? "已过期" : "余${logic.compareTimeGetDaysFromNow(keyInfo.endDate!)}天", style: TextStyle(fontSize: 18.sp, color: Colors.white) + ), + ), + ], + )), + SizedBox(height: 5.h), + Row( + children: [ + SizedBox(width: 30.w), + Text( + "${logic.getUseKeyTypeStr(keyInfo.startDate, keyInfo.endDate, keyInfo.keyType)}/${keyInfo.isLockOwner == 1 ? '超级管理员'.tr : (keyInfo.keyRight == 1 ? "授权管理员".tr : "普通用户".tr)}", + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + ], + ), + SizedBox(height: 20.h), + ], + ), + ), + ); + } + + Widget _xhjLockInfoListItem( + LockListInfoItemEntity keyInfo, bool isLast, Function() action) { + return GestureDetector( + onTap: action, + child: Container( + // height: 122.h, + margin: isLast + ? EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w, bottom: 20.w) + : EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w), + decoration: BoxDecoration( + color: ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == + XSConstantMacro.keyStatusWaitIneffective || + keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen || + keyInfo.keyStatus == XSConstantMacro.keyStatusExpired)) + ? AppColors.greyBackgroundColor + : Colors.white, + borderRadius: BorderRadius.circular(20.w), + ), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 30.w, vertical: 20.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Image.asset( + 'images/icon_lock_circle.png', + width: 32.r, + height: 32.r, + color: AppColors.mainColor, + ), + SizedBox( + width: 8.w, + ), + Expanded( + child: Text(keyInfo.lockAlias!, + style: TextStyle( + fontSize: 32.sp, + fontWeight: FontWeight.w500, + color: keyInfo.passageMode == 1 + ? AppColors.openPassageModeColor + : AppColors.darkGrayTextColor, + overflow: TextOverflow.ellipsis, + ), + maxLines: 1), + ), + Text( + logic.getUseKeyTypeStr( + keyInfo.startDate, keyInfo.endDate, keyInfo.keyType), + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ) + ], + ), + Visibility( + visible: keyInfo.passageMode == 1 ? true : false, + child: Padding( + padding: EdgeInsets.only(top: 5.h), + child: Row( + children: [ + Container( + padding: EdgeInsets.only(right: 5.w, left: 5.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(5.w), + color: AppColors.openPassageModeColor, + ), + child: Text("常开模式开启".tr, + style: TextStyle( + fontSize: 18.sp, + color: AppColors.appBarIconColor)), + ), + ], + ), + )), + Visibility( + visible: + keyInfo.lockSetting!.remoteUnlock == 1 ? true : false, + child: Padding( + padding: EdgeInsets.only(top: 5.h), + child: Row( + children: [ + Text( + "远程开锁".tr, + style: TextStyle( + fontSize: 18.sp, + color: AppColors.darkGrayTextColor), + ), + ], + ), + )), + SizedBox(height: 20.h), + Visibility( + visible: ((keyInfo.keyType == XSConstantMacro.keyTypeTime || + keyInfo.keyType == XSConstantMacro.keyTypeLoop) && + (keyInfo.keyStatus == + XSConstantMacro.keyStatusWaitIneffective || + keyInfo.keyStatus == + XSConstantMacro.keyStatusFrozen || + keyInfo.keyStatus == + XSConstantMacro.keyStatusExpired)) + ? true + : false, + child: Padding( + padding: EdgeInsets.only(top: 20.h), + child: Row( + children: [ + Container( + padding: EdgeInsets.only(right: 5.w, left: 5.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(5.w), + color: DateTool() + .compareTimeIsOvertime(keyInfo.endDate!) + ? AppColors.listTimeYellowColor + : AppColors.mainColor, + ), + child: Text(logic.getKeyEffective(keyInfo), + style: TextStyle( + fontSize: 18.sp, color: Colors.white) + // child: Text(logic.compareTimeIsOvertime(keyInfo.endDate!) ? "已过期" : "余${logic.compareTimeGetDaysFromNow(keyInfo.endDate!)}天", style: TextStyle(fontSize: 18.sp, color: Colors.white) + ), + ), + ], + ), + )), + SizedBox(height: 5.h), + Row( + children: [ + Expanded( + child: Text( + keyInfo.isLockOwner == 1 + ? '超级管理员'.tr + : (keyInfo.keyRight == 1 ? "授权管理员".tr : "普通用户".tr), + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + ), + Image.asset( + logic.showElectricIcon(keyInfo.electricQuantity!), + width: 30.w, + height: 24.w, + ), + SizedBox(width: 2.w), + Text( + "${keyInfo.electricQuantity!}%", + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + ], + ), + Text( + keyInfo.hwVersion ?? "", + style: TextStyle( + fontSize: 18.sp, color: AppColors.darkGrayTextColor), + ), + ], + ), + ), + ), + ); + } + + @override + void didChangeDependencies() { + // TODO: implement didChangeDependencies + super.didChangeDependencies(); + + /// 路由订阅 + AppRouteObserver().routeObserver.subscribe(this, ModalRoute.of(context)!); + } + + @override + void dispose() { + // TODO: implement dispose + /// 取消路由订阅 + AppRouteObserver().routeObserver.unsubscribe(this); + super.dispose(); + } + + /// 从上级界面进入 当前界面即将出现 + @override + void didPush() { + super.didPush(); + state.ifCurrentScreen.value = true; + } + + /// 返回上一个界面 当前界面即将消失 + @override + void didPop() { + super.didPop(); + logic.cancelBlueConnetctToastTimer(); + + // BlueManage().stopScan(); + state.ifCurrentScreen.value = false; + } + + /// 从下级返回 当前界面即将出现 + @override + void didPopNext() { + super.didPopNext(); + state.ifCurrentScreen.value = true; + } + + /// 进入下级界面 当前界面即将消失 + @override + void didPushNext() { + super.didPushNext(); + logic.cancelBlueConnetctToastTimer(); + + // BlueManage().stopScan(); + state.ifCurrentScreen.value = false; + } +} diff --git a/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart b/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart index 55c4f793..ec382028 100644 --- a/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart +++ b/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart @@ -4,6 +4,7 @@ import 'package:flutter/scheduler.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_colors.dart'; +import 'package:star_lock/main/lockMian/lockList/lockList_xhj_page.dart'; import 'package:star_lock/tools/noData.dart'; import 'package:star_lock/tools/submitBtn.dart'; @@ -138,8 +139,11 @@ class _StarLockMainPageState extends State with BaseWidget { case 2: // 有多条数据 Storage.setBool(ifIsDemoModeOrNot, false); - returnWidget = LockListPage( - lockListInfoGroupEntity: state.lockListInfoGroupEntity.value); + returnWidget = F.sw( + defaultCall: () => LockListPage( + lockListInfoGroupEntity: state.lockListInfoGroupEntity.value), + xhjCall: () => LockListXHJPage( + lockListInfoGroupEntity: state.lockListInfoGroupEntity.value)); break; default: returnWidget = NoData(); diff --git a/star_lock/lib/mine/addLock/addLock/addLock_state.dart b/star_lock/lib/mine/addLock/addLock/addLock_state.dart index 04184a8b..280ab527 100644 --- a/star_lock/lib/mine/addLock/addLock/addLock_state.dart +++ b/star_lock/lib/mine/addLock/addLock/addLock_state.dart @@ -5,8 +5,8 @@ class AddLockState { var lockTypeImg = 'images/lockType/addLock_touchScreen.png'.obs; //不同类型锁图片更换 AddLockState() { - Map map = Get.arguments; - if (map.isNotEmpty) { + Map? map = Get.arguments; + if (map is Map && map.isNotEmpty) { if (map["getLockType"] != null) { getLockType.value = map["getLockType"]; //保险箱锁