更新睡眠报告无法选中睡眠数据卡片
This commit is contained in:
@@ -12,8 +12,13 @@ import 'package:vbvs_app/pages/device_bind/componnet/bind_dialog.dart';
|
|||||||
|
|
||||||
class SleepDataModuleWidget extends StatefulWidget {
|
class SleepDataModuleWidget extends StatefulWidget {
|
||||||
final Map<String, dynamic> data;
|
final Map<String, dynamic> data;
|
||||||
|
final dynamic sleepReportData; // 可选参数,类型为 var/dynamic
|
||||||
|
|
||||||
const SleepDataModuleWidget({super.key, required this.data});
|
const SleepDataModuleWidget({
|
||||||
|
super.key,
|
||||||
|
required this.data,
|
||||||
|
this.sleepReportData, // 标记为可选参数
|
||||||
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
State<SleepDataModuleWidget> createState() => _SleepDataModuleWidgetState();
|
State<SleepDataModuleWidget> createState() => _SleepDataModuleWidgetState();
|
||||||
@@ -47,16 +52,17 @@ class _SleepDataModuleWidgetState extends State<SleepDataModuleWidget> {
|
|||||||
if (widget.data['showTip'] != null && widget.data['showTip'] == true) {
|
if (widget.data['showTip'] != null && widget.data['showTip'] == true) {
|
||||||
final String itemLevel = widget.data['code'] ?? '';
|
final String itemLevel = widget.data['code'] ?? '';
|
||||||
SleepReportController sleepReportController = Get.find();
|
SleepReportController sleepReportController = Get.find();
|
||||||
|
|
||||||
var report = sleepReportController.sleepReport;
|
var report = sleepReportController.sleepReport;
|
||||||
List<Map<String, dynamic>> levelGroups = [];
|
List<Map<String, dynamic>> levelGroups = [];
|
||||||
|
if (widget.sleepReportData != null) {
|
||||||
|
report = widget.sleepReportData;
|
||||||
|
}
|
||||||
if (report != null) {
|
if (report != null) {
|
||||||
var colorMap =
|
var colorMap =
|
||||||
Map<String, dynamic>.from(report.value['info']['color']);
|
Map<String, dynamic>.from(report.value['info']['color']);
|
||||||
var levelMap =
|
var levelMap =
|
||||||
Map<String, dynamic>.from(report.value['info']['level']);
|
Map<String, dynamic>.from(report.value['info']['level']);
|
||||||
//修改渲染等级顺序
|
//修改渲染
|
||||||
for (var prefix in ['G', 'Y', 'R']) {
|
for (var prefix in ['G', 'Y', 'R']) {
|
||||||
List<String> keys =
|
List<String> keys =
|
||||||
colorMap.keys.where((k) => k.startsWith(prefix)).toList();
|
colorMap.keys.where((k) => k.startsWith(prefix)).toList();
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ class _SleepCardState extends State<SleepCard> with TickerProviderStateMixin {
|
|||||||
borderRadius: BorderRadius.circular(8),
|
borderRadius: BorderRadius.circular(8),
|
||||||
)
|
)
|
||||||
: null,
|
: null,
|
||||||
child: SleepDataModuleWidget(data: item),
|
child: SleepDataModuleWidget(data: item,sleepReportData: widget.sleepReport,),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user