Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -6,7 +6,6 @@ import 'package:flutterflow_ui/flutterflow_ui.dart';
|
||||
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/component/NullDataComponentWidget.dart';
|
||||
import 'package:vbvs_app/controller/user_info_controller.dart';
|
||||
import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart';
|
||||
import 'package:vbvs_app/pages/sleep_report/new_sleep_report_page.dart';
|
||||
@@ -56,28 +55,38 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
child: Stack(
|
||||
children: [
|
||||
// Background Container
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image: AssetImage((userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1)
|
||||
? 'assets/images/new_background.png'
|
||||
: "assets/images/noLoginSleep.jpg"),
|
||||
fit: BoxFit.fill,
|
||||
),
|
||||
),
|
||||
),
|
||||
// Blur overlay when not logged in
|
||||
if (userInfoController.model.login == null ||
|
||||
userInfoController.model.login != 1)
|
||||
Positioned.fill(
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 5.0, sigmaY: 5.0),
|
||||
child: Container(
|
||||
color: Colors.black.withOpacity(0.5),
|
||||
Obx(() {
|
||||
return Container(
|
||||
decoration: BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image: AssetImage((userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1 &&
|
||||
deviceController.personnelList.value.isNotEmpty)
|
||||
? 'assets/images/new_background.png'
|
||||
: "assets/images/noLoginSleep.jpg"),
|
||||
fit: BoxFit.fill,
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}),
|
||||
Obx(() {
|
||||
bool showBlur = userInfoController.model.login == null ||
|
||||
userInfoController.model.login != 1 ||
|
||||
(userInfoController.model.login == 1 &&
|
||||
deviceController.personnelList.isEmpty);
|
||||
|
||||
return showBlur
|
||||
? Positioned.fill(
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 5.0, sigmaY: 5.0),
|
||||
child: Container(
|
||||
color: Colors.black.withOpacity(0.5),
|
||||
),
|
||||
),
|
||||
)
|
||||
: const SizedBox.shrink(); // 不显示时返回空组件
|
||||
}),
|
||||
|
||||
// Main content
|
||||
Scaffold(
|
||||
backgroundColor: Colors.transparent,
|
||||
@@ -85,84 +94,137 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
child: Container(
|
||||
width: MediaQuery.sizeOf(context).width,
|
||||
height: MediaQuery.sizeOf(context).height,
|
||||
child: Column(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment: (userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1)
|
||||
? MainAxisAlignment.start
|
||||
: MainAxisAlignment.center,
|
||||
children: [
|
||||
//未登录
|
||||
Obx(() {
|
||||
if (userInfoController.model.login! == null ||
|
||||
userInfoController.model.login! == 0) {
|
||||
return Center(
|
||||
child: InkWell(
|
||||
onTap: () => Get.toNamed("/loginPage"),
|
||||
child: RichText(
|
||||
text: TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text: "请先".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
child: Obx(() {
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.max,
|
||||
mainAxisAlignment:
|
||||
(userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1 &&
|
||||
deviceController.personnelList.value.isNotEmpty)
|
||||
? MainAxisAlignment.start
|
||||
: MainAxisAlignment.center,
|
||||
children: [
|
||||
//未登录或已登录但未绑定设备
|
||||
Obx(() {
|
||||
if (userInfoController.model.login! == null ||
|
||||
userInfoController.model.login! == 0) {
|
||||
return Center(
|
||||
child: InkWell(
|
||||
onTap: () => Get.toNamed("/loginPage"),
|
||||
child: RichText(
|
||||
text: TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text: "请先".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
),
|
||||
WidgetSpan(
|
||||
child: Stack(
|
||||
children: [
|
||||
Text(
|
||||
"登录".tr,
|
||||
style: TextStyle(
|
||||
color: stringToColor("#84F5FF"),
|
||||
fontSize: 30.rpx,
|
||||
WidgetSpan(
|
||||
child: Stack(
|
||||
children: [
|
||||
Text(
|
||||
"登录".tr,
|
||||
style: TextStyle(
|
||||
color: stringToColor("#84F5FF"),
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
bottom: 0,
|
||||
left: 0,
|
||||
right: 0,
|
||||
child: Container(
|
||||
height: 1,
|
||||
color: stringToColor("#84F5FF"),
|
||||
Positioned(
|
||||
bottom: 0,
|
||||
left: 0,
|
||||
right: 0,
|
||||
child: Container(
|
||||
height: 1,
|
||||
color: stringToColor("#84F5FF"),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: "后,再查看睡眠报告".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
TextSpan(
|
||||
text: "后,再查看睡眠报告".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
return Container();
|
||||
}),
|
||||
//已登录
|
||||
Obx(() {
|
||||
if (userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1) {
|
||||
final list = deviceController.personnelList.value;
|
||||
if (list.isNotEmpty) {
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
formFieldController.value = list[0]["mac".tr];
|
||||
personInfo.value = list[0];
|
||||
homeController.selectPerson.value = list[0];
|
||||
homeController.selectDevcie.value = list[0]["mac".tr];
|
||||
deviceController
|
||||
.getSleeps(formFieldController.value);
|
||||
homeController.updateAll();
|
||||
});
|
||||
);
|
||||
} else if (userInfoController.model.login == 1 &&
|
||||
deviceController.personnelList.value.isEmpty) {
|
||||
return Center(
|
||||
child: InkWell(
|
||||
onTap: () => Get.toNamed("/mHTDeviceTypePage"),
|
||||
child: RichText(
|
||||
text: TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text: "请先".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
WidgetSpan(
|
||||
child: Stack(
|
||||
children: [
|
||||
Text(
|
||||
"绑定设备".tr,
|
||||
style: TextStyle(
|
||||
color: stringToColor("#84F5FF"),
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
bottom: 0,
|
||||
left: 0,
|
||||
right: 0,
|
||||
child: Container(
|
||||
height: 1,
|
||||
color: stringToColor("#84F5FF"),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: "后,再查看睡眠报告".tr,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 30.rpx,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
if (homeController.personnelList.value.length != 0)
|
||||
return Container();
|
||||
}),
|
||||
//已登录且已绑定设备
|
||||
Obx(() {
|
||||
if (userInfoController.model.login! != null &&
|
||||
userInfoController.model.login! == 1 &&
|
||||
deviceController.personnelList.value.isNotEmpty) {
|
||||
final list = deviceController.personnelList.value;
|
||||
if (list.isNotEmpty) {
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
formFieldController.value = list[0]["mac".tr];
|
||||
personInfo.value = list[0];
|
||||
homeController.selectPerson.value = list[0];
|
||||
homeController.selectDevcie.value =
|
||||
list[0]["mac".tr];
|
||||
deviceController
|
||||
.getSleeps(formFieldController.value);
|
||||
homeController.updateAll();
|
||||
});
|
||||
}
|
||||
return Padding(
|
||||
padding: EdgeInsetsDirectional.fromSTEB(
|
||||
0.rpx, 40.rpx, 30.rpx, 10.rpx),
|
||||
@@ -235,8 +297,8 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
deviceController
|
||||
.personnelList.value
|
||||
.map<String>((d) {
|
||||
var s =
|
||||
d["name"] ?? d["mac".tr];
|
||||
var s = d["name"] ??
|
||||
d["mac".tr];
|
||||
if (s == null) {
|
||||
return "";
|
||||
} else {
|
||||
@@ -326,36 +388,34 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
if (userInfoController.model.login != null &&
|
||||
userInfoController.model.login == 1)
|
||||
return Expanded(child: NullDataWidget());
|
||||
return Container();
|
||||
}),
|
||||
}
|
||||
return Container();
|
||||
}),
|
||||
|
||||
Obx(() {
|
||||
if (homeController.selectDevcie.value != null &&
|
||||
homeController.selectDevcie.value!.isNotEmpty &&
|
||||
deviceController.personnelList.value.isNotEmpty)
|
||||
return Expanded(
|
||||
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();
|
||||
}),
|
||||
],
|
||||
),
|
||||
Obx(() {
|
||||
if (homeController.selectDevcie.value != null &&
|
||||
homeController.selectDevcie.value!.isNotEmpty &&
|
||||
deviceController.personnelList.value.isNotEmpty)
|
||||
return Expanded(
|
||||
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();
|
||||
}),
|
||||
],
|
||||
);
|
||||
}),
|
||||
),
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user