diff --git a/lib/component/home_page/SleepDataModuleWidget.dart b/lib/component/home_page/SleepDataModuleWidget.dart index f7af553..d1699b9 100644 --- a/lib/component/home_page/SleepDataModuleWidget.dart +++ b/lib/component/home_page/SleepDataModuleWidget.dart @@ -12,8 +12,13 @@ import 'package:vbvs_app/pages/device_bind/componnet/bind_dialog.dart'; class SleepDataModuleWidget extends StatefulWidget { final Map data; + final dynamic sleepReportData; // 可选参数,类型为 var/dynamic - const SleepDataModuleWidget({super.key, required this.data}); + const SleepDataModuleWidget({ + super.key, + required this.data, + this.sleepReportData, // 标记为可选参数 + }); @override State createState() => _SleepDataModuleWidgetState(); @@ -47,16 +52,17 @@ class _SleepDataModuleWidgetState extends State { if (widget.data['showTip'] != null && widget.data['showTip'] == true) { final String itemLevel = widget.data['code'] ?? ''; SleepReportController sleepReportController = Get.find(); - var report = sleepReportController.sleepReport; List> levelGroups = []; - + if (widget.sleepReportData != null) { + report = widget.sleepReportData; + } if (report != null) { var colorMap = Map.from(report.value['info']['color']); var levelMap = Map.from(report.value['info']['level']); - //修改渲染等级顺序 + //修改渲染 for (var prefix in ['G', 'Y', 'R']) { List keys = colorMap.keys.where((k) => k.startsWith(prefix)).toList(); diff --git a/lib/pages/sleep_report/component/SleepCard.dart b/lib/pages/sleep_report/component/SleepCard.dart index 87746b1..4395bc2 100644 --- a/lib/pages/sleep_report/component/SleepCard.dart +++ b/lib/pages/sleep_report/component/SleepCard.dart @@ -124,7 +124,7 @@ class _SleepCardState extends State with TickerProviderStateMixin { borderRadius: BorderRadius.circular(8), ) : null, - child: SleepDataModuleWidget(data: item), + child: SleepDataModuleWidget(data: item,sleepReportData: widget.sleepReport,), ); }, ),