From 630ca867cd1e6c0e844fa9df2691443bf5391bf1 Mon Sep 17 00:00:00 2001 From: GeJiaXiang <353358601@qq.com> Date: Sun, 25 Feb 2024 16:11:37 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=8F=A3=E5=91=B3=F0=9F=98=8B:=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0vscode=E8=BF=90=E8=A1=8C=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- star_lock/.vscode/launch.json | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/star_lock/.vscode/launch.json b/star_lock/.vscode/launch.json index 79fa3bcd..339bea8e 100644 --- a/star_lock/.vscode/launch.json +++ b/star_lock/.vscode/launch.json @@ -1,25 +1 @@ -{ - // 使用 IntelliSense 了解相关属性。 - // 悬停以查看现有属性的描述。 - // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "star_lock", - "request": "launch", - "type": "dart" - }, - { - "name": "star_lock (profile mode)", - "request": "launch", - "type": "dart", - "flutterMode": "profile" - }, - { - "name": "star_lock (release mode)", - "request": "launch", - "type": "dart", - "flutterMode": "release" - } - ] -} \ No newline at end of file +{"version":"0.2.0","configurations":[{"name":"dev Debug","request":"launch","type":"dart","flutterMode":"debug","args":["--flavor","dev"],"program":"lib/main_dev.dart"},{"name":"dev Profile","request":"launch","type":"dart","flutterMode":"profile","args":["--flavor","dev"],"program":"lib/main_dev.dart"},{"name":"dev Release","request":"launch","type":"dart","flutterMode":"release","args":["--flavor","dev"],"program":"lib/main_dev.dart"},{"name":"pre Debug","request":"launch","type":"dart","flutterMode":"debug","args":["--flavor","pre"],"program":"lib/main_pre.dart"},{"name":"pre Profile","request":"launch","type":"dart","flutterMode":"profile","args":["--flavor","pre"],"program":"lib/main_pre.dart"},{"name":"pre Release","request":"launch","type":"dart","flutterMode":"release","args":["--flavor","pre"],"program":"lib/main_pre.dart"},{"name":"sky Debug","request":"launch","type":"dart","flutterMode":"debug","args":["--flavor","sky"],"program":"lib/main_sky.dart"},{"name":"sky Profile","request":"launch","type":"dart","flutterMode":"profile","args":["--flavor","sky"],"program":"lib/main_sky.dart"},{"name":"sky Release","request":"launch","type":"dart","flutterMode":"release","args":["--flavor","sky"],"program":"lib/main_sky.dart"},{"name":"xhj Debug","request":"launch","type":"dart","flutterMode":"debug","args":["--flavor","xhj"],"program":"lib/main_xhj.dart"},{"name":"xhj Profile","request":"launch","type":"dart","flutterMode":"profile","args":["--flavor","xhj"],"program":"lib/main_xhj.dart"},{"name":"xhj Release","request":"launch","type":"dart","flutterMode":"release","args":["--flavor","xhj"],"program":"lib/main_xhj.dart"}]} \ No newline at end of file From 1e8cbfb57838e5ca938e386aa930012688237667 Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Sun, 25 Feb 2024 16:13:11 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=97=A8=E9=94=81?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E7=9B=B8=E5=85=B3=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ios/Runner.xcodeproj/project.pbxproj | 20 +++++-- .../doorLockLog/doorLockLog_logic.dart | 52 +++++++++++++++---- .../doorLockLog/doorLockLog_page.dart | 21 ++++---- .../tools/advancedCalendar/src/week_days.dart | 3 ++ .../tools/advancedCalendar/src/widget.dart | 3 ++ star_lock/lib/tools/eventBusEventManage.dart | 6 +++ 6 files changed, 80 insertions(+), 25 deletions(-) diff --git a/star_lock/ios/Runner.xcodeproj/project.pbxproj b/star_lock/ios/Runner.xcodeproj/project.pbxproj index ee0de8e8..948be51b 100644 --- a/star_lock/ios/Runner.xcodeproj/project.pbxproj +++ b/star_lock/ios/Runner.xcodeproj/project.pbxproj @@ -459,7 +459,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -695,8 +695,11 @@ isa = XCBuildConfiguration; baseConfigurationReference = D28DFC3BEA6D46B5F5B5E55F /* Pods-Runner.debug-dev.xcconfig */; buildSettings = { - DEVELOPMENT_TEAM = SF86QP26TZ; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -708,7 +711,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 6285D102821F3D2FB7B09E43 /* Pods-Runner.profile-dev.xcconfig */; buildSettings = { - DEVELOPMENT_TEAM = SF86QP26TZ; + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -721,6 +724,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 295A8AFEEC4806105FAA13B5 /* Pods-Runner.release-dev.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -733,6 +737,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 51086737647B9B5E510020C6 /* Pods-Runner.debug-pre.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -745,7 +750,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = D001CDA3D7BF065A0C6E3B64 /* Pods-Runner.profile-pre.xcconfig */; buildSettings = { - DEVELOPMENT_TEAM = SF86QP26TZ; + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -758,6 +763,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 68C41ACED6A779BAAA0A51A7 /* Pods-Runner.release-pre.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -770,6 +776,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 4A63B2C308CB401731950EC8 /* Pods-Runner.debug-sky.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -782,6 +789,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 8CD96970DEA44F6CC71DEECE /* Pods-Runner.profile-sky.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -794,6 +802,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -806,6 +815,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -818,6 +828,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = D62237D2D011BDC27FB2BC28 /* Pods-Runner.profile-xhj.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; @@ -830,6 +841,7 @@ isa = XCBuildConfiguration; baseConfigurationReference = CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */; buildSettings = { + DEVELOPMENT_TEAM = 7D53BZAN75; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; diff --git a/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_logic.dart b/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_logic.dart index bdff308d..757b05f8 100644 --- a/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_logic.dart +++ b/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_logic.dart @@ -4,6 +4,7 @@ import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_reactive_ble/flutter_reactive_ble.dart'; import 'package:star_lock/main/lockDetail/doorLockLog/doorLockLog_state.dart'; import 'package:star_lock/main/lockDetail/lockOperatingRecord/lockOperatingRecordGetLastRecordTime_entity.dart'; +import 'package:star_lock/tools/eventBusEventManage.dart'; import '../../../blue/blue_manage.dart'; import '../../../blue/io_protocol/io_referEventRecordTime.dart'; @@ -100,7 +101,7 @@ class DoorLockLogLogic extends BaseGetXController { uploadList.add(indexMap); } lockRecordUploadData(uploadList); - // print("reply.data:${reply.data} getList:$getList}"); + print("reply.data:${reply.data} getList:$getList}"); } break; case 0x06: @@ -198,6 +199,28 @@ class DoorLockLogLogic extends BaseGetXController { } else {} } + /// 刷新门锁日志列表 + StreamSubscription? _getDoorLockLogListRefreshUIEvent; + void _getDoorLockLogListRefreshUIAction() { + _getDoorLockLogListRefreshUIEvent = + eventBus.on().listen((event) { +// 设置startDate为当天的0点 + state.startDate.value = DateTime(event.getDoorLockLogTime.year, + event.getDoorLockLogTime.month, event.getDoorLockLogTime.day) + .millisecondsSinceEpoch; +// 设置endDate为下一天的0点,然后减去1毫秒 + state.endDate.value = (DateTime( + event.getDoorLockLogTime.year, + event.getDoorLockLogTime.month, + event.getDoorLockLogTime.day + 1) + .subtract(const Duration(milliseconds: 1))) + .millisecondsSinceEpoch; + + pageNo = 1; + mockNetworkDataRequest(); + }); + } + // 查询锁记录最后时间 void getLockRecordLastUploadDataTime() async { LockOperatingRecordGetLastRecordTimeEntity entity = await ApiRepository.to @@ -236,12 +259,11 @@ class DoorLockLogLogic extends BaseGetXController { // 获取是否是演示模式 演示模式不获取接口 var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); if (isDemoMode == false) { - // _initReplySubscription(); + _initReplySubscription(); - // mockNetworkDataRequest(); + mockNetworkDataRequest(); + _getDoorLockLogListRefreshUIAction(); } - - mockNetworkDataRequest(); } @override @@ -257,6 +279,15 @@ class DoorLockLogLogic extends BaseGetXController { // senderReferEventRecordTime(); // senderReferEventRecordNumber(); } + + DateTime now = DateTime.now(); +// 设置startDate为当天的0点 + state.startDate.value = + DateTime(now.year, now.month, now.day).millisecondsSinceEpoch; +// 设置endDate为下一天的0点,然后减去1毫秒 + state.endDate.value = (DateTime(now.year, now.month, now.day + 1) + .subtract(const Duration(milliseconds: 1))) + .millisecondsSinceEpoch; } @override @@ -264,10 +295,11 @@ class DoorLockLogLogic extends BaseGetXController { // TODO: implement onClose super.onClose(); - // 获取是否是演示模式 演示模式不获取接口 - // var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); - // if (isDemoMode == false) { - // _replySubscription.cancel(); - // } + //获取是否是演示模式 演示模式不获取接口 + var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); + if (isDemoMode == false) { + _replySubscription.cancel(); + _getDoorLockLogListRefreshUIEvent?.cancel(); + } } } diff --git a/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_page.dart b/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_page.dart index 015a1935..b8a6e0dd 100644 --- a/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_page.dart +++ b/star_lock/lib/main/lockDetail/doorLockLog/doorLockLog_page.dart @@ -66,17 +66,15 @@ class _DoorLockLogPageState extends State { endIndent: 30.w, ), eventDropDownWidget(), - Expanded(child: timeLineView()) - // Expanded( - // // 添加 Expanded 来让 ListView 占据剩余的空间 - // child: ListView.builder( - // itemBuilder: (context, index) { - // // 返回你想要在 ListView 中显示的小部件 - // return timeLineView(); - // }, - // itemCount: 5, // 替换成你的列表项数量 - // ), - // ), + // Expanded(child: timeLineView()) + Expanded( + child: ListView.builder( + itemBuilder: (context, index) { + return timeLineView(); + }, + itemCount: state.lockOperatingRecordListData.value.length, + ), + ), ], ), ); @@ -135,6 +133,7 @@ class _DoorLockLogPageState extends State { valueChanged: (value) { print('dropdownValue选中了$value'); state.dropdownValue.value = int.parse(value); + logic.mockNetworkDataRequest(); })), ], ), diff --git a/star_lock/lib/tools/advancedCalendar/src/week_days.dart b/star_lock/lib/tools/advancedCalendar/src/week_days.dart index e1f8ea87..280fcf95 100644 --- a/star_lock/lib/tools/advancedCalendar/src/week_days.dart +++ b/star_lock/lib/tools/advancedCalendar/src/week_days.dart @@ -28,6 +28,9 @@ class WeekDays extends StatelessWidget { children: List.generate(weekNames.length, (index) { return DateBox( child: Text(weekNames[index]), + onPressed: () { + print('****Week day $index pressed'); + }, ); }), ), diff --git a/star_lock/lib/tools/advancedCalendar/src/widget.dart b/star_lock/lib/tools/advancedCalendar/src/widget.dart index 0df0da71..4653c63b 100644 --- a/star_lock/lib/tools/advancedCalendar/src/widget.dart +++ b/star_lock/lib/tools/advancedCalendar/src/widget.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:intl/date_symbol_data_local.dart'; import 'package:intl/intl.dart'; +import 'package:star_lock/tools/eventBusEventManage.dart'; import 'controller.dart'; import 'datetime_util.dart'; @@ -231,6 +232,8 @@ class _AdvancedCalendarState extends State child: ValueListenableBuilder( valueListenable: _controller, builder: (_, selectedDate, __) { + print('****selectedDate: $selectedDate'); + eventBus.fire(DoorLockLogListRefreshUI(selectedDate)); return Stack( alignment: Alignment.center, children: [ diff --git a/star_lock/lib/tools/eventBusEventManage.dart b/star_lock/lib/tools/eventBusEventManage.dart index eac42f8b..98f34135 100644 --- a/star_lock/lib/tools/eventBusEventManage.dart +++ b/star_lock/lib/tools/eventBusEventManage.dart @@ -94,3 +94,9 @@ class ReadMessageRefreshUI { class ElectronicKeyListRefreshUI { ElectronicKeyListRefreshUI(); } + +/// 刷新门锁日志列表 +class DoorLockLogListRefreshUI { + DateTime getDoorLockLogTime; + DoorLockLogListRefreshUI(this.getDoorLockLogTime); +}