更新一级睡眠报告页面
This commit is contained in:
@@ -9,6 +9,7 @@ import 'package:vbvs_app/common/color/app_uri_status.dart';
|
||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||
import 'package:vbvs_app/common/util/requestWithLog.dart';
|
||||
import 'package:vbvs_app/component/NullDataComponentWidget.dart';
|
||||
import 'package:vbvs_app/component/tool/ClickableContainer.dart';
|
||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||
import 'package:vbvs_app/controller/date/CalendarController.dart';
|
||||
@@ -19,10 +20,8 @@ import 'package:vbvs_app/pages/common/selectDialog.dart';
|
||||
import 'package:vbvs_app/pages/main_bottom/component/main_page_b_bottom_change.dart';
|
||||
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/component/SleepScoreWidget.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/component/SleepView.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/component/Vital_signs.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/component/new_sleep_view.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/new_sleep_report_page.dart';
|
||||
|
||||
class MhtSleepReportPage extends StatefulWidget {
|
||||
const MhtSleepReportPage({super.key});
|
||||
@@ -41,6 +40,7 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
final RxBool isRightLimit = false.obs;
|
||||
var formFieldController = FormFieldController<String>(null);
|
||||
var personInfo = {}.obs;
|
||||
Rx<bool> isLoading = false.obs;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
@@ -332,6 +332,9 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
}
|
||||
}).toList(),
|
||||
onChanged: (val) {
|
||||
sleepReportController
|
||||
.sleepReport
|
||||
.value = {};
|
||||
final list =
|
||||
deviceController
|
||||
.personnelList
|
||||
@@ -363,9 +366,15 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
.value =
|
||||
formFieldController
|
||||
.value!;
|
||||
deviceController.getSleeps(
|
||||
formFieldController
|
||||
.value);
|
||||
// deviceController.getSleeps(
|
||||
// formFieldController
|
||||
// .value);
|
||||
String data =
|
||||
MyUtils.formatDate(
|
||||
calendarController
|
||||
.selectedDate
|
||||
.value!);
|
||||
loadSleepReport(data);
|
||||
homeController
|
||||
.updateAll();
|
||||
}
|
||||
@@ -469,45 +478,58 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
}),
|
||||
|
||||
Obx(() {
|
||||
if (homeController.selectDevcie.value != null &&
|
||||
if (userInfoController.model.login! == null ||
|
||||
userInfoController.model.login! == 0 ||
|
||||
deviceController.personnelList.value.isEmpty) {
|
||||
return Container();
|
||||
}
|
||||
final bool hasValidData = homeController
|
||||
.selectDevcie.value !=
|
||||
null &&
|
||||
homeController.selectDevcie.value!.isNotEmpty &&
|
||||
deviceController.personnelList.value.isNotEmpty &&
|
||||
sleepReportController.sleepReport.value != null) {
|
||||
return Expanded(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
getTimeWidget(),
|
||||
SleepScoreWidget(
|
||||
sleepReport:
|
||||
sleepReportController.sleepReport.value,
|
||||
showLabelWrap: false,
|
||||
),
|
||||
NewSleepViewWidget(
|
||||
sleepReport:
|
||||
sleepReportController.sleepReport.value),
|
||||
SizedBox(height: 25.rpx),
|
||||
VitalSignsWidget(
|
||||
sleepReport:
|
||||
sleepReportController.sleepReport.value)
|
||||
],
|
||||
sleepReportController.sleepReport.value != null &&
|
||||
sleepReportController.sleepReport.value.isNotEmpty;
|
||||
|
||||
// child: NewSleepReportPage(
|
||||
// data: {
|
||||
// "tag": "123",
|
||||
// 'date': DateTime.now().millisecondsSinceEpoch,
|
||||
// 'mac'.tr: homeController.selectDevcie.value,
|
||||
// 'person': homeController.selectPerson.value,
|
||||
// 'backgroundImg':
|
||||
// 'assets/images/new_background.png',
|
||||
// 'arrow': false,
|
||||
// 'noBackImg': true,
|
||||
// 'person_show': false,
|
||||
// },
|
||||
// ),
|
||||
)));
|
||||
}
|
||||
return Container();
|
||||
return Expanded(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
getTimeWidget(), // 始终显示
|
||||
isLoading.value
|
||||
? Padding(
|
||||
padding: EdgeInsets.fromLTRB(
|
||||
0, 30.rpx, 0, 0),
|
||||
child: Center(
|
||||
child: CircularProgressIndicator()),
|
||||
)
|
||||
: hasValidData
|
||||
? Column(
|
||||
children: [
|
||||
SleepScoreWidget(
|
||||
sleepReport:
|
||||
sleepReportController
|
||||
.sleepReport.value,
|
||||
showLabelWrap: false,
|
||||
),
|
||||
NewSleepViewWidget(
|
||||
sleepReport:
|
||||
sleepReportController
|
||||
.sleepReport.value,
|
||||
),
|
||||
SizedBox(height: 25.rpx),
|
||||
VitalSignsWidget(
|
||||
sleepReport:
|
||||
sleepReportController
|
||||
.sleepReport.value,
|
||||
),
|
||||
],
|
||||
)
|
||||
: NullDataWidget(), // 无数据时
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}),
|
||||
],
|
||||
);
|
||||
@@ -636,17 +658,20 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
}
|
||||
|
||||
void loadSleepReport(String data) {
|
||||
isLoading.value = true;
|
||||
requestWithLog(
|
||||
logTitle: "查询睡眠报告",
|
||||
method: MyHttpMethod.get,
|
||||
queryUrl:
|
||||
"https://sleepdata.he-info.com/api/analysis/sleep/analysis?mac=${homeController.selectDevcie.value}&time=${data}&type=${sleepReportController.model.type}",
|
||||
onSuccess: (res) {
|
||||
isLoading.value = false;
|
||||
print(res);
|
||||
sleepReportController.sleepReport.value = res.data;
|
||||
sleepReportController.updateAll();
|
||||
},
|
||||
onFailure: (res) {
|
||||
isLoading.value = false;
|
||||
if (MainPageBBottomChange.getCurrentIndex() != null) {
|
||||
if (MainPageBBottomChange.getCurrentIndex() == 1) {
|
||||
TopSlideNotification.show(context,
|
||||
|
||||
@@ -632,9 +632,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
||||
personInfo
|
||||
.value,
|
||||
'backgroundImg':
|
||||
'assets/images/new_background.png',
|
||||
'date':
|
||||
timeMillis,
|
||||
'assets/images/new_background.png',
|
||||
// 'backgroundColor':stringToColor("#003058"),
|
||||
'person_show':
|
||||
false,
|
||||
|
||||
Reference in New Issue
Block a user