更新打鼾图显示
This commit is contained in:
@@ -37,18 +37,18 @@ class _SnoreViewWidgetWidgetState extends State<BreathePauseNewWidget> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
try {
|
||||
if (widget.sleepReport == null ||
|
||||
widget.sleepReport is! Map ||
|
||||
widget.sleepReport.isEmpty) {
|
||||
return Container();
|
||||
if (APPPackageType.TH.code == AppConstants().ent_type) {
|
||||
if (widget.sleepReport == null ||
|
||||
widget.sleepReport is! Map ||
|
||||
widget.sleepReport.isEmpty) {
|
||||
return Container();
|
||||
}
|
||||
}
|
||||
|
||||
List standard = widget.sleepReport['brs'] ?? [];
|
||||
final Map? result = standard.cast<Map>().firstWhere(
|
||||
(element) => element['id'] == 302,
|
||||
orElse: () => <dynamic, dynamic>{},
|
||||
);
|
||||
|
||||
int threshold = 0;
|
||||
if (result != null && result.isNotEmpty) {
|
||||
final rangeValue = result['range'];
|
||||
@@ -58,16 +58,8 @@ class _SnoreViewWidgetWidgetState extends State<BreathePauseNewWidget> {
|
||||
threshold = int.tryParse(rangeValue) ?? 0;
|
||||
}
|
||||
}
|
||||
|
||||
List<Map<String, dynamic>> data =
|
||||
(widget.sleepReport['asp'] as List).cast<Map<String, dynamic>>();
|
||||
// data = [
|
||||
// {"st": 1763494195669, "value": 11},
|
||||
// {"st": 1763494278485, "value": 18},
|
||||
// {"st": 1763494293453, "value": 18},
|
||||
// {"st": 1763494352321, "value": 14},
|
||||
// {"st": 1763494606757, "value": 12}
|
||||
// ];
|
||||
List<Map<String, dynamic>> showLabel = convertToShowLabel(data);
|
||||
double maxTimes = 70;
|
||||
try {
|
||||
|
||||
@@ -53,7 +53,7 @@ Widget DailyDataWidget(
|
||||
sleepReport: sleepReport,
|
||||
highlightItem: data['itemName'],
|
||||
),
|
||||
// SnoreViewWidgetWidget(sleepReport: sleepReport),
|
||||
SnoreViewWidgetWidget(sleepReport: sleepReport),
|
||||
BreathePauseNewWidget(sleepReport: sleepReport),
|
||||
HeartHealthWidget(sleepReport: sleepReport),
|
||||
DiseasePercentsWidget(sleepReport: sleepReport),
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import 'dart:math';
|
||||
|
||||
import 'package:EasyDartModule/EasyDartModule.dart' as es;
|
||||
import 'package:ef/ef.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
@@ -10,7 +8,6 @@ import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
||||
import 'package:vbvs_app/enum/APPPackageType.dart';
|
||||
import 'package:vbvs_app/pages/device_bind/componnet/bind_dialog.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/chart/LineChartByRange.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/chart/SnoreChart.dart';
|
||||
|
||||
class SnoreViewWidgetWidget extends StatefulWidget {
|
||||
@@ -45,7 +42,10 @@ class _SnoreViewWidgetWidgetState extends State<SnoreViewWidgetWidget> {
|
||||
widget.sleepReport.isEmpty) {
|
||||
return Container();
|
||||
}
|
||||
double maxY = 70;
|
||||
// if (APPPackageType.TH.code == AppConstants().ent_type) {
|
||||
// return Container();
|
||||
// }
|
||||
double maxY = 250;
|
||||
var startTime = widget.sleepReport['startTime'];
|
||||
var endTime = widget.sleepReport['endTime'];
|
||||
List snoreValues = [];
|
||||
@@ -54,6 +54,35 @@ class _SnoreViewWidgetWidgetState extends State<SnoreViewWidgetWidget> {
|
||||
List lightSnore = widget.sleepReport['ssp']['data'][0];
|
||||
List heavySnore = widget.sleepReport['ssp']['data'][1];
|
||||
|
||||
// lightSnore = [
|
||||
// ...lightSnore,
|
||||
// {
|
||||
// 'st': widget.sleepReport['startTime'] + 2 * 60 * 60 * 1000, // 开始后2小时
|
||||
// 'et': widget.sleepReport['startTime'] + 2 * 60 * 65 * 1000, // 持续5分钟
|
||||
// 'value': 25,
|
||||
// },
|
||||
// {
|
||||
// 'st': widget.sleepReport['startTime'] + 4 * 60 * 60 * 1000, // 开始后4小时
|
||||
// 'et': widget.sleepReport['startTime'] + 4 * 60 * 68 * 1000, // 持续8分钟
|
||||
// 'value': 18,
|
||||
// }
|
||||
// ];
|
||||
|
||||
// // 添加模拟数据到重度打鼾列表
|
||||
// heavySnore = [
|
||||
// ...heavySnore,
|
||||
// {
|
||||
// 'st': widget.sleepReport['startTime'] + 3 * 60 * 60 * 1000, // 开始后3小时
|
||||
// 'et': widget.sleepReport['startTime'] + 3 * 60 * 62 * 1000, // 持续2分钟
|
||||
// 'value': 68,
|
||||
// },
|
||||
// {
|
||||
// 'st': widget.sleepReport['startTime'] + 5 * 60 * 60 * 1000, // 开始后5小时
|
||||
// 'et': widget.sleepReport['startTime'] + 5 * 60 * 64 * 1000, // 持续4分钟
|
||||
// 'value': 72,
|
||||
// }
|
||||
// ];
|
||||
|
||||
List<Map> processedLightSnore = lightSnore.map((item) {
|
||||
return {
|
||||
...item,
|
||||
@@ -202,7 +231,7 @@ class _SnoreViewWidgetWidgetState extends State<SnoreViewWidgetWidget> {
|
||||
startTime: startTime,
|
||||
endTime: endTime,
|
||||
maxYValue: maxY, // 最大值可自定义
|
||||
yStepCount: 7, // 分4段(0, 5, 10, 15, 20)
|
||||
yStepCount: 3, // 分4段(0, 5, 10, 15, 20)
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
|
||||
Reference in New Issue
Block a user