更新睡眠的心率基准图不显示
This commit is contained in:
Binary file not shown.
@@ -237,7 +237,7 @@ class _BodyDevicePageState extends State<BodyDeviceWidget> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -169,7 +169,6 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
print(res);
|
print(res);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -181,7 +180,7 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ class _DeviceDetailPageState extends State<DeviceDetailPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ class _InstantBodyPageState extends State<InstantBodyPage>
|
|||||||
|
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ class _MessageReviewPageState extends State<MessageReviewPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ class _AfterCalibrationPersonPageState
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ class _AfterUpdatePersonPageState extends State<AfterUpdatePersonPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class _AfterWifiPagePersonState extends State<AfterWifiPagePerson> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class _EPageState extends State<BindDeviceSuccess> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -271,7 +271,7 @@ class _BlueteethDevicePageState extends State<BlueteethDevicePage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -169,7 +169,6 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
print(res);
|
print(res);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -181,7 +180,7 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -442,7 +441,9 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
AppConstants().ent_type == 1? "APP消息介绍".tr:"打开“欢睡科技”APP,可以查看该设备的消息内容",
|
AppConstants().ent_type == 1
|
||||||
|
? "APP消息介绍".tr
|
||||||
|
: "打开“欢睡科技”APP,可以查看该设备的消息内容",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
@@ -548,7 +549,9 @@ class _MessageSettingPageState extends State<MessageSettingPage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
AppConstants().ent_type == 1? "服务号消息介绍".tr:"无需打开“欢睡科技”APP,关注欢睡智能睡眠研究所服务号后,微信内即可接收该设备消息推送",
|
AppConstants().ent_type == 1
|
||||||
|
? "服务号消息介绍".tr
|
||||||
|
: "无需打开“欢睡科技”APP,关注欢睡智能睡眠研究所服务号后,微信内即可接收该设备消息推送",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ class _CalibrationPageState extends State<CalibrationPage> {
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ class _CalibrationPageState extends State<CalibrationPage> {
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ class _CalibrationPersonPageState extends State<CalibrationPersonPage> {
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ class _DeviceShareListPageState extends State<DeviceShareListPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -175,8 +175,7 @@ class _DeviceShareListPageState extends State<DeviceShareListPage> {
|
|||||||
),
|
),
|
||||||
errorBorder: OutlineInputBorder(
|
errorBorder: OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Colors.white,
|
||||||
Colors.white,
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
@@ -185,8 +184,7 @@ class _DeviceShareListPageState extends State<DeviceShareListPage> {
|
|||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
OutlineInputBorder(
|
OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Colors.white,
|
||||||
Colors.white,
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ class _DeviceSharePageState extends State<DeviceSharePage> {
|
|||||||
RxBool flag2 = false.obs;
|
RxBool flag2 = false.obs;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -218,8 +218,7 @@ class _EPageState extends State<DeviceTypePage> {
|
|||||||
},
|
},
|
||||||
side: BorderSide(
|
side: BorderSide(
|
||||||
width: 1.5,
|
width: 1.5,
|
||||||
color:
|
color: Colors.white,
|
||||||
Colors.white,
|
|
||||||
),
|
),
|
||||||
activeColor:
|
activeColor:
|
||||||
stringToColor("#16C89F"),
|
stringToColor("#16C89F"),
|
||||||
@@ -295,7 +294,7 @@ class _EPageState extends State<DeviceTypePage> {
|
|||||||
}
|
}
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ class _DeviceTypeListPageState extends State<DeviceTypeListPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ class _WifiPageState extends State<WifiPage> {
|
|||||||
print("object");
|
print("object");
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -516,7 +516,9 @@ class _WifiPageState extends State<WifiPage> {
|
|||||||
),
|
),
|
||||||
filled:
|
filled:
|
||||||
false,
|
false,
|
||||||
fillColor: Colors.white,
|
fillColor:
|
||||||
|
Colors
|
||||||
|
.white,
|
||||||
suffixIcon:
|
suffixIcon:
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap:
|
onTap:
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class _WifiPagePersonState extends State<WifiPagePerson> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -459,7 +459,9 @@ class _WifiPagePersonState extends State<WifiPagePerson> {
|
|||||||
),
|
),
|
||||||
filled:
|
filled:
|
||||||
false,
|
false,
|
||||||
fillColor: Colors.white,
|
fillColor:
|
||||||
|
Colors
|
||||||
|
.white,
|
||||||
suffixIcon:
|
suffixIcon:
|
||||||
InkWell(
|
InkWell(
|
||||||
onTap:
|
onTap:
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -101,8 +101,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
body: SafeArea(
|
body: SafeArea(
|
||||||
top: true,
|
top: true,
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(75.rpx, 0.rpx, 75.rpx, 0),
|
||||||
EdgeInsetsDirectional.fromSTEB(75.rpx, 0.rpx, 75.rpx, 0),
|
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
@@ -116,8 +115,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
backgroundColor: Colors.transparent, // 容器背景色
|
backgroundColor: Colors.transparent, // 容器背景色
|
||||||
highlightColor:
|
highlightColor:
|
||||||
themeController.currentColor.sc21, // 点击时的背景色
|
themeController.currentColor.sc21, // 点击时的背景色
|
||||||
padding:
|
padding: EdgeInsets.zero, // 这里去掉外部的 padding,避免影响点击范围
|
||||||
EdgeInsets.zero, // 这里去掉外部的 padding,避免影响点击范围
|
|
||||||
onTap: () {
|
onTap: () {
|
||||||
Get.back();
|
Get.back();
|
||||||
},
|
},
|
||||||
@@ -156,8 +154,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontSize: 48.rpx,
|
fontSize: 48.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
//todo 颜色
|
//todo 颜色
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -181,8 +178,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
//todo 颜色
|
//todo 颜色
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -206,8 +202,7 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontSize: 48.rpx,
|
fontSize: 48.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
//todo 颜色
|
//todo 颜色
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -215,8 +210,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 35.rpx, 0, 0),
|
EdgeInsetsDirectional.fromSTEB(0, 35.rpx, 0, 0),
|
||||||
child: CustomCard(
|
child: CustomCard(
|
||||||
borderRadius: AppConstants()
|
borderRadius: AppConstants()
|
||||||
.button_container_radius, // 圆角半径
|
.button_container_radius, // 圆角半径
|
||||||
@@ -239,16 +234,15 @@ class _EPageState extends State<LoginPage> {
|
|||||||
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize.maxWidth,
|
width: bodysize.maxWidth,
|
||||||
height: MediaQuery.sizeOf(context).height *
|
height:
|
||||||
0.055,
|
MediaQuery.sizeOf(context).height * 0.055,
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
minWidth: 500.rpx,
|
minWidth: 500.rpx,
|
||||||
minHeight: 90.rpx,
|
minHeight: 90.rpx,
|
||||||
),
|
),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
MainAxisAlignment.center,
|
|
||||||
children: [
|
children: [
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Text(
|
child: Text(
|
||||||
@@ -256,8 +250,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
'登录页.本机号码一键登录/注册'.tr,
|
'登录页.本机号码一键登录/注册'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
//todo 颜色
|
//todo 颜色
|
||||||
color: themeController
|
color:
|
||||||
.currentColor.sc3,
|
themeController.currentColor.sc3,
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
.normal_text_fontSize,
|
.normal_text_fontSize,
|
||||||
@@ -279,8 +273,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
),
|
),
|
||||||
ClickableContainer(
|
ClickableContainer(
|
||||||
backgroundColor: Colors.transparent, // 容器背景色
|
backgroundColor: Colors.transparent, // 容器背景色
|
||||||
highlightColor: themeController
|
highlightColor:
|
||||||
.currentColor.sc21, // 点击时的背景色
|
themeController.currentColor.sc21, // 点击时的背景色
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
16.rpx, 10.rpx, 16.rpx, 10.rpx),
|
16.rpx, 10.rpx, 16.rpx, 10.rpx),
|
||||||
onTap: () {
|
onTap: () {
|
||||||
@@ -306,17 +300,14 @@ class _EPageState extends State<LoginPage> {
|
|||||||
decoration: BoxDecoration(),
|
decoration: BoxDecoration(),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
crossAxisAlignment:
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
CrossAxisAlignment.start,
|
|
||||||
children: [
|
children: [
|
||||||
Theme(
|
Theme(
|
||||||
data: ThemeData(
|
data: ThemeData(
|
||||||
checkboxTheme: CheckboxThemeData(
|
checkboxTheme: CheckboxThemeData(
|
||||||
visualDensity:
|
visualDensity: VisualDensity.compact,
|
||||||
VisualDensity.compact,
|
|
||||||
materialTapTargetSize:
|
materialTapTargetSize:
|
||||||
MaterialTapTargetSize
|
MaterialTapTargetSize.shrinkWrap,
|
||||||
.shrinkWrap,
|
|
||||||
shape: RoundedRectangleBorder(
|
shape: RoundedRectangleBorder(
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(64),
|
BorderRadius.circular(64),
|
||||||
@@ -344,16 +335,13 @@ class _EPageState extends State<LoginPage> {
|
|||||||
width: 1.5,
|
width: 1.5,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
),
|
),
|
||||||
activeColor:
|
activeColor: stringToColor("#FF9F66"),
|
||||||
stringToColor("#FF9F66"),
|
checkColor: Colors.white,
|
||||||
checkColor:
|
|
||||||
Colors.white,
|
|
||||||
),
|
),
|
||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
0.rpx, 10.rpx, 0.rpx, 0.rpx),
|
0.rpx, 10.rpx, 0.rpx, 0.rpx),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize.maxWidth,
|
width: bodysize.maxWidth,
|
||||||
@@ -380,8 +368,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -400,8 +388,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -420,8 +408,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -449,8 +437,8 @@ class _EPageState extends State<LoginPage> {
|
|||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 0, 0, 36.rpx),
|
EdgeInsetsDirectional.fromSTEB(0, 0, 0, 36.rpx),
|
||||||
child: Text(
|
child: Text(
|
||||||
'登录页.其他登录方式'.tr,
|
'登录页.其他登录方式'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
@@ -483,13 +471,11 @@ class _EPageState extends State<LoginPage> {
|
|||||||
TopSlideNotification.show(
|
TopSlideNotification.show(
|
||||||
context,
|
context,
|
||||||
text: "登录页.未同意协议".tr,
|
text: "登录页.未同意协议".tr,
|
||||||
textColor:
|
textColor: themeController.currentColor.sc9,
|
||||||
themeController.currentColor.sc9,
|
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await loginController
|
await loginController.wxLoginSendAuth(context);
|
||||||
.wxLoginSendAuth(context);
|
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 91.rpx,
|
width: 91.rpx,
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -113,8 +113,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
body: SafeArea(
|
body: SafeArea(
|
||||||
top: true,
|
top: true,
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(75.rpx, 0.rpx, 75.rpx, 0),
|
||||||
EdgeInsetsDirectional.fromSTEB(75.rpx, 0.rpx, 75.rpx, 0),
|
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
@@ -165,8 +164,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: 48.rpx,
|
fontSize: 48.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -189,8 +187,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -208,8 +205,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
borderRadius: BorderRadius.circular(
|
borderRadius: BorderRadius.circular(
|
||||||
AppConstants()
|
AppConstants().button_container_radius),
|
||||||
.button_container_radius),
|
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
color: themeController.currentColor.sc4
|
color: themeController.currentColor.sc4
|
||||||
.withOpacity(0.5),
|
.withOpacity(0.5),
|
||||||
@@ -234,8 +230,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
AlignmentDirectional(-1, 0),
|
AlignmentDirectional(-1, 0),
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
loginController
|
loginController.model.phone =
|
||||||
.model.phone = value;
|
value;
|
||||||
},
|
},
|
||||||
autofocus: false,
|
autofocus: false,
|
||||||
obscureText: false,
|
obscureText: false,
|
||||||
@@ -257,8 +253,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
enabledBorder:
|
enabledBorder:
|
||||||
OutlineInputBorder(
|
OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Color(0x00000000),
|
||||||
Color(0x00000000),
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
@@ -268,16 +263,14 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
focusedBorder:
|
focusedBorder:
|
||||||
OutlineInputBorder(
|
OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Color(0x00000000),
|
||||||
Color(0x00000000),
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(
|
BorderRadius.circular(
|
||||||
8.rpx),
|
8.rpx),
|
||||||
),
|
),
|
||||||
errorBorder:
|
errorBorder: OutlineInputBorder(
|
||||||
OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color: Colors.red,
|
color: Colors.red,
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
@@ -332,8 +325,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
borderRadius: BorderRadius.circular(
|
borderRadius: BorderRadius.circular(
|
||||||
AppConstants()
|
AppConstants().button_container_radius),
|
||||||
.button_container_radius),
|
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
color: themeController.currentColor.sc4
|
color: themeController.currentColor.sc4
|
||||||
.withOpacity(0.5),
|
.withOpacity(0.5),
|
||||||
@@ -370,8 +362,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
),
|
),
|
||||||
hintText:
|
hintText: '其他手机登录页.输入验证码'.tr,
|
||||||
'其他手机登录页.输入验证码'.tr,
|
|
||||||
hintStyle: TextStyle(
|
hintStyle: TextStyle(
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
@@ -382,8 +373,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
enabledBorder:
|
enabledBorder:
|
||||||
OutlineInputBorder(
|
OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Color(0x00000000),
|
||||||
Color(0x00000000),
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
@@ -393,16 +383,14 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
focusedBorder:
|
focusedBorder:
|
||||||
OutlineInputBorder(
|
OutlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color:
|
color: Color(0x00000000),
|
||||||
Color(0x00000000),
|
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(
|
BorderRadius.circular(
|
||||||
8.rpx),
|
8.rpx),
|
||||||
),
|
),
|
||||||
errorBorder:
|
errorBorder: OutlineInputBorder(
|
||||||
OutlineInputBorder(
|
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color: Colors.red,
|
color: Colors.red,
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
@@ -422,8 +410,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
8.rpx),
|
8.rpx),
|
||||||
),
|
),
|
||||||
filled: true,
|
filled: true,
|
||||||
fillColor:
|
fillColor: Colors.transparent,
|
||||||
Colors.transparent,
|
|
||||||
),
|
),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
@@ -442,8 +429,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
26.rpx, 0, 0, 0),
|
26.rpx, 0, 0, 0),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
@@ -467,46 +453,36 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
DailyLogUtils.writeLog(
|
DailyLogUtils.writeLog(
|
||||||
"点击获取验证码");
|
"点击获取验证码");
|
||||||
if (countdownController
|
if (countdownController
|
||||||
.countdown
|
.countdown.value !=
|
||||||
.value !=
|
|
||||||
0) {
|
0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ApiResponse
|
ApiResponse apiResponse =
|
||||||
apiResponse =
|
|
||||||
await loginController
|
await loginController
|
||||||
.getCode(
|
.getCode(context);
|
||||||
context);
|
|
||||||
if (apiResponse.code !=
|
if (apiResponse.code !=
|
||||||
HttpStatusCodes
|
HttpStatusCodes.ok) {
|
||||||
.ok) {
|
TopSlideNotification.show(
|
||||||
TopSlideNotification
|
|
||||||
.show(
|
|
||||||
context,
|
context,
|
||||||
text: apiResponse
|
text: apiResponse.msg!,
|
||||||
.msg!,
|
|
||||||
textColor:
|
textColor:
|
||||||
themeController
|
themeController
|
||||||
.currentColor
|
.currentColor
|
||||||
.sc9,
|
.sc9,
|
||||||
);
|
);
|
||||||
await DailyLogUtils
|
await DailyLogUtils.writeLog(
|
||||||
.writeLog(
|
|
||||||
"获取验证码成功,${apiResponse}");
|
"获取验证码成功,${apiResponse}");
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
TopSlideNotification
|
TopSlideNotification.show(
|
||||||
.show(
|
|
||||||
context,
|
context,
|
||||||
text: apiResponse
|
text: apiResponse.msg!,
|
||||||
.msg!,
|
|
||||||
textColor:
|
textColor:
|
||||||
themeController
|
themeController
|
||||||
.currentColor
|
.currentColor
|
||||||
.sc2,
|
.sc2,
|
||||||
);
|
);
|
||||||
await DailyLogUtils
|
await DailyLogUtils.writeLog(
|
||||||
.writeLog(
|
|
||||||
"获取验证码失败,${apiResponse}");
|
"获取验证码失败,${apiResponse}");
|
||||||
}
|
}
|
||||||
countdownController
|
countdownController
|
||||||
@@ -522,17 +498,13 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
await DailyLogUtils
|
await DailyLogUtils
|
||||||
.writeLog(
|
.writeLog(
|
||||||
"获取验证码异常,${e}");
|
"获取验证码异常,${e}");
|
||||||
edm.EasyDartModule
|
edm.EasyDartModule.logger
|
||||||
.logger
|
.info("获取验证码异常:${e}");
|
||||||
.info(
|
|
||||||
"获取验证码异常:${e}");
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
alignment:
|
alignment: Alignment.center,
|
||||||
Alignment.center,
|
constraints: BoxConstraints(
|
||||||
constraints:
|
|
||||||
BoxConstraints(
|
|
||||||
minWidth: 150.rpx,
|
minWidth: 150.rpx,
|
||||||
),
|
),
|
||||||
child: Text(
|
child: Text(
|
||||||
@@ -544,8 +516,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
: '${countdownController.countdown.value}' +
|
: '${countdownController.countdown.value}' +
|
||||||
"其他手机登录页.秒".tr,
|
"其他手机登录页.秒".tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily:
|
fontFamily: 'Readex Pro',
|
||||||
'Readex Pro',
|
|
||||||
color: themeController
|
color: themeController
|
||||||
.currentColor.sc2,
|
.currentColor.sc2,
|
||||||
fontSize: AppConstants()
|
fontSize: AppConstants()
|
||||||
@@ -566,8 +537,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 26.rpx, 0, 0),
|
EdgeInsetsDirectional.fromSTEB(0, 26.rpx, 0, 0),
|
||||||
child: CustomCard(
|
child: CustomCard(
|
||||||
borderRadius: AppConstants()
|
borderRadius: AppConstants()
|
||||||
.button_container_radius, // 圆角半径
|
.button_container_radius, // 圆角半径
|
||||||
@@ -585,38 +556,34 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
ApiResponse apiResponse =
|
ApiResponse apiResponse =
|
||||||
await loginController
|
await loginController.login(context);
|
||||||
.login(context);
|
|
||||||
if (apiResponse.code !=
|
if (apiResponse.code !=
|
||||||
HttpStatusCodes.ok) {
|
HttpStatusCodes.ok) {
|
||||||
TopSlideNotification.show(
|
TopSlideNotification.show(
|
||||||
context,
|
context,
|
||||||
text: apiResponse.msg!,
|
text: apiResponse.msg!,
|
||||||
textColor: themeController
|
textColor:
|
||||||
.currentColor.sc9,
|
themeController.currentColor.sc9,
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
// await dealBindProcess();
|
// await dealBindProcess();
|
||||||
CountdownController
|
CountdownController countdownController =
|
||||||
countdownController = Get.find();
|
Get.find();
|
||||||
countdownController.countdown.value =
|
countdownController.countdown.value = 0;
|
||||||
0;
|
|
||||||
// 登录成功,跳转到主页面
|
// 登录成功,跳转到主页面
|
||||||
TopSlideNotification.show(
|
TopSlideNotification.show(
|
||||||
context,
|
context,
|
||||||
text: "其他手机登录页.登录成功".tr,
|
text: "其他手机登录页.登录成功".tr,
|
||||||
textColor: themeController
|
textColor:
|
||||||
.currentColor.sc2,
|
themeController.currentColor.sc2,
|
||||||
);
|
);
|
||||||
// Get.offAllNamed('/homePage');
|
// Get.offAllNamed('/homePage');
|
||||||
Get.offAllNamed(
|
Get.offAllNamed("/mianPageBottomChange");
|
||||||
"/mianPageBottomChange");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
await DailyLogUtils.writeLog("登录失败,${e}");
|
await DailyLogUtils.writeLog("登录失败,${e}");
|
||||||
edm.EasyDartModule.logger
|
edm.EasyDartModule.logger.info("登录失败:${e}");
|
||||||
.info("登录失败:${e}");
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
colors: [
|
colors: [
|
||||||
@@ -626,25 +593,23 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize.maxWidth,
|
width: bodysize.maxWidth,
|
||||||
height: MediaQuery.sizeOf(context).height *
|
height:
|
||||||
0.055,
|
MediaQuery.sizeOf(context).height * 0.055,
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
minWidth: 500.rpx,
|
minWidth: 500.rpx,
|
||||||
minHeight: 90.rpx,
|
minHeight: 90.rpx,
|
||||||
),
|
),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
MainAxisAlignment.center,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'其他手机登录页.登录'.tr,
|
'其他手机登录页.登录'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController
|
color: themeController.currentColor.sc3,
|
||||||
.currentColor.sc3,
|
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
fontSize: AppConstants()
|
fontSize:
|
||||||
.normal_text_fontSize,
|
AppConstants().normal_text_fontSize,
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -663,17 +628,14 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
decoration: BoxDecoration(),
|
decoration: BoxDecoration(),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
crossAxisAlignment:
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
CrossAxisAlignment.start,
|
|
||||||
children: [
|
children: [
|
||||||
Theme(
|
Theme(
|
||||||
data: ThemeData(
|
data: ThemeData(
|
||||||
checkboxTheme: CheckboxThemeData(
|
checkboxTheme: CheckboxThemeData(
|
||||||
visualDensity:
|
visualDensity: VisualDensity.compact,
|
||||||
VisualDensity.compact,
|
|
||||||
materialTapTargetSize:
|
materialTapTargetSize:
|
||||||
MaterialTapTargetSize
|
MaterialTapTargetSize.shrinkWrap,
|
||||||
.shrinkWrap,
|
|
||||||
shape: RoundedRectangleBorder(
|
shape: RoundedRectangleBorder(
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(64),
|
BorderRadius.circular(64),
|
||||||
@@ -708,8 +670,7 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
)),
|
)),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
0.rpx, 10.rpx, 0.rpx, 0.rpx),
|
0.rpx, 10.rpx, 0.rpx, 0.rpx),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize.maxWidth,
|
width: bodysize.maxWidth,
|
||||||
@@ -736,8 +697,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 20.rpx,
|
fontSize: 20.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -756,8 +717,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 20.rpx,
|
fontSize: 20.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -776,8 +737,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
fontSize: 20.rpx,
|
fontSize: 20.rpx,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FF9F66"),
|
stringToColor("#FF9F66"),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -805,8 +766,8 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 0, 0, 36.rpx),
|
EdgeInsetsDirectional.fromSTEB(0, 0, 0, 36.rpx),
|
||||||
child: Text(
|
child: Text(
|
||||||
AppConstants().ent_type == 1
|
AppConstants().ent_type == 1
|
||||||
? '登录页.欢迎使用太和e护'.tr
|
? '登录页.欢迎使用太和e护'.tr
|
||||||
@@ -837,13 +798,11 @@ class _OtherLoginPageState extends State<OtherLoginPage> {
|
|||||||
TopSlideNotification.show(
|
TopSlideNotification.show(
|
||||||
context,
|
context,
|
||||||
text: "登录页.未同意协议".tr,
|
text: "登录页.未同意协议".tr,
|
||||||
textColor:
|
textColor: themeController.currentColor.sc9,
|
||||||
themeController.currentColor.sc9,
|
|
||||||
);
|
);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await loginController
|
await loginController.wxLoginSendAuth(context);
|
||||||
.wxLoginSendAuth(context);
|
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 91.rpx,
|
width: 91.rpx,
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class _EPageState extends State<EPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
backgroundColor: themeController.currentColor.sc17,
|
backgroundColor: themeController.currentColor.sc17,
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ class _FollowPageState extends State<FollowPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
// decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
// image: DecorationImage(
|
// image: DecorationImage(
|
||||||
@@ -86,7 +86,9 @@ class _FollowPageState extends State<FollowPage> {
|
|||||||
// child: widget.webView,
|
// child: widget.webView,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
image: AssetImage(AppConstants().ent_type == 1?'assets/img/followus.png':"assets/img/huanshuiF.png"), // 本地图片
|
image: AssetImage(AppConstants().ent_type == 1
|
||||||
|
? 'assets/img/followus.png'
|
||||||
|
: "assets/img/huanshuiF.png"), // 本地图片
|
||||||
fit: BoxFit.cover, // 填满整个 Container
|
fit: BoxFit.cover, // 填满整个 Container
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ class _HelpPageState extends State<HelpPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ class _MessagePageState extends State<MessagePage> {
|
|||||||
|
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -253,7 +253,6 @@ class _MessagePageState extends State<MessagePage> {
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
||||||
SizedBox(height: 17.rpx),
|
SizedBox(height: 17.rpx),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ class _MinePageState extends State<MinePage> {
|
|||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
final double spacing = 34.rpx;
|
final double spacing = 34.rpx;
|
||||||
final double buttonHeight = 101.rpx;
|
final double buttonHeight = 101.rpx;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
appBar: AppBar(
|
appBar: AppBar(
|
||||||
@@ -75,8 +75,7 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
SizedBox(height: 148.rpx),
|
SizedBox(height: 148.rpx),
|
||||||
Text(
|
Text(
|
||||||
intensity.toInt().toString(),
|
intensity.toInt().toString(),
|
||||||
style:
|
style: TextStyle(color: Colors.white, fontSize: 160.rpx),
|
||||||
TextStyle(color: Colors.white, fontSize: 160.rpx),
|
|
||||||
),
|
),
|
||||||
SizedBox(height: 41.rpx),
|
SizedBox(height: 41.rpx),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
@@ -91,17 +90,14 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
child: SizedBox(
|
child: SizedBox(
|
||||||
width: 60.rpx,
|
width: 60.rpx,
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Text('强',
|
Text('强',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Colors.grey,
|
color: Colors.grey, fontSize: 30.rpx)),
|
||||||
fontSize: 30.rpx)),
|
|
||||||
Text('弱',
|
Text('弱',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: Colors.grey,
|
color: Colors.grey, fontSize: 30.rpx)),
|
||||||
fontSize: 30.rpx)),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -126,8 +122,7 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
trackHeight: 60.rpx,
|
trackHeight: 60.rpx,
|
||||||
thumbShape: RoundSliderThumbShape(
|
thumbShape: RoundSliderThumbShape(
|
||||||
enabledThumbRadius: 45.rpx),
|
enabledThumbRadius: 45.rpx),
|
||||||
overlayShape:
|
overlayShape: const RoundSliderOverlayShape(
|
||||||
const RoundSliderOverlayShape(
|
|
||||||
overlayRadius: 20),
|
overlayRadius: 20),
|
||||||
),
|
),
|
||||||
child: Slider(
|
child: Slider(
|
||||||
@@ -159,8 +154,8 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
alignment: Alignment.centerLeft,
|
alignment: Alignment.centerLeft,
|
||||||
child: Text(
|
child: Text(
|
||||||
'按摩定时',
|
'按摩定时',
|
||||||
style: TextStyle(
|
style:
|
||||||
color: Colors.white70, fontSize: 30.rpx),
|
TextStyle(color: Colors.white70, fontSize: 30.rpx),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -169,8 +164,7 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
padding: EdgeInsets.fromLTRB(40.rpx, 0, 40.rpx, 0),
|
padding: EdgeInsets.fromLTRB(40.rpx, 0, 40.rpx, 0),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
children:
|
children: List.generate(timeOptions.length, (index) {
|
||||||
List.generate(timeOptions.length, (index) {
|
|
||||||
final min = timeOptions[index];
|
final min = timeOptions[index];
|
||||||
final isSelected = selectedTime == min;
|
final isSelected = selectedTime == min;
|
||||||
return SizedBox(
|
return SizedBox(
|
||||||
@@ -185,9 +179,8 @@ class _BackMovementPageState extends State<BackMovementPage> {
|
|||||||
backgroundColor: isSelected
|
backgroundColor: isSelected
|
||||||
? Colors.cyanAccent
|
? Colors.cyanAccent
|
||||||
: Colors.blue.shade900,
|
: Colors.blue.shade900,
|
||||||
foregroundColor: isSelected
|
foregroundColor:
|
||||||
? Colors.black
|
isSelected ? Colors.black : Colors.white,
|
||||||
: Colors.white,
|
|
||||||
shape: RoundedRectangleBorder(
|
shape: RoundedRectangleBorder(
|
||||||
borderRadius: BorderRadius.circular(6),
|
borderRadius: BorderRadius.circular(6),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:vbvs_app/common/util/FitTool.dart';
|
import 'package:vbvs_app/common/util/FitTool.dart';
|
||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
|
|
||||||
|
|
||||||
class HomeDeviceType extends StatefulWidget {
|
class HomeDeviceType extends StatefulWidget {
|
||||||
HomeDeviceType({super.key});
|
HomeDeviceType({super.key});
|
||||||
@override
|
@override
|
||||||
@@ -25,7 +24,7 @@ class _HomeDeviceTypeState extends State<HomeDeviceType> {
|
|||||||
// }
|
// }
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -84,8 +83,8 @@ class _HomeDeviceTypeState extends State<HomeDeviceType> {
|
|||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
48.rpx, 24.rpx, 0, 0),
|
EdgeInsetsDirectional.fromSTEB(48.rpx, 24.rpx, 0, 0),
|
||||||
child: Text(
|
child: Text(
|
||||||
'选择类型',
|
'选择类型',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ class _MattressControlPageState extends State<MattressControlPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
// onTap: () => FocusScope.of(context).unfocus(),
|
// // onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ class ShareDeviceDetailWidget extends GetView {
|
|||||||
type.value = shareInfo['op_type'];
|
type.value = shareInfo['op_type'];
|
||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Scaffold(
|
child: Scaffold(
|
||||||
key: scaffoldKey,
|
key: scaffoldKey,
|
||||||
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
|
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ class _MhAboutUsPageState extends State<MhAboutUsPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class AddressListPage extends GetView<AddressListController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -145,15 +145,14 @@ class AddressListPage extends GetView<AddressListController> {
|
|||||||
Align(
|
Align(
|
||||||
alignment: AlignmentDirectional(0, 1),
|
alignment: AlignmentDirectional(0, 1),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(15, 15, 15,
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
AppConstants.page_button_bottom_padding),
|
15, 15, 15, AppConstants.page_button_bottom_padding),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize!.maxWidth,
|
width: bodysize!.maxWidth,
|
||||||
height: bodysize!.maxHeight * 0.056,
|
height: bodysize!.maxHeight * 0.056,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
// color: Color(0xFFF6F6F6),
|
// color: Color(0xFFF6F6F6),
|
||||||
border:
|
border: Border.all(width: 0, color: Color(0XFF85F5FF)),
|
||||||
Border.all(width: 0, color: Color(0XFF85F5FF)),
|
|
||||||
borderRadius: BorderRadius.circular(12),
|
borderRadius: BorderRadius.circular(12),
|
||||||
),
|
),
|
||||||
child: TextButton(
|
child: TextButton(
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class _ApplyRepairSuccessState extends State<ApplyRepairSuccess> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -67,7 +67,7 @@ class _BluetoothPageState extends State<BluetoothPage> {
|
|||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
final isBind = obsData['bind_type'] == 1;
|
final isBind = obsData['bind_type'] == 1;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class BookInfoPage extends GetView<BookInfoController> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class BookSuccessPage extends GetView {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -115,8 +115,8 @@ class BookSuccessPage extends GetView {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Container(
|
Container(
|
||||||
margin: EdgeInsets.only(
|
margin:
|
||||||
left: 30.rpx, right: 30.rpx, top: 55.rpx),
|
EdgeInsets.only(left: 30.rpx, right: 30.rpx, top: 55.rpx),
|
||||||
width: bodysize!.maxWidth,
|
width: bodysize!.maxWidth,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Color(0xFF003058),
|
color: Color(0xFF003058),
|
||||||
@@ -130,8 +130,7 @@ class BookSuccessPage extends GetView {
|
|||||||
for (var item in infoList)
|
for (var item in infoList)
|
||||||
Container(
|
Container(
|
||||||
height: 60.rpx,
|
height: 60.rpx,
|
||||||
padding:
|
padding: EdgeInsets.symmetric(horizontal: 35.rpx),
|
||||||
EdgeInsets.symmetric(horizontal: 35.rpx),
|
|
||||||
alignment: Alignment.centerLeft,
|
alignment: Alignment.centerLeft,
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -83,8 +83,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
borderRadius: BorderRadius.circular(12),
|
borderRadius: BorderRadius.circular(12),
|
||||||
),
|
),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: const EdgeInsetsDirectional.fromSTEB(
|
||||||
const EdgeInsetsDirectional.fromSTEB(
|
|
||||||
21, 0, 22, 0),
|
21, 0, 22, 0),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
@@ -116,8 +115,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
Container(
|
Container(
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisAlignment:
|
mainAxisAlignment:
|
||||||
MainAxisAlignment
|
MainAxisAlignment.spaceBetween,
|
||||||
.spaceBetween,
|
|
||||||
crossAxisAlignment:
|
crossAxisAlignment:
|
||||||
CrossAxisAlignment.start,
|
CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
@@ -127,8 +125,8 @@ class DeletedAccountPage extends GetView {
|
|||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: AppFontsize
|
fontSize: AppFontsize
|
||||||
.normal_text_size, // 设置字体大小
|
.normal_text_size, // 设置字体大小
|
||||||
color: Color(
|
color:
|
||||||
0xFF9AA0B3), // 默认颜色
|
Color(0xFF9AA0B3), // 默认颜色
|
||||||
),
|
),
|
||||||
children: [
|
children: [
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -142,13 +140,11 @@ class DeletedAccountPage extends GetView {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
text:
|
text: ",可先进行解绑后再进行注销操作。",
|
||||||
",可先进行解绑后再进行注销操作。",
|
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: AppFontsize
|
fontSize: AppFontsize
|
||||||
.normal_text_size,
|
.normal_text_size,
|
||||||
color:
|
color: Color(0xFF9AA0B3),
|
||||||
Color(0xFF9AA0B3),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
@@ -162,8 +158,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: AppFontsize
|
fontSize: AppFontsize
|
||||||
.title_size, // 设置字体大小
|
.title_size, // 设置字体大小
|
||||||
color:
|
color: const Color(0xFFFFFFFF),
|
||||||
const Color(0xFFFFFFFF),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
@@ -185,8 +180,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: AppFontsize
|
fontSize: AppFontsize
|
||||||
.title_size, // 设置字体大小
|
.title_size, // 设置字体大小
|
||||||
color:
|
color: const Color(0xFFFFFFFF),
|
||||||
const Color(0xFFFFFFFF),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
@@ -208,8 +202,7 @@ class DeletedAccountPage extends GetView {
|
|||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: AppFontsize
|
fontSize: AppFontsize
|
||||||
.title_size, // 设置字体大小
|
.title_size, // 设置字体大小
|
||||||
color:
|
color: const Color(0xFFFFFFFF),
|
||||||
const Color(0xFFFFFFFF),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
@@ -226,12 +219,10 @@ class DeletedAccountPage extends GetView {
|
|||||||
],
|
],
|
||||||
)),
|
)),
|
||||||
]
|
]
|
||||||
.divide(
|
.divide(const SizedBox(height: 24))
|
||||||
const SizedBox(height: 24))
|
|
||||||
.addToStart(
|
.addToStart(
|
||||||
const SizedBox(height: 14))
|
const SizedBox(height: 14))
|
||||||
.addToEnd(
|
.addToEnd(const SizedBox(height: 17)),
|
||||||
const SizedBox(height: 17)),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -292,8 +283,8 @@ class DeletedAccountPage extends GetView {
|
|||||||
height: 40,
|
height: 40,
|
||||||
padding: const EdgeInsetsDirectional.fromSTEB(
|
padding: const EdgeInsetsDirectional.fromSTEB(
|
||||||
24, 0, 24, 0),
|
24, 0, 24, 0),
|
||||||
iconPadding: const EdgeInsetsDirectional.fromSTEB(
|
iconPadding:
|
||||||
0, 0, 0, 0),
|
const EdgeInsetsDirectional.fromSTEB(0, 0, 0, 0),
|
||||||
color: const Color(0xFFFF7159),
|
color: const Color(0xFFFF7159),
|
||||||
textStyle: TextStyle(
|
textStyle: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class _MHTBindDeviceSuccessState extends State<MHTBindDeviceSuccess> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ class _MHTBindDeviceTypePageState extends State<MHTBindDeviceTypePage> {
|
|||||||
}
|
}
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -287,7 +287,7 @@ class _MHTBlueteethDevicePageState extends State<MHTBlueteethDevicePage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ class _MHTCalibrationPageCopyState extends State<MHTCalibrationPageCopy> {
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ class _MHTCalibrationPageState extends State<MHTCalibrationPage> {
|
|||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: LayoutBuilder(
|
child: LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -108,7 +108,8 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
|||||||
|
|
||||||
// 导航到下一页
|
// 导航到下一页
|
||||||
if (blueteethBindController.wifiStatus.value != 1) {
|
if (blueteethBindController.wifiStatus.value != 1) {
|
||||||
showConfirmDialog(context, Container(), "未配置网络提示".tr, onConfirm: () async {
|
showConfirmDialog(context, Container(), "未配置网络提示".tr,
|
||||||
|
onConfirm: () async {
|
||||||
_cleanupResources();
|
_cleanupResources();
|
||||||
await _disconnectDevice();
|
await _disconnectDevice();
|
||||||
Get.toNamed("/calibrationPage");
|
Get.toNamed("/calibrationPage");
|
||||||
@@ -124,7 +125,7 @@ class _MHTWifiPageState extends State<MHTWifiPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class _DeviceListPageState extends State<DeviceListPage> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ class DevicePeopleInfo extends GetView<PeopleInfoController> {
|
|||||||
});
|
});
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -92,8 +92,8 @@ class DevicePeopleInfo extends GetView<PeopleInfoController> {
|
|||||||
top: true,
|
top: true,
|
||||||
child: Obx(
|
child: Obx(
|
||||||
() => Container(
|
() => Container(
|
||||||
padding: EdgeInsets.only(
|
padding:
|
||||||
left: 30.rpx, right: 30.rpx, top: 30.rpx),
|
EdgeInsets.only(left: 30.rpx, right: 30.rpx, top: 30.rpx),
|
||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
height: MediaQuery.sizeOf(context).height * 1.123,
|
height: MediaQuery.sizeOf(context).height * 1.123,
|
||||||
// decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
@@ -111,13 +111,12 @@ class DevicePeopleInfo extends GetView<PeopleInfoController> {
|
|||||||
backgroundColor: Color(0xFFFF036060),
|
backgroundColor: Color(0xFFFF036060),
|
||||||
highlightColor: Colors.transparent,
|
highlightColor: Colors.transparent,
|
||||||
borderRadius: 16.rpx,
|
borderRadius: 16.rpx,
|
||||||
padding: EdgeInsets.fromLTRB(
|
padding:
|
||||||
30.rpx, 20.rpx, 0, 20.rpx),
|
EdgeInsets.fromLTRB(30.rpx, 20.rpx, 0, 20.rpx),
|
||||||
onTap: () {},
|
onTap: () {},
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(16.rpx)),
|
||||||
BorderRadius.circular(16.rpx)),
|
|
||||||
child: Column(
|
child: Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
children: [
|
children: [
|
||||||
@@ -134,8 +133,8 @@ class DevicePeopleInfo extends GetView<PeopleInfoController> {
|
|||||||
),
|
),
|
||||||
getInfoRow(
|
getInfoRow(
|
||||||
context, "名称:${data["name"] ?? "-"}"),
|
context, "名称:${data["name"] ?? "-"}"),
|
||||||
getInfoRow(context,
|
getInfoRow(
|
||||||
"房间:${data["roomName"] ?? "-"}"),
|
context, "房间:${data["roomName"] ?? "-"}"),
|
||||||
getInfoRow(
|
getInfoRow(
|
||||||
context,
|
context,
|
||||||
"设备状态:${data["status"]?["status"] == 1 ? "已绑定" : data["status"]?["status"] == 0 ? "已绑定" : "-"}",
|
"设备状态:${data["status"]?["status"] == 1 ? "已绑定" : data["status"]?["status"] == 0 ? "已绑定" : "-"}",
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
controller.model.type = 1;
|
controller.model.type = 1;
|
||||||
controller.model.account = '';
|
controller.model.account = '';
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -76,14 +76,12 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
height: MediaQuery.sizeOf(context).height * 1,
|
height: MediaQuery.sizeOf(context).height * 1,
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(30.rpx, 0, 30.rpx, 0),
|
||||||
EdgeInsetsDirectional.fromSTEB(30.rpx, 0, 30.rpx, 0),
|
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(0, 30.rpx, 0, 0),
|
||||||
EdgeInsetsDirectional.fromSTEB(0, 30.rpx, 0, 0),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
@@ -99,8 +97,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
children: [
|
children: [
|
||||||
Column(
|
Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
crossAxisAlignment:
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
CrossAxisAlignment.center,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'将以下设备分享给您的家人或朋友 ',
|
'将以下设备分享给您的家人或朋友 ',
|
||||||
@@ -132,8 +129,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
minHeight: 46,
|
minHeight: 46,
|
||||||
),
|
),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(16.rpx),
|
||||||
BorderRadius.circular(16.rpx),
|
|
||||||
),
|
),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment:
|
||||||
@@ -147,8 +143,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
hintText: '请输入对方手机号/邮箱号',
|
hintText: '请输入对方手机号/邮箱号',
|
||||||
hintStyle: TextStyle(
|
hintStyle: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color:
|
color: const Color(0xFF929699),
|
||||||
const Color(0xFF929699),
|
|
||||||
fontSize: 36.rpx,
|
fontSize: 36.rpx,
|
||||||
),
|
),
|
||||||
enabledBorder:
|
enabledBorder:
|
||||||
@@ -166,8 +161,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
errorBorder:
|
errorBorder:
|
||||||
const UnderlineInputBorder(
|
const UnderlineInputBorder(
|
||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
color: Colors.red,
|
color: Colors.red, width: 0),
|
||||||
width: 0),
|
|
||||||
),
|
),
|
||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
const UnderlineInputBorder(
|
const UnderlineInputBorder(
|
||||||
@@ -185,8 +179,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
fontSize: 36.rpx,
|
fontSize: 36.rpx,
|
||||||
),
|
),
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
controller.model.account =
|
controller.model.account = value;
|
||||||
value;
|
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
)),
|
)),
|
||||||
@@ -245,8 +238,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
),
|
),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
double h = 33.rpx;
|
double h = 33.rpx;
|
||||||
bool check =
|
bool check = controller.model.type == 1;
|
||||||
controller.model.type == 1;
|
|
||||||
|
|
||||||
return Container(
|
return Container(
|
||||||
height: 33.rpx,
|
height: 33.rpx,
|
||||||
@@ -262,8 +254,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
h / 2),
|
h / 2),
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
width: check ? 1 : 0.5,
|
width: check ? 1 : 0.5,
|
||||||
color:
|
color: Color(0xFFC8CBD2),
|
||||||
Color(0xFFC8CBD2),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
child: check
|
child: check
|
||||||
@@ -445,8 +436,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
// ✅ 只包住响应式控件部分
|
// ✅ 只包住响应式控件部分
|
||||||
Obx(() {
|
Obx(() {
|
||||||
double h = 33.rpx;
|
double h = 33.rpx;
|
||||||
bool check =
|
bool check = controller.model.type == 2;
|
||||||
controller.model.type == 2;
|
|
||||||
|
|
||||||
return Container(
|
return Container(
|
||||||
height: 33.rpx,
|
height: 33.rpx,
|
||||||
@@ -462,8 +452,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
h / 2),
|
h / 2),
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
width: check ? 1 : 0.5,
|
width: check ? 1 : 0.5,
|
||||||
color:
|
color: Color(0xFFC8CBD2),
|
||||||
Color(0xFFC8CBD2),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
child: check
|
child: check
|
||||||
@@ -517,8 +506,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
text: '发送邀请'.tr,
|
text: '发送邀请'.tr,
|
||||||
options: FFButtonOptions(
|
options: FFButtonOptions(
|
||||||
height: 60.rpx,
|
height: 60.rpx,
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
30.rpx, 0, 30.rpx, 0),
|
30.rpx, 0, 30.rpx, 0),
|
||||||
color: const Color(0xFF84F5FF),
|
color: const Color(0xFF84F5FF),
|
||||||
textStyle: TextStyle(
|
textStyle: TextStyle(
|
||||||
@@ -528,8 +516,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
letterSpacing: 0.0,
|
letterSpacing: 0.0,
|
||||||
),
|
),
|
||||||
elevation: 0,
|
elevation: 0,
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(50),
|
||||||
BorderRadius.circular(50),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -551,11 +538,11 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment: const AlignmentDirectional(-1, 0),
|
||||||
const AlignmentDirectional(-1, 0),
|
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: const EdgeInsetsDirectional
|
padding:
|
||||||
.fromSTEB(14, 0, 0, 16),
|
const EdgeInsetsDirectional.fromSTEB(
|
||||||
|
14, 0, 0, 16),
|
||||||
child: Text(
|
child: Text(
|
||||||
'已分享用户'.tr,
|
'已分享用户'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
@@ -570,10 +557,8 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
Obx(
|
Obx(
|
||||||
() {
|
() {
|
||||||
// 检查 shareUser 是否为空或数量为 0
|
// 检查 shareUser 是否为空或数量为 0
|
||||||
if (controller.model.shareUser ==
|
if (controller.model.shareUser == null ||
|
||||||
null ||
|
controller.model.shareUser!.isEmpty) {
|
||||||
controller
|
|
||||||
.model.shareUser!.isEmpty) {
|
|
||||||
// return Container(
|
// return Container(
|
||||||
// alignment: AlignmentDirectional
|
// alignment: AlignmentDirectional
|
||||||
// .centerStart, // 确保文字靠左对齐
|
// .centerStart, // 确保文字靠左对齐
|
||||||
@@ -611,8 +596,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
|
|||||||
// height: 13,
|
// height: 13,
|
||||||
// ))
|
// ))
|
||||||
.addToEnd(const SizedBox(
|
.addToEnd(const SizedBox(
|
||||||
height:
|
height: AppConstants.list_end_height,
|
||||||
AppConstants.list_end_height,
|
|
||||||
)),
|
)),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ class EditAddressPage extends GetView<AddressController>
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ class _ExperienceStorePageState extends State<ExperienceStorePage> {
|
|||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -130,8 +130,8 @@ class _ExperienceStorePageState extends State<ExperienceStorePage> {
|
|||||||
//todo
|
//todo
|
||||||
|
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 40.rpx, 0, 38.rpx),
|
EdgeInsetsDirectional.fromSTEB(0, 40.rpx, 0, 38.rpx),
|
||||||
child: SearchWidget(
|
child: SearchWidget(
|
||||||
keyword: controller.model.keyword,
|
keyword: controller.model.keyword,
|
||||||
color: controller.model.color,
|
color: controller.model.color,
|
||||||
@@ -147,8 +147,7 @@ class _ExperienceStorePageState extends State<ExperienceStorePage> {
|
|||||||
),
|
),
|
||||||
|
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (controller
|
if (controller.model.experienceStoreModelList.length ==
|
||||||
.model.experienceStoreModelList.length ==
|
|
||||||
0) {
|
0) {
|
||||||
return CircularProgressIndicator(
|
return CircularProgressIndicator(
|
||||||
strokeWidth: 1,
|
strokeWidth: 1,
|
||||||
@@ -166,14 +165,12 @@ class _ExperienceStorePageState extends State<ExperienceStorePage> {
|
|||||||
shrinkWrap: true,
|
shrinkWrap: true,
|
||||||
scrollDirection: Axis.vertical,
|
scrollDirection: Axis.vertical,
|
||||||
children: List.generate(
|
children: List.generate(
|
||||||
controller
|
controller.model.experienceStoreModelList
|
||||||
.model
|
|
||||||
.experienceStoreModelList
|
|
||||||
.length, (index) {
|
.length, (index) {
|
||||||
return ExperienceStoreWidget(
|
return ExperienceStoreWidget(
|
||||||
index: index,
|
index: index,
|
||||||
data: controller.model
|
data: controller
|
||||||
.experienceStoreModelList[index]);
|
.model.experienceStoreModelList[index]);
|
||||||
})
|
})
|
||||||
.divide(const SizedBox(
|
.divide(const SizedBox(
|
||||||
height: 25,
|
height: 25,
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
});
|
});
|
||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// // onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -143,8 +143,7 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
personInfo.value = list[0];
|
personInfo.value = list[0];
|
||||||
homeController.selectPerson.value = list[0];
|
homeController.selectPerson.value = list[0];
|
||||||
homeController.selectDevcie.value = list[0]["mac"];
|
homeController.selectDevcie.value = list[0]["mac"];
|
||||||
deviceController
|
deviceController.getSleeps(formFieldController.value);
|
||||||
.getSleeps(formFieldController.value);
|
|
||||||
homeController.updateAll();
|
homeController.updateAll();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -176,8 +175,7 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
'健康报告'.tr,
|
'健康报告'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color:
|
color: themeController.currentColor.sc3,
|
||||||
themeController.currentColor.sc3,
|
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
),
|
),
|
||||||
@@ -193,37 +191,29 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
Colors.transparent),
|
Colors.transparent),
|
||||||
),
|
),
|
||||||
child: ValueListenableBuilder(
|
child: ValueListenableBuilder(
|
||||||
valueListenable:
|
valueListenable: formFieldController,
|
||||||
formFieldController,
|
|
||||||
builder: (c, a, s) => ClipRRect(
|
builder: (c, a, s) => ClipRRect(
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(
|
BorderRadius.circular(36.rpx),
|
||||||
36.rpx),
|
|
||||||
child: Theme(
|
child: Theme(
|
||||||
data: Theme.of(context)
|
data: Theme.of(context).copyWith(
|
||||||
.copyWith(
|
splashColor: Colors.transparent,
|
||||||
splashColor:
|
|
||||||
Colors.transparent,
|
|
||||||
highlightColor:
|
highlightColor:
|
||||||
Colors.transparent,
|
Colors.transparent,
|
||||||
hoverColor:
|
hoverColor: Colors.transparent,
|
||||||
Colors.transparent,
|
|
||||||
),
|
),
|
||||||
child: FlutterFlowDropDown<
|
child:
|
||||||
String>(
|
FlutterFlowDropDown<String>(
|
||||||
controller:
|
controller: formFieldController,
|
||||||
formFieldController,
|
|
||||||
options: deviceController
|
options: deviceController
|
||||||
.personnelList.value
|
.personnelList.value
|
||||||
.map<String>((d) =>
|
.map<String>(
|
||||||
"${d["mac"]}")
|
(d) => "${d["mac"]}")
|
||||||
.toList(),
|
.toList(),
|
||||||
optionLabels:
|
optionLabels: deviceController
|
||||||
deviceController
|
|
||||||
.personnelList.value
|
.personnelList.value
|
||||||
.map<String>((d) {
|
.map<String>((d) {
|
||||||
var s =
|
var s = d["name"] ?? d["mac"];
|
||||||
d["name"] ?? d["mac"];
|
|
||||||
if (s == null) {
|
if (s == null) {
|
||||||
return "";
|
return "";
|
||||||
} else {
|
} else {
|
||||||
@@ -231,22 +221,17 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
}
|
}
|
||||||
}).toList(),
|
}).toList(),
|
||||||
onChanged: (val) {
|
onChanged: (val) {
|
||||||
final list =
|
final list = deviceController
|
||||||
deviceController
|
.personnelList.value;
|
||||||
.personnelList
|
|
||||||
.value;
|
|
||||||
final selectedPerson =
|
final selectedPerson =
|
||||||
list.firstWhere(
|
list.firstWhere(
|
||||||
(element) =>
|
(element) =>
|
||||||
element['mac'] ==
|
element['mac'] == val,
|
||||||
val,
|
|
||||||
orElse: () =>
|
orElse: () =>
|
||||||
null, // 防止找不到时报错
|
null, // 防止找不到时报错
|
||||||
);
|
);
|
||||||
homeController
|
homeController.selectPerson
|
||||||
.selectPerson
|
.value = selectedPerson;
|
||||||
.value =
|
|
||||||
selectedPerson;
|
|
||||||
personInfo.value =
|
personInfo.value =
|
||||||
selectedPerson;
|
selectedPerson;
|
||||||
|
|
||||||
@@ -255,19 +240,17 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
(6).obs;
|
(6).obs;
|
||||||
print("$val");
|
print("$val");
|
||||||
if (val == null) {
|
if (val == null) {
|
||||||
homeController.sleepDays
|
|
||||||
.value = [];
|
|
||||||
} else {
|
|
||||||
homeController
|
homeController
|
||||||
.selectDevcie
|
.sleepDays.value = [];
|
||||||
|
} else {
|
||||||
|
homeController.selectDevcie
|
||||||
.value =
|
.value =
|
||||||
formFieldController
|
formFieldController
|
||||||
.value!;
|
.value!;
|
||||||
deviceController.getSleeps(
|
deviceController.getSleeps(
|
||||||
formFieldController
|
formFieldController
|
||||||
.value);
|
.value);
|
||||||
homeController
|
homeController.updateAll();
|
||||||
.updateAll();
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
width: 300.rpx,
|
width: 300.rpx,
|
||||||
@@ -283,24 +266,19 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
icon: Icon(
|
icon: Icon(
|
||||||
Icons
|
Icons
|
||||||
.keyboard_arrow_down_rounded,
|
.keyboard_arrow_down_rounded,
|
||||||
color: stringToColor(
|
color:
|
||||||
"#FFFFFF"),
|
stringToColor("#FFFFFF"),
|
||||||
size: 30.rpx,
|
size: 30.rpx,
|
||||||
),
|
),
|
||||||
fillColor: stringToColor(
|
fillColor:
|
||||||
"#184468"),
|
stringToColor("#184468"),
|
||||||
elevation: 2,
|
elevation: 2,
|
||||||
borderColor:
|
borderColor: Colors.transparent,
|
||||||
Colors.transparent,
|
|
||||||
borderWidth: 2,
|
borderWidth: 2,
|
||||||
borderRadius: 100.rpx,
|
borderRadius: 100.rpx,
|
||||||
margin:
|
margin: EdgeInsetsDirectional
|
||||||
EdgeInsetsDirectional
|
.fromSTEB(32.rpx, 8.rpx,
|
||||||
.fromSTEB(
|
32.rpx, 8.rpx),
|
||||||
32.rpx,
|
|
||||||
8.rpx,
|
|
||||||
32.rpx,
|
|
||||||
8.rpx),
|
|
||||||
hidesUnderline: true,
|
hidesUnderline: true,
|
||||||
isOverButton: false,
|
isOverButton: false,
|
||||||
isSearchable: false,
|
isSearchable: false,
|
||||||
@@ -332,8 +310,7 @@ class _MhtSleepReportPageState extends State<MhtSleepReportPage> {
|
|||||||
'date': DateTime.now().millisecondsSinceEpoch,
|
'date': DateTime.now().millisecondsSinceEpoch,
|
||||||
'mac': homeController.selectDevcie.value,
|
'mac': homeController.selectDevcie.value,
|
||||||
'person': homeController.selectPerson.value,
|
'person': homeController.selectPerson.value,
|
||||||
'backgroundImg':
|
'backgroundImg': 'assets/images/new_background.png',
|
||||||
'assets/images/new_background.png',
|
|
||||||
'arrow': false,
|
'arrow': false,
|
||||||
'noBackImg': true,
|
'noBackImg': true,
|
||||||
'person_show': false,
|
'person_show': false,
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class _MhtSleepReportReturnPageState extends State<MhtSleepReportReturnPage> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
});
|
});
|
||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -244,8 +244,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding: EdgeInsets.fromLTRB(17.rpx, 30.rpx, 0, 0),
|
||||||
EdgeInsets.fromLTRB(17.rpx, 30.rpx, 0, 0),
|
|
||||||
child: Row(
|
child: Row(
|
||||||
children: [
|
children: [
|
||||||
Obx(() {
|
Obx(() {
|
||||||
@@ -279,8 +278,8 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
if (weatherModelController
|
if (weatherModelController
|
||||||
.model.weatherIconurl !=
|
.model.weatherIconurl !=
|
||||||
null &&
|
null &&
|
||||||
weatherModelController.model
|
weatherModelController
|
||||||
.weatherIconurl!.isNotEmpty)
|
.model.weatherIconurl!.isNotEmpty)
|
||||||
Container(
|
Container(
|
||||||
width: 35.rpx,
|
width: 35.rpx,
|
||||||
height: 26.rpx,
|
height: 26.rpx,
|
||||||
@@ -321,8 +320,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
userInfoController.model.login == 0) {
|
userInfoController.model.login == 0) {
|
||||||
TopSlideNotification.show(context,
|
TopSlideNotification.show(context,
|
||||||
text: "请先登录".tr,
|
text: "请先登录".tr,
|
||||||
textColor:
|
textColor: themeController.currentColor.sc9);
|
||||||
themeController.currentColor.sc9);
|
|
||||||
Get.toNamed("/loginPage");
|
Get.toNamed("/loginPage");
|
||||||
} else {
|
} else {
|
||||||
Get.toNamed("/mHTDeviceTypePage");
|
Get.toNamed("/mHTDeviceTypePage");
|
||||||
@@ -331,11 +329,10 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
height: 302.rpx,
|
height: 302.rpx,
|
||||||
padding: EdgeInsets.only(
|
padding:
|
||||||
top: 90.rpx, bottom: 80.rpx),
|
EdgeInsets.only(top: 90.rpx, bottom: 80.rpx),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(borderRadius),
|
||||||
BorderRadius.circular(borderRadius),
|
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
color: stringToColor("#85F5FF"), // 边框颜色
|
color: stringToColor("#85F5FF"), // 边框颜色
|
||||||
width: 1.rpx, // 边框宽度
|
width: 1.rpx, // 边框宽度
|
||||||
@@ -383,8 +380,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
formFieldController.value = list[0]["mac"];
|
formFieldController.value = list[0]["mac"];
|
||||||
personInfo.value = list[0];
|
personInfo.value = list[0];
|
||||||
homeController.selectPerson.value = list[0];
|
homeController.selectPerson.value = list[0];
|
||||||
homeController.selectDevcie.value =
|
homeController.selectDevcie.value = list[0]["mac"];
|
||||||
list[0]["mac"];
|
|
||||||
deviceController
|
deviceController
|
||||||
.getHomeSleeps(formFieldController.value);
|
.getHomeSleeps(formFieldController.value);
|
||||||
homeController.updateAll();
|
homeController.updateAll();
|
||||||
@@ -393,60 +389,48 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
return SingleChildScrollView(
|
return SingleChildScrollView(
|
||||||
child: Column(
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
if (homeController.personnelList.value.length !=
|
if (homeController.personnelList.value.length != 0)
|
||||||
0)
|
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
30.rpx, 40.rpx, 30.rpx, 10.rpx),
|
30.rpx, 40.rpx, 30.rpx, 10.rpx),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context).width,
|
width: MediaQuery.sizeOf(context).width,
|
||||||
height:
|
height:
|
||||||
MediaQuery.sizeOf(context).height *
|
MediaQuery.sizeOf(context).height * 0.184,
|
||||||
0.184,
|
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
minHeight: 354.rpx,
|
minHeight: 354.rpx,
|
||||||
),
|
),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: stringToColor("#003058"),
|
color: stringToColor("#003058"),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(20.rpx),
|
||||||
BorderRadius.circular(20.rpx),
|
|
||||||
),
|
),
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
20.rpx, 20.rpx, 16.rpx, 25.rpx),
|
||||||
20.rpx,
|
|
||||||
20.rpx,
|
|
||||||
16.rpx,
|
|
||||||
25.rpx),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context)
|
width:
|
||||||
.width,
|
MediaQuery.sizeOf(context).width,
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment:
|
||||||
MainAxisAlignment
|
MainAxisAlignment.spaceBetween,
|
||||||
.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
ScrollbarTheme(
|
ScrollbarTheme(
|
||||||
data: ScrollbarThemeData(
|
data: ScrollbarThemeData(
|
||||||
thumbColor:
|
thumbColor:
|
||||||
MaterialStateProperty
|
MaterialStateProperty.all(
|
||||||
.all(Colors
|
Colors.transparent),
|
||||||
.transparent),
|
|
||||||
trackColor:
|
trackColor:
|
||||||
MaterialStateProperty
|
MaterialStateProperty.all(
|
||||||
.all(Colors
|
Colors.transparent),
|
||||||
.transparent),
|
|
||||||
trackBorderColor:
|
trackBorderColor:
|
||||||
MaterialStateProperty
|
MaterialStateProperty.all(
|
||||||
.all(Colors
|
Colors.transparent),
|
||||||
.transparent),
|
|
||||||
),
|
),
|
||||||
child:
|
child: ValueListenableBuilder(
|
||||||
ValueListenableBuilder(
|
|
||||||
valueListenable:
|
valueListenable:
|
||||||
formFieldController,
|
formFieldController,
|
||||||
builder: (c, a, s) =>
|
builder: (c, a, s) =>
|
||||||
@@ -461,12 +445,10 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
.toList(),
|
.toList(),
|
||||||
optionLabels:
|
optionLabels:
|
||||||
deviceController
|
deviceController
|
||||||
.personnelList
|
.personnelList.value
|
||||||
.value
|
.map<String>((d) {
|
||||||
.map<String>(
|
var s =
|
||||||
(d) {
|
d["name"] ?? d["mac"];
|
||||||
var s = d["name"] ??
|
|
||||||
d["mac"];
|
|
||||||
if (s == null) {
|
if (s == null) {
|
||||||
return "";
|
return "";
|
||||||
} else {
|
} else {
|
||||||
@@ -481,8 +463,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
final selectedPerson =
|
final selectedPerson =
|
||||||
list.firstWhere(
|
list.firstWhere(
|
||||||
(element) =>
|
(element) =>
|
||||||
element[
|
element['mac'] ==
|
||||||
'mac'] ==
|
|
||||||
val,
|
val,
|
||||||
orElse: () =>
|
orElse: () =>
|
||||||
null, // 防止找不到时报错
|
null, // 防止找不到时报错
|
||||||
@@ -521,8 +502,8 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
maxHeight: 300.rpx,
|
maxHeight: 300.rpx,
|
||||||
textStyle: TextStyle(
|
textStyle: TextStyle(
|
||||||
fontSize: 28.rpx,
|
fontSize: 28.rpx,
|
||||||
overflow: TextOverflow
|
overflow:
|
||||||
.ellipsis,
|
TextOverflow.ellipsis,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
),
|
),
|
||||||
hintText: '',
|
hintText: '',
|
||||||
@@ -533,8 +514,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
"#FFFFFF"),
|
"#FFFFFF"),
|
||||||
size: 30.rpx,
|
size: 30.rpx,
|
||||||
),
|
),
|
||||||
fillColor:
|
fillColor: stringToColor(
|
||||||
stringToColor(
|
|
||||||
"##011D33"),
|
"##011D33"),
|
||||||
elevation: 2,
|
elevation: 2,
|
||||||
borderColor:
|
borderColor:
|
||||||
@@ -567,15 +547,13 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
formFieldController
|
formFieldController
|
||||||
.value!,
|
.value!,
|
||||||
'type': 1,
|
'type': 1,
|
||||||
"person": personInfo
|
"person":
|
||||||
.value,
|
personInfo.value,
|
||||||
'backgroundImg':
|
'backgroundImg':
|
||||||
'assets/images/new_background.png',
|
'assets/images/new_background.png',
|
||||||
'date': DateTime
|
'date': DateTime.now()
|
||||||
.now()
|
|
||||||
.millisecondsSinceEpoch,
|
.millisecondsSinceEpoch,
|
||||||
'person_show':
|
'person_show': false,
|
||||||
false,
|
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -621,11 +599,9 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
decoration: BoxDecoration(),
|
decoration: BoxDecoration(),
|
||||||
child: Obx(() => Row(
|
child: Obx(() => Row(
|
||||||
mainAxisSize:
|
mainAxisSize: MainAxisSize.max,
|
||||||
MainAxisSize.max,
|
|
||||||
crossAxisAlignment:
|
crossAxisAlignment:
|
||||||
CrossAxisAlignment
|
CrossAxisAlignment.start,
|
||||||
.start,
|
|
||||||
children: [
|
children: [
|
||||||
...List.generate(
|
...List.generate(
|
||||||
homeController
|
homeController
|
||||||
@@ -633,23 +609,21 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
.value
|
.value
|
||||||
.length, (index) {
|
.length, (index) {
|
||||||
var day = homeController
|
var day = homeController
|
||||||
.homeSleepDays[
|
.homeSleepDays[index];
|
||||||
index];
|
|
||||||
bool isSelected =
|
bool isSelected =
|
||||||
homeController
|
homeController
|
||||||
.selectedDayIndex
|
.selectedDayIndex
|
||||||
.value ==
|
.value ==
|
||||||
index;
|
index;
|
||||||
return Expanded(
|
return Expanded(
|
||||||
child:
|
child: GestureDetector(
|
||||||
GestureDetector(
|
|
||||||
onTap: () {
|
onTap: () {
|
||||||
homeController
|
homeController
|
||||||
.selectedDayIndex
|
.selectedDayIndex
|
||||||
.value = index;
|
.value = index;
|
||||||
int? timeMillis =
|
int? timeMillis =
|
||||||
parseToInt(day[
|
parseToInt(
|
||||||
'time']);
|
day['time']);
|
||||||
Get.toNamed(
|
Get.toNamed(
|
||||||
"/newSleepReportPage",
|
"/newSleepReportPage",
|
||||||
arguments: {
|
arguments: {
|
||||||
@@ -674,8 +648,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
padding:
|
padding:
|
||||||
EdgeInsets
|
EdgeInsets.only(
|
||||||
.only(
|
|
||||||
top: 10.rpx,
|
top: 10.rpx,
|
||||||
bottom: 20.rpx,
|
bottom: 20.rpx,
|
||||||
),
|
),
|
||||||
@@ -718,8 +691,8 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 12
|
height:
|
||||||
.rpx),
|
12.rpx),
|
||||||
Text(
|
Text(
|
||||||
day['date'],
|
day['date'],
|
||||||
// "哈哈",
|
// "哈哈",
|
||||||
@@ -736,8 +709,8 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
height: 39
|
height:
|
||||||
.rpx),
|
39.rpx),
|
||||||
buildScoreOrIcon(
|
buildScoreOrIcon(
|
||||||
day['score']),
|
day['score']),
|
||||||
],
|
],
|
||||||
@@ -758,8 +731,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
30.rpx, 40.rpx, 30.rpx, 100.rpx),
|
30.rpx, 40.rpx, 30.rpx, 100.rpx),
|
||||||
child: Column(
|
child: Column(
|
||||||
children: homeController
|
children: homeController.deviceList.entries
|
||||||
.deviceList.entries
|
|
||||||
.map((entry) => HomeDeviceWidget(
|
.map((entry) => HomeDeviceWidget(
|
||||||
roomName: entry.key,
|
roomName: entry.key,
|
||||||
deviceStatusList: entry.value,
|
deviceStatusList: entry.value,
|
||||||
@@ -779,12 +751,11 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
onTap: () {
|
onTap: () {
|
||||||
if (userInfoController.model.login ==
|
if (userInfoController.model.login ==
|
||||||
null ||
|
null ||
|
||||||
userInfoController.model.login ==
|
userInfoController.model.login == 0) {
|
||||||
0) {
|
|
||||||
TopSlideNotification.show(context,
|
TopSlideNotification.show(context,
|
||||||
text: "请先登录".tr,
|
text: "请先登录".tr,
|
||||||
textColor: themeController
|
textColor:
|
||||||
.currentColor.sc9);
|
themeController.currentColor.sc9);
|
||||||
Get.toNamed("/loginPage");
|
Get.toNamed("/loginPage");
|
||||||
} else {
|
} else {
|
||||||
Get.toNamed("/mHTDeviceTypePage");
|
Get.toNamed("/mHTDeviceTypePage");
|
||||||
@@ -796,11 +767,10 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
padding: EdgeInsets.only(
|
padding: EdgeInsets.only(
|
||||||
top: 90.rpx, bottom: 80.rpx),
|
top: 90.rpx, bottom: 80.rpx),
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius: BorderRadius.circular(
|
borderRadius:
|
||||||
borderRadius),
|
BorderRadius.circular(borderRadius),
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
color: stringToColor(
|
color: stringToColor("#85F5FF"), // 边框颜色
|
||||||
"#85F5FF"), // 边框颜色
|
|
||||||
width: 1.rpx, // 边框宽度
|
width: 1.rpx, // 边框宽度
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -841,8 +811,7 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
Get.toNamed("/mHTDeviceTypePage");
|
Get.toNamed("/mHTDeviceTypePage");
|
||||||
},
|
},
|
||||||
backgroundColor: Colors.transparent,
|
backgroundColor: Colors.transparent,
|
||||||
highlightColor: themeController
|
highlightColor: themeController.currentColor
|
||||||
.currentColor
|
|
||||||
.sc21, // 这里可以自定义高亮色,透明就用 Colors.transparent
|
.sc21, // 这里可以自定义高亮色,透明就用 Colors.transparent
|
||||||
borderRadius: borderRadius,
|
borderRadius: borderRadius,
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
@@ -852,12 +821,11 @@ class _NewHomePageState extends State<NewHomePage> {
|
|||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
color: stringToColor(
|
color: stringToColor("#85F5FF"), // 边框颜色
|
||||||
"#85F5FF"), // 边框颜色
|
|
||||||
width: 1.rpx, // 边框宽度
|
width: 1.rpx, // 边框宽度
|
||||||
),
|
),
|
||||||
borderRadius: BorderRadius.circular(
|
borderRadius:
|
||||||
borderRadius),
|
BorderRadius.circular(borderRadius),
|
||||||
),
|
),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.min,
|
mainAxisSize: MainAxisSize.min,
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ class IssueListPage extends GetView<IssueListController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class _MessageDetailPageState extends State<MessageDetailPage> {
|
|||||||
var messageInfo = widget.data;
|
var messageInfo = widget.data;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ class _MessagePageState extends State<MessagePage> {
|
|||||||
|
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -261,7 +261,6 @@ class _MessagePageState extends State<MessagePage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Container bottomIcon(BuildContext context) {
|
Container bottomIcon(BuildContext context) {
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ class _MyExperiencePageState extends State<MyExperiencePage> {
|
|||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -131,8 +131,7 @@ class _MyExperiencePageState extends State<MyExperiencePage> {
|
|||||||
const SizedBox(
|
const SizedBox(
|
||||||
height: AppConstants.list_start_height),
|
height: AppConstants.list_start_height),
|
||||||
...List.generate(
|
...List.generate(
|
||||||
controller.model.bookInfoList.length,
|
controller.model.bookInfoList.length, (index) {
|
||||||
(index) {
|
|
||||||
return MyExperienceWidget(
|
return MyExperienceWidget(
|
||||||
index: index,
|
index: index,
|
||||||
bookExperienceListController: controller);
|
bookExperienceListController: controller);
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class _MinePageState extends State<NewMinePage> {
|
|||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class _SettingPageState extends State<SettingPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(builder: (context, bodySize) {
|
return LayoutBuilder(builder: (context, bodySize) {
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class _PrivacyPolicyPageState extends State<PrivacyPolicyPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -71,6 +71,7 @@ class _PrivacyPolicyPageState extends State<PrivacyPolicyPage> {
|
|||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
||||||
/// 左边返回按钮
|
/// 左边返回按钮
|
||||||
Positioned(
|
Positioned(
|
||||||
left: 0,
|
left: 0,
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return WillPopScope(
|
return WillPopScope(
|
||||||
child: GestureDetector(
|
child: GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -142,8 +142,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
borderRadius: BorderRadius.circular(8),
|
borderRadius: BorderRadius.circular(8),
|
||||||
),
|
),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
34.rpx, 10, 0, 0),
|
34.rpx, 10, 0, 0),
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(),
|
decoration: const BoxDecoration(),
|
||||||
@@ -177,8 +176,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
'未命名'),
|
'未命名'),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -198,8 +197,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -218,8 +217,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
'未命名'),
|
'未命名'),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -239,8 +238,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
'未命名'),
|
'未命名'),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -253,12 +252,12 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
child: Text(
|
child: Text(
|
||||||
'提交时间:' +
|
'提交时间:' +
|
||||||
(MyUtils.formatDateTimeDay(
|
(MyUtils.formatDateTimeDay(
|
||||||
data['device'][0][
|
data['device'][0]
|
||||||
'create_time']!)),
|
['create_time']!)),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -275,8 +274,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
'未命名'),
|
'未命名'),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
color: const Color(
|
color:
|
||||||
0xFF929699),
|
const Color(0xFF929699),
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -285,14 +284,13 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding:
|
||||||
const EdgeInsetsDirectional
|
const EdgeInsetsDirectional
|
||||||
.fromSTEB(
|
.fromSTEB(0, 10, 0, 24),
|
||||||
0, 10, 0, 24),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(
|
width:
|
||||||
context)
|
MediaQuery.sizeOf(context)
|
||||||
.width,
|
.width,
|
||||||
height: MediaQuery.sizeOf(
|
height:
|
||||||
context)
|
MediaQuery.sizeOf(context)
|
||||||
.height *
|
.height *
|
||||||
0.15,
|
0.15,
|
||||||
constraints:
|
constraints:
|
||||||
@@ -303,30 +301,25 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
child: Container(
|
child: Container(
|
||||||
width: 100,
|
width: 100,
|
||||||
height: 100,
|
height: 100,
|
||||||
child: Obx(() =>
|
child: Obx(() => ListView(
|
||||||
ListView(
|
shrinkWrap: true,
|
||||||
shrinkWrap:
|
|
||||||
true,
|
|
||||||
scrollDirection:
|
scrollDirection:
|
||||||
Axis
|
Axis.horizontal,
|
||||||
.horizontal,
|
children: getImage(
|
||||||
children: getImage(controller
|
controller
|
||||||
.model
|
.model
|
||||||
.applyRepairModel!)
|
.applyRepairModel!)
|
||||||
.divide(
|
.divide(
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
width:
|
width: 12,
|
||||||
12,
|
|
||||||
))
|
))
|
||||||
.addToStart(
|
.addToStart(
|
||||||
const SizedBox(
|
const SizedBox(
|
||||||
width:
|
width: 0,
|
||||||
0,
|
|
||||||
))))),
|
))))),
|
||||||
)),
|
)),
|
||||||
]
|
]
|
||||||
.divide(
|
.divide(const SizedBox(height: 5))
|
||||||
const SizedBox(height: 5))
|
|
||||||
.addToStart(const SizedBox(
|
.addToStart(const SizedBox(
|
||||||
height: 5,
|
height: 5,
|
||||||
)),
|
)),
|
||||||
@@ -335,12 +328,11 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Padding(
|
Padding(
|
||||||
padding:
|
padding: const EdgeInsetsDirectional.fromSTEB(
|
||||||
const EdgeInsetsDirectional.fromSTEB(
|
|
||||||
0, 25, 0, 25), // 设置上下间距为 34
|
0, 25, 0, 25), // 设置上下间距为 34
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment: AlignmentDirectional
|
alignment:
|
||||||
.centerStart, // 文字左对齐
|
AlignmentDirectional.centerStart, // 文字左对齐
|
||||||
child: Text(
|
child: Text(
|
||||||
'报修状态',
|
'报修状态',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
@@ -360,15 +352,12 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
const NeverScrollableScrollPhysics(), // 禁用内部滚动,交由外部滚动视图处理
|
const NeverScrollableScrollPhysics(), // 禁用内部滚动,交由外部滚动视图处理
|
||||||
itemCount: events.length,
|
itemCount: events.length,
|
||||||
itemBuilder: (context, index) {
|
itemBuilder: (context, index) {
|
||||||
bool isLast =
|
bool isLast = index == events.length - 1;
|
||||||
index == events.length - 1;
|
|
||||||
return TimelineTile(
|
return TimelineTile(
|
||||||
isFirst: index == 0,
|
isFirst: index == 0,
|
||||||
isLast: isLast,
|
isLast: isLast,
|
||||||
axis:
|
axis: TimelineAxis.vertical, // 垂直方向时间轴
|
||||||
TimelineAxis.vertical, // 垂直方向时间轴
|
alignment: TimelineAlign.start, // 线条左对齐
|
||||||
alignment:
|
|
||||||
TimelineAlign.start, // 线条左对齐
|
|
||||||
lineXY: 0.5, // 线条和圆圈相对位置
|
lineXY: 0.5, // 线条和圆圈相对位置
|
||||||
indicatorStyle: IndicatorStyle(
|
indicatorStyle: IndicatorStyle(
|
||||||
width: 15, // 圆圈的宽度
|
width: 15, // 圆圈的宽度
|
||||||
@@ -388,8 +377,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
beforeLineStyle: LineStyle(
|
beforeLineStyle: LineStyle(
|
||||||
color: stringToColor(
|
color:
|
||||||
"#C8CBD2"), // 上方线条颜色
|
stringToColor("#C8CBD2"), // 上方线条颜色
|
||||||
thickness: 1, // 线条厚度
|
thickness: 1, // 线条厚度
|
||||||
),
|
),
|
||||||
afterLineStyle: LineStyle(
|
afterLineStyle: LineStyle(
|
||||||
@@ -410,22 +399,19 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (RepairStatus.completed ==
|
if (RepairStatus.completed ==
|
||||||
controller.model.applyRepairModel!
|
controller
|
||||||
.status &&
|
.model.applyRepairModel!.status &&
|
||||||
controller.model.applyRepairModel!
|
controller.model.applyRepairModel!.score ==
|
||||||
.score ==
|
|
||||||
null) {
|
null) {
|
||||||
return Align(
|
return Align(
|
||||||
alignment:
|
alignment: const AlignmentDirectional(1, 0),
|
||||||
const AlignmentDirectional(1, 0),
|
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
EdgeInsetsDirectional.fromSTEB(
|
|
||||||
34.rpx, 66.rpx, 0, 48.rpx),
|
34.rpx, 66.rpx, 0, 48.rpx),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 61,
|
width: 61,
|
||||||
height: MediaQuery.sizeOf(context)
|
height:
|
||||||
.height *
|
MediaQuery.sizeOf(context).height *
|
||||||
0.03,
|
0.03,
|
||||||
constraints: const BoxConstraints(
|
constraints: const BoxConstraints(
|
||||||
minHeight: 24,
|
minHeight: 24,
|
||||||
@@ -438,8 +424,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
text: '待评价',
|
text: '待评价',
|
||||||
options: FFButtonOptions(
|
options: FFButtonOptions(
|
||||||
height: 40,
|
height: 40,
|
||||||
padding:
|
padding: const EdgeInsetsDirectional
|
||||||
const EdgeInsetsDirectional
|
|
||||||
.fromSTEB(0, 0, 0, 0),
|
.fromSTEB(0, 0, 0, 0),
|
||||||
iconPadding:
|
iconPadding:
|
||||||
const EdgeInsetsDirectional
|
const EdgeInsetsDirectional
|
||||||
@@ -451,8 +436,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
// color: Color(0xFF333333),
|
// color: Color(0xFF333333),
|
||||||
// color: stringToColor("#D3B684"),
|
// color: stringToColor("#D3B684"),
|
||||||
color:
|
color: stringToColor("#117EFD"),
|
||||||
stringToColor("#117EFD"),
|
|
||||||
fontSize: 11,
|
fontSize: 11,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -460,8 +444,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
borderSide: BorderSide(
|
borderSide: BorderSide(
|
||||||
// color: Color(0xFFC8CBD2),
|
// color: Color(0xFFC8CBD2),
|
||||||
// color: stringToColor("#D3B684"),
|
// color: stringToColor("#D3B684"),
|
||||||
color:
|
color: stringToColor("#117EFD"),
|
||||||
stringToColor("#117EFD"),
|
|
||||||
width: 1,
|
width: 1,
|
||||||
),
|
),
|
||||||
borderRadius:
|
borderRadius:
|
||||||
@@ -476,17 +459,15 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
}),
|
}),
|
||||||
Obx(() {
|
Obx(() {
|
||||||
if (RepairStatus.completed ==
|
if (RepairStatus.completed ==
|
||||||
controller.model.applyRepairModel!
|
controller
|
||||||
.status &&
|
.model.applyRepairModel!.status &&
|
||||||
controller.model.applyRepairModel!
|
controller.model.applyRepairModel!.score !=
|
||||||
.score !=
|
|
||||||
null) {
|
null) {
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding: EdgeInsetsDirectional.fromSTEB(
|
||||||
0, 0, 0, 10.rpx),
|
0, 0, 0, 10.rpx),
|
||||||
child: Container(
|
child: Container(
|
||||||
width:
|
width: MediaQuery.sizeOf(context).width,
|
||||||
MediaQuery.sizeOf(context).width,
|
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.white, //true
|
color: Colors.white, //true
|
||||||
borderRadius:
|
borderRadius:
|
||||||
@@ -506,8 +487,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
.fromSTEB(
|
.fromSTEB(
|
||||||
17, 0, 30, 10),
|
17, 0, 30, 10),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(
|
width:
|
||||||
context)
|
MediaQuery.sizeOf(context)
|
||||||
.width,
|
.width,
|
||||||
height: 30,
|
height: 30,
|
||||||
decoration:
|
decoration:
|
||||||
@@ -535,13 +516,11 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
const AlignmentDirectional(
|
const AlignmentDirectional(
|
||||||
-1, 0),
|
-1, 0),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding:
|
padding: EdgeInsetsDirectional
|
||||||
EdgeInsetsDirectional
|
.fromSTEB(
|
||||||
.fromSTEB(34.rpx,
|
34.rpx, 0, 0, 0),
|
||||||
0, 0, 0),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width:
|
width: MediaQuery.sizeOf(
|
||||||
MediaQuery.sizeOf(
|
|
||||||
context)
|
context)
|
||||||
.width,
|
.width,
|
||||||
constraints:
|
constraints:
|
||||||
@@ -560,7 +539,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
const AlignmentDirectional(
|
const AlignmentDirectional(
|
||||||
-1, 0),
|
-1, 0),
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: EdgeInsetsDirectional
|
padding:
|
||||||
|
EdgeInsetsDirectional
|
||||||
.fromSTEB(
|
.fromSTEB(
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
@@ -573,8 +553,7 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
.model
|
.model
|
||||||
.applyRepairModel!
|
.applyRepairModel!
|
||||||
.score_time!),
|
.score_time!),
|
||||||
style:
|
style: TextStyle(
|
||||||
TextStyle(
|
|
||||||
fontFamily:
|
fontFamily:
|
||||||
'Readex Pro',
|
'Readex Pro',
|
||||||
fontSize:
|
fontSize:
|
||||||
@@ -588,16 +567,13 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
Row(
|
Row(
|
||||||
mainAxisSize:
|
mainAxisSize:
|
||||||
MainAxisSize
|
MainAxisSize.max,
|
||||||
.max,
|
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment:
|
||||||
const AlignmentDirectional(
|
const AlignmentDirectional(
|
||||||
-1,
|
-1, 0),
|
||||||
0),
|
child: Padding(
|
||||||
child:
|
|
||||||
Padding(
|
|
||||||
padding:
|
padding:
|
||||||
const EdgeInsetsDirectional
|
const EdgeInsetsDirectional
|
||||||
.fromSTEB(
|
.fromSTEB(
|
||||||
@@ -612,7 +588,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
fontFamily:
|
fontFamily:
|
||||||
'Readex Pro',
|
'Readex Pro',
|
||||||
fontSize:
|
fontSize:
|
||||||
AppFontsize.normal_text_size,
|
AppFontsize
|
||||||
|
.normal_text_size,
|
||||||
letterSpacing:
|
letterSpacing:
|
||||||
0.0,
|
0.0,
|
||||||
),
|
),
|
||||||
@@ -692,8 +669,8 @@ class RepairHistoryListPage extends GetView<RepairInfoController> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
.divide(const SizedBox(
|
.divide(
|
||||||
height: 0))
|
const SizedBox(height: 0))
|
||||||
.addToStart(const SizedBox(
|
.addToStart(const SizedBox(
|
||||||
height: 5,
|
height: 5,
|
||||||
))
|
))
|
||||||
|
|||||||
@@ -39,11 +39,10 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -104,8 +103,7 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
padding: EdgeInsets.fromLTRB(
|
padding: EdgeInsets.fromLTRB(
|
||||||
27.rpx, 49.rpx, 43.rpx, 39.rpx),
|
27.rpx, 49.rpx, 43.rpx, 39.rpx),
|
||||||
child: Column(
|
child: Column(
|
||||||
crossAxisAlignment:
|
crossAxisAlignment: CrossAxisAlignment.center,
|
||||||
CrossAxisAlignment.center,
|
|
||||||
children: [
|
children: [
|
||||||
// 固定的标题部分
|
// 固定的标题部分
|
||||||
Text(
|
Text(
|
||||||
@@ -132,8 +130,7 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
text:
|
text:
|
||||||
"尊敬的用户,感谢您选择我司产品。在使用过程中,如果设备出现故障需要维修,请首先确认设备是否正确连接控制器或网络,检查设置是否正常,排除误操作问题。若问题依然存在,请记录下设备名称、设备编号、和具体故障内容,方便我们快速地为您提供帮助。您可以通过智慧棉花糖APP保修页面直接报修或拨打 ",
|
"尊敬的用户,感谢您选择我司产品。在使用过程中,如果设备出现故障需要维修,请首先确认设备是否正确连接控制器或网络,检查设置是否正常,排除误操作问题。若问题依然存在,请记录下设备名称、设备编号、和具体故障内容,方便我们快速地为您提供帮助。您可以通过智慧棉花糖APP保修页面直接报修或拨打 ",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color:
|
color: Color(0XFF929699),
|
||||||
Color(0XFF929699),
|
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
height: 1.3)),
|
height: 1.3)),
|
||||||
TextSpan(
|
TextSpan(
|
||||||
@@ -143,12 +140,10 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
// height: 1.3,
|
// height: 1.3,
|
||||||
decoration: TextDecoration
|
decoration: TextDecoration
|
||||||
.underline, // 添加下划线
|
.underline, // 添加下划线
|
||||||
decorationColor:
|
decorationColor: Colors.white,
|
||||||
Colors.white,
|
|
||||||
decorationThickness: 4.rpx,
|
decorationThickness: 4.rpx,
|
||||||
),
|
),
|
||||||
recognizer:
|
recognizer: TapGestureRecognizer()
|
||||||
TapGestureRecognizer()
|
|
||||||
..onTap = () {
|
..onTap = () {
|
||||||
MyUtils.makePhoneCall(
|
MyUtils.makePhoneCall(
|
||||||
"400-8756-966");
|
"400-8756-966");
|
||||||
@@ -157,8 +152,7 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
TextSpan(
|
TextSpan(
|
||||||
text: " 反馈。",
|
text: " 反馈。",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color:
|
color: Color(0XFF929699),
|
||||||
Color(0XFF929699),
|
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
height: 1.3)),
|
height: 1.3)),
|
||||||
],
|
],
|
||||||
@@ -237,8 +231,7 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
// 替换原来的 Obx(() => Visibility(...))
|
// 替换原来的 Obx(() => Visibility(...))
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
final hasData =
|
final hasData = controller.model.repairList != null &&
|
||||||
controller.model.repairList != null &&
|
|
||||||
controller.model.repairList!.isNotEmpty;
|
controller.model.repairList!.isNotEmpty;
|
||||||
return hasData
|
return hasData
|
||||||
? ListView(
|
? ListView(
|
||||||
@@ -250,8 +243,7 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
.entries
|
.entries
|
||||||
.map((e) => RepairHistoryWidget(
|
.map((e) => RepairHistoryWidget(
|
||||||
index: e.key,
|
index: e.key,
|
||||||
repairListController:
|
repairListController: controller,
|
||||||
controller,
|
|
||||||
))
|
))
|
||||||
.toList(),
|
.toList(),
|
||||||
)
|
)
|
||||||
@@ -264,6 +256,4 @@ class DeviceRepairPage extends GetView<RepairListController> {
|
|||||||
));
|
));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ class _RoomPickerPageState extends State<RoomPickerPage> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import 'package:vbvs_app/common/util/FitTool.dart';
|
|||||||
import 'package:vbvs_app/common/util/MyUtils.dart';
|
import 'package:vbvs_app/common/util/MyUtils.dart';
|
||||||
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||||
import 'package:vbvs_app/controller/mh_controller/score_controller.dart' as mh;
|
import 'package:vbvs_app/controller/mh_controller/score_controller.dart' as mh;
|
||||||
|
|
||||||
class ScorePage extends GetView<mh.ScoreController> {
|
class ScorePage extends GetView<mh.ScoreController> {
|
||||||
BoxConstraints? bodysize;
|
BoxConstraints? bodysize;
|
||||||
final scaffoldKey = GlobalKey<ScaffoldState>();
|
final scaffoldKey = GlobalKey<ScaffoldState>();
|
||||||
@@ -18,7 +19,7 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -104,8 +105,7 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
MainAxisAlignment.spaceBetween,
|
MainAxisAlignment.spaceBetween,
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: Text(
|
child: Text(
|
||||||
'我要评价'.tr,
|
'我要评价'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
@@ -131,10 +131,8 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
color: controller
|
color: controller
|
||||||
.model.score! >=
|
.model.score! >=
|
||||||
1
|
1
|
||||||
? stringToColor(
|
? stringToColor("#F8AE00")
|
||||||
"#F8AE00")
|
: stringToColor("#D0D0D0"),
|
||||||
: stringToColor(
|
|
||||||
"#D0D0D0"),
|
|
||||||
size: 40,
|
size: 40,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@@ -150,10 +148,8 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
color: controller
|
color: controller
|
||||||
.model.score! >=
|
.model.score! >=
|
||||||
2
|
2
|
||||||
? stringToColor(
|
? stringToColor("#F8AE00")
|
||||||
"#F8AE00")
|
: stringToColor("#D0D0D0"),
|
||||||
: stringToColor(
|
|
||||||
"#D0D0D0"),
|
|
||||||
size: 40,
|
size: 40,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@@ -169,10 +165,8 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
color: controller
|
color: controller
|
||||||
.model.score! >=
|
.model.score! >=
|
||||||
3
|
3
|
||||||
? stringToColor(
|
? stringToColor("#F8AE00")
|
||||||
"#F8AE00")
|
: stringToColor("#D0D0D0"),
|
||||||
: stringToColor(
|
|
||||||
"#D0D0D0"),
|
|
||||||
size: 40,
|
size: 40,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@@ -188,10 +182,8 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
color: controller
|
color: controller
|
||||||
.model.score! >=
|
.model.score! >=
|
||||||
4
|
4
|
||||||
? stringToColor(
|
? stringToColor("#F8AE00")
|
||||||
"#F8AE00")
|
: stringToColor("#D0D0D0"),
|
||||||
: stringToColor(
|
|
||||||
"#D0D0D0"),
|
|
||||||
size: 40,
|
size: 40,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@@ -207,10 +199,8 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
color: controller
|
color: controller
|
||||||
.model.score! >=
|
.model.score! >=
|
||||||
5
|
5
|
||||||
? stringToColor(
|
? stringToColor("#F8AE00")
|
||||||
"#F8AE00")
|
: stringToColor("#D0D0D0"),
|
||||||
: stringToColor(
|
|
||||||
"#D0D0D0"),
|
|
||||||
size: 40,
|
size: 40,
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
@@ -243,15 +233,13 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
width: bodysize!.maxWidth,
|
width: bodysize!.maxWidth,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Color(0xFF003058),
|
color: Color(0xFF003058),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(16.rpx),
|
||||||
BorderRadius.circular(16.rpx),
|
|
||||||
),
|
),
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
String scoreText;
|
String scoreText;
|
||||||
Color scoreColor;
|
Color scoreColor;
|
||||||
@@ -259,35 +247,29 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
scoreText = '差';
|
scoreText = '差';
|
||||||
scoreColor =
|
scoreColor =
|
||||||
stringToColor("#E55E92");
|
stringToColor("#E55E92");
|
||||||
} else if (controller
|
} else if (controller.model.score ==
|
||||||
.model.score ==
|
|
||||||
2) {
|
2) {
|
||||||
scoreText = '较差';
|
scoreText = '较差';
|
||||||
scoreColor =
|
scoreColor =
|
||||||
stringToColor("#E55E92");
|
stringToColor("#E55E92");
|
||||||
} else if (controller
|
} else if (controller.model.score ==
|
||||||
.model.score ==
|
|
||||||
3) {
|
3) {
|
||||||
scoreText = '一般';
|
scoreText = '一般';
|
||||||
scoreColor =
|
scoreColor =
|
||||||
stringToColor("#07C160");
|
stringToColor("#07C160");
|
||||||
} else if (controller
|
} else if (controller.model.score ==
|
||||||
.model.score ==
|
|
||||||
4) {
|
4) {
|
||||||
scoreText = '优秀';
|
scoreText = '优秀';
|
||||||
scoreColor =
|
scoreColor =
|
||||||
stringToColor("#F8AE00");
|
stringToColor("#F8AE00");
|
||||||
} else if (controller
|
} else if (controller.model.score ==
|
||||||
.model.score ==
|
|
||||||
5) {
|
5) {
|
||||||
scoreText = '完美';
|
scoreText = '完美';
|
||||||
scoreColor =
|
scoreColor =
|
||||||
stringToColor("#F8AE00");
|
stringToColor("#F8AE00");
|
||||||
} else {
|
} else {
|
||||||
scoreText =
|
scoreText = '未评分'; // 如果没有评分显示默认文字
|
||||||
'未评分'; // 如果没有评分显示默认文字
|
scoreColor = Colors.grey; // 默认颜色
|
||||||
scoreColor =
|
|
||||||
Colors.grey; // 默认颜色
|
|
||||||
}
|
}
|
||||||
return Text(
|
return Text(
|
||||||
scoreText,
|
scoreText,
|
||||||
@@ -296,17 +278,16 @@ class ScorePage extends GetView<mh.ScoreController> {
|
|||||||
fontSize: 30.rpx,
|
fontSize: 30.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
color: scoreColor,
|
color: scoreColor,
|
||||||
fontWeight:
|
fontWeight: FontWeight.bold),
|
||||||
FontWeight.bold),
|
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(-1, 0),
|
||||||
AlignmentDirectional(-1, 0),
|
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: EdgeInsetsDirectional
|
padding:
|
||||||
.fromSTEB(0, 17, 0, 0),
|
EdgeInsetsDirectional.fromSTEB(
|
||||||
|
0, 17, 0, 0),
|
||||||
child: Text(
|
child: Text(
|
||||||
'再多的溢美之词,都比不上您真心的评价。我们愿付出200%的努力,只为您100%的满意~感谢您的支持与厚爱!',
|
'再多的溢美之词,都比不上您真心的评价。我们愿付出200%的努力,只为您100%的满意~感谢您的支持与厚爱!',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class _SleepHabitPageState extends State<SleepHabitPage> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
|
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -109,8 +109,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border(
|
border: Border(
|
||||||
bottom: BorderSide(
|
bottom: BorderSide(
|
||||||
color: const Color(0xFF929699),
|
color: const Color(0xFF929699), width: 0.rpx),
|
||||||
width: 0.rpx),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
@@ -121,8 +120,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
39.rpx, 0.rpx, 15.rpx, 0.rpx),
|
39.rpx, 0.rpx, 15.rpx, 0.rpx),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'睡眠隐私功能'.tr,
|
'睡眠隐私功能'.tr,
|
||||||
@@ -172,8 +170,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height:
|
height: MediaQuery.sizeOf(context).height * 0.055,
|
||||||
MediaQuery.sizeOf(context).height * 0.055,
|
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border(
|
border: Border(
|
||||||
bottom: BorderSide(
|
bottom: BorderSide(
|
||||||
@@ -251,8 +248,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border(
|
border: Border(
|
||||||
bottom: BorderSide(
|
bottom: BorderSide(
|
||||||
color: const Color(0xFF929699),
|
color: const Color(0xFF929699), width: 0.rpx),
|
||||||
width: 0.rpx),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
@@ -263,8 +259,7 @@ class Smys extends GetView<SleepingHabitController> {
|
|||||||
39.rpx, 0.rpx, 30.rpx, 0.rpx),
|
39.rpx, 0.rpx, 30.rpx, 0.rpx),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'结束时间'.tr,
|
'结束时间'.tr,
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class _UpdateUserPageState extends State<EditUserPage> {
|
|||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -114,12 +114,10 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
height: bodysize!.maxHeight * 0.06,
|
height: bodysize!.maxHeight * 0.06,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Color(0xFFF3F5F6),
|
color: Color(0xFFF3F5F6),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(12),
|
||||||
BorderRadius.circular(12),
|
|
||||||
),
|
),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
// focusNode: _focusNode1,
|
// focusNode: _focusNode1,
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
@@ -146,9 +144,8 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
contentPadding:
|
contentPadding:
|
||||||
EdgeInsetsDirectional
|
EdgeInsetsDirectional.fromSTEB(
|
||||||
.fromSTEB(20.rpx, 0, 0,
|
20.rpx, 0, 0, 0.rpx),
|
||||||
0.rpx),
|
|
||||||
),
|
),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
@@ -170,8 +167,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
child: Stack(
|
child: Stack(
|
||||||
children: [
|
children: [
|
||||||
Align(
|
Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: Container(
|
child: Container(
|
||||||
width: bodysize!.maxWidth,
|
width: bodysize!.maxWidth,
|
||||||
height: 92.rpx,
|
height: 92.rpx,
|
||||||
@@ -182,29 +178,24 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
),
|
),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment:
|
||||||
AlignmentDirectional(
|
AlignmentDirectional(0, 0),
|
||||||
0, 0),
|
|
||||||
child: TextFormField(
|
child: TextFormField(
|
||||||
// autofocus: true,
|
// autofocus: true,
|
||||||
// focusNode: _focusNode2,
|
// focusNode: _focusNode2,
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
controller.model.code =
|
controller.model.code = value;
|
||||||
value;
|
|
||||||
},
|
},
|
||||||
obscureText: false,
|
obscureText: false,
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
labelStyle: TextStyle(
|
labelStyle: TextStyle(
|
||||||
fontFamily:
|
fontFamily: 'Readex Pro',
|
||||||
'Readex Pro',
|
|
||||||
fontSize: 20.rpx,
|
fontSize: 20.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
hintText: '请输验证码'.tr,
|
hintText: '请输验证码'.tr,
|
||||||
hintStyle: TextStyle(
|
hintStyle: TextStyle(
|
||||||
fontFamily:
|
fontFamily: 'Readex Pro',
|
||||||
'Readex Pro',
|
color: Color(0xFF929699),
|
||||||
color:
|
|
||||||
Color(0xFF929699),
|
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -212,14 +203,13 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
focusedBorder:
|
focusedBorder:
|
||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
errorBorder:
|
errorBorder: InputBorder.none,
|
||||||
InputBorder.none,
|
|
||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
contentPadding:
|
contentPadding:
|
||||||
EdgeInsetsDirectional
|
EdgeInsetsDirectional
|
||||||
.fromSTEB(20.rpx,
|
.fromSTEB(20.rpx, 0,
|
||||||
0, 0, 0.rpx),
|
0, 0.rpx),
|
||||||
),
|
),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontFamily: 'Readex Pro',
|
fontFamily: 'Readex Pro',
|
||||||
@@ -231,14 +221,13 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Align(
|
Align(
|
||||||
alignment: AlignmentDirectional(
|
alignment:
|
||||||
0.4, 0.1),
|
AlignmentDirectional(0.4, 0.1),
|
||||||
child: Container(
|
child: Container(
|
||||||
width: 1.rpx,
|
width: 1.rpx,
|
||||||
height: 38.rpx,
|
height: 38.rpx,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color:
|
color: stringToColor("#929699"),
|
||||||
stringToColor("#929699"),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@@ -246,10 +235,8 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
alignment:
|
alignment:
|
||||||
AlignmentDirectional(1.2, 0),
|
AlignmentDirectional(1.2, 0),
|
||||||
child: Container(
|
child: Container(
|
||||||
width:
|
width: bodysize!.maxWidth * 0.157,
|
||||||
bodysize!.maxWidth * 0.157,
|
height: bodysize!.maxHeight * 0.014,
|
||||||
height:
|
|
||||||
bodysize!.maxHeight * 0.014,
|
|
||||||
constraints: BoxConstraints(
|
constraints: BoxConstraints(
|
||||||
minWidth: 118,
|
minWidth: 118,
|
||||||
minHeight: 30,
|
minHeight: 30,
|
||||||
@@ -257,8 +244,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
decoration: BoxDecoration(),
|
decoration: BoxDecoration(),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment:
|
||||||
AlignmentDirectional(
|
AlignmentDirectional(0, 0),
|
||||||
0, 0),
|
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
final CountdownController
|
final CountdownController
|
||||||
countdownController =
|
countdownController =
|
||||||
@@ -267,8 +253,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
return InkWell(
|
return InkWell(
|
||||||
onTap: () async {
|
onTap: () async {
|
||||||
if (countdownController
|
if (countdownController
|
||||||
.countdown
|
.countdown.value !=
|
||||||
.value !=
|
|
||||||
0) {
|
0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -288,8 +273,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
}
|
}
|
||||||
String msg =
|
String msg =
|
||||||
await controller
|
await controller
|
||||||
.getCode(
|
.getCode(context);
|
||||||
context);
|
|
||||||
if (msg.isNotEmpty) {
|
if (msg.isNotEmpty) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -312,8 +296,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
: '${countdownController.countdown.value}' +
|
: '${countdownController.countdown.value}' +
|
||||||
'秒'.tr,
|
'秒'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color:
|
color: Color(0xFF333333),
|
||||||
Color(0xFF333333),
|
|
||||||
fontSize: 20.rpx,
|
fontSize: 20.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
@@ -339,12 +322,10 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
height: bodysize!.maxHeight * 0.06,
|
height: bodysize!.maxHeight * 0.06,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Color(0xFFF3F5F6),
|
color: Color(0xFFF3F5F6),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(12),
|
||||||
BorderRadius.circular(12),
|
|
||||||
),
|
),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
return TextFormField(
|
return TextFormField(
|
||||||
// autofocus: true,
|
// autofocus: true,
|
||||||
@@ -368,10 +349,8 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
enabledBorder:
|
enabledBorder: InputBorder.none,
|
||||||
InputBorder.none,
|
focusedBorder: InputBorder.none,
|
||||||
focusedBorder:
|
|
||||||
InputBorder.none,
|
|
||||||
errorBorder: InputBorder.none,
|
errorBorder: InputBorder.none,
|
||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
@@ -391,8 +370,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
onPressed: () {
|
onPressed: () {
|
||||||
// 切换 pdshow 状态
|
// 切换 pdshow 状态
|
||||||
controller.model.pdshow =
|
controller.model.pdshow =
|
||||||
!controller
|
!controller.model.pdshow!;
|
||||||
.model.pdshow!;
|
|
||||||
controller.updateAll();
|
controller.updateAll();
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
@@ -420,19 +398,16 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
height: bodysize!.maxHeight * 0.06,
|
height: bodysize!.maxHeight * 0.06,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Color(0xFFF3F5F6),
|
color: Color(0xFFF3F5F6),
|
||||||
borderRadius:
|
borderRadius: BorderRadius.circular(12),
|
||||||
BorderRadius.circular(12),
|
|
||||||
),
|
),
|
||||||
child: Align(
|
child: Align(
|
||||||
alignment:
|
alignment: AlignmentDirectional(0, 0),
|
||||||
AlignmentDirectional(0, 0),
|
|
||||||
child: Obx(() {
|
child: Obx(() {
|
||||||
return TextFormField(
|
return TextFormField(
|
||||||
// autofocus: true,
|
// autofocus: true,
|
||||||
// focusNode: _focusNode2,
|
// focusNode: _focusNode2,
|
||||||
onChanged: (value) {
|
onChanged: (value) {
|
||||||
controller.model.confirm =
|
controller.model.confirm = value;
|
||||||
value;
|
|
||||||
},
|
},
|
||||||
// obscureText: true,
|
// obscureText: true,
|
||||||
obscureText:
|
obscureText:
|
||||||
@@ -450,10 +425,8 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
),
|
),
|
||||||
enabledBorder:
|
enabledBorder: InputBorder.none,
|
||||||
InputBorder.none,
|
focusedBorder: InputBorder.none,
|
||||||
focusedBorder:
|
|
||||||
InputBorder.none,
|
|
||||||
errorBorder: InputBorder.none,
|
errorBorder: InputBorder.none,
|
||||||
focusedErrorBorder:
|
focusedErrorBorder:
|
||||||
InputBorder.none,
|
InputBorder.none,
|
||||||
@@ -526,8 +499,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
onTap: () async {
|
onTap: () async {
|
||||||
if (CommonVariables.isNetWorkOn ==
|
if (CommonVariables.isNetWorkOn ==
|
||||||
false) {
|
false) {
|
||||||
TopSlideNotification.show(
|
TopSlideNotification.show(context,
|
||||||
context,
|
|
||||||
text: "网络未连接,请开启设备网络后重试".tr,
|
text: "网络未连接,请开启设备网络后重试".tr,
|
||||||
textColor: themeController
|
textColor: themeController
|
||||||
.currentColor.sc9);
|
.currentColor.sc9);
|
||||||
@@ -552,8 +524,7 @@ class FindPasswordPage extends GetView<FindPasswordController> {
|
|||||||
alignment: Alignment.center,
|
alignment: Alignment.center,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
borderRadius:
|
borderRadius:
|
||||||
BorderRadius.circular(
|
BorderRadius.circular(16.rpx),
|
||||||
16.rpx),
|
|
||||||
),
|
),
|
||||||
child: Text(
|
child: Text(
|
||||||
"提交",
|
"提交",
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ class MHTLoginPage extends GetView<MHTLoginController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -1458,7 +1458,8 @@ class MHTLoginPage extends GetView<MHTLoginController> {
|
|||||||
color:
|
color:
|
||||||
stringToColor(
|
stringToColor(
|
||||||
"FF9F66"),
|
"FF9F66"),
|
||||||
fontSize: 23.rpx,
|
fontSize:
|
||||||
|
23.rpx,
|
||||||
letterSpacing:
|
letterSpacing:
|
||||||
0,
|
0,
|
||||||
),
|
),
|
||||||
@@ -1504,7 +1505,8 @@ class MHTLoginPage extends GetView<MHTLoginController> {
|
|||||||
color:
|
color:
|
||||||
stringToColor(
|
stringToColor(
|
||||||
"FF9F66"),
|
"FF9F66"),
|
||||||
fontSize: 23.rpx,
|
fontSize:
|
||||||
|
23.rpx,
|
||||||
letterSpacing:
|
letterSpacing:
|
||||||
0,
|
0,
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ class _RxhxMhtState extends State<RxhxMht> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, boxConstraints) => GestureDetector(
|
builder: (context, boxConstraints) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: const BoxDecoration(
|
decoration: const BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -312,8 +312,7 @@ class _RxhxMhtState extends State<RxhxMht> {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
margin:
|
margin: EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
||||||
EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: 90.rpx,
|
height: 90.rpx,
|
||||||
decoration: const BoxDecoration(),
|
decoration: const BoxDecoration(),
|
||||||
@@ -375,15 +374,13 @@ class _RxhxMhtState extends State<RxhxMht> {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
margin:
|
margin: EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
||||||
EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: 90.rpx,
|
height: 90.rpx,
|
||||||
decoration: const BoxDecoration(),
|
decoration: const BoxDecoration(),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'按摩',
|
'按摩',
|
||||||
@@ -437,15 +434,13 @@ class _RxhxMhtState extends State<RxhxMht> {
|
|||||||
);
|
);
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
margin:
|
margin: EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
||||||
EdgeInsets.only(left: 40.rpx, right: 30.rpx),
|
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height: 90.rpx,
|
height: 90.rpx,
|
||||||
decoration: const BoxDecoration(),
|
decoration: const BoxDecoration(),
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
mainAxisAlignment:
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'唤醒部位',
|
'唤醒部位',
|
||||||
@@ -566,38 +561,33 @@ class _RxhxMhtState extends State<RxhxMht> {
|
|||||||
// ),
|
// ),
|
||||||
// ),
|
// ),
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsetsDirectional.fromSTEB(
|
padding:
|
||||||
0, 20.rpx, 0, 0),
|
EdgeInsetsDirectional.fromSTEB(0, 20.rpx, 0, 0),
|
||||||
child: SizedBox(
|
child: SizedBox(
|
||||||
width: double.infinity,
|
width: double.infinity,
|
||||||
height:
|
height: MediaQuery.sizeOf(context).height * 0.046,
|
||||||
MediaQuery.sizeOf(context).height * 0.046,
|
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment:
|
mainAxisAlignment:
|
||||||
MainAxisAlignment.spaceBetween,
|
MainAxisAlignment.spaceBetween,
|
||||||
children: List.generate(7, (index) {
|
children: List.generate(7, (index) {
|
||||||
final bool selected =
|
final bool selected =
|
||||||
controller.model.rxhxWeeks[index] ==
|
controller.model.rxhxWeeks[index] == 1;
|
||||||
1;
|
|
||||||
return InkWell(
|
return InkWell(
|
||||||
onTap: () {
|
onTap: () {
|
||||||
controller.attr.update((getmodel) {
|
controller.attr.update((getmodel) {
|
||||||
getmodel.model.rxhxWeeks[index] =
|
getmodel.model.rxhxWeeks[index] =
|
||||||
getmodel.model
|
getmodel.model.rxhxWeeks[index] == 0
|
||||||
.rxhxWeeks[index] ==
|
|
||||||
0
|
|
||||||
? 1
|
? 1
|
||||||
: 0;
|
: 0;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
borderRadius: BorderRadius.circular(
|
borderRadius:
|
||||||
50), // 点击水波圆角区域
|
BorderRadius.circular(50), // 点击水波圆角区域
|
||||||
child: Container(
|
child: Container(
|
||||||
width: MediaQuery.sizeOf(context)
|
width: MediaQuery.sizeOf(context).height *
|
||||||
.height *
|
|
||||||
0.046, // 保证是正圆
|
0.046, // 保证是正圆
|
||||||
height: MediaQuery.sizeOf(context)
|
height:
|
||||||
.height *
|
MediaQuery.sizeOf(context).height *
|
||||||
0.046,
|
0.046,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
shape: BoxShape.circle,
|
shape: BoxShape.circle,
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class UpdatePasswordPage extends GetView<UpdatePasswordController> {
|
|||||||
return LayoutBuilder(builder: (context, cc) {
|
return LayoutBuilder(builder: (context, cc) {
|
||||||
bodysize = cc;
|
bodysize = cc;
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class _UserAgreementPageState extends State<UserAgreementPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -61,7 +61,7 @@ class _EPageState extends State<PersonPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ class _UpdatePageState extends State<UpdatePersonPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ class _ApplyRepairPageState extends State<ApplyRepairPage> {
|
|||||||
}
|
}
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class _ApplyRepairSuccessState extends State<ApplyRepairSuccess> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ class _RepairDetailPageState extends State<RepairDetailPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ class _RepairListPageState extends State<RepairListPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -116,7 +116,7 @@ class _CommonMessageSettingPageState extends State<CommonMessageSettingPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodysize) => GestureDetector(
|
builder: (context, bodysize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class _LanguageSettingState extends State<LanguageSetting> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ class BarChartPainter extends CustomPainter {
|
|||||||
// 缓存 tip 信息
|
// 缓存 tip 信息
|
||||||
if (selectedBar == d) {
|
if (selectedBar == d) {
|
||||||
tipText =
|
tipText =
|
||||||
'${d.name}\n${d.value.toStringAsFixed(1)}\n${MyUtils.formatToHHmm(d.st)}';
|
'${d.name}\n${d.value.toStringAsFixed(1)}次\n${MyUtils.formatToHHmm(d.st)}';
|
||||||
|
|
||||||
final tp = TextPainter(
|
final tp = TextPainter(
|
||||||
text: TextSpan(
|
text: TextSpan(
|
||||||
|
|||||||
@@ -84,9 +84,28 @@ class TimeSeriesChart extends StatelessWidget {
|
|||||||
final xLabels = _generateXLabels();
|
final xLabels = _generateXLabels();
|
||||||
final midY = (yMin + yMax) / 2;
|
final midY = (yMin + yMax) / 2;
|
||||||
|
|
||||||
List<FlSpot> spots = dataPoints.map((p) {
|
// 将数据点分割成多个连续段,遇到value=-1时断开
|
||||||
return FlSpot(_timeToX(p.timestamp.toDouble(), xLabels), p.value);
|
List<List<FlSpot>> lineSegments = [];
|
||||||
}).toList();
|
List<FlSpot> currentSegment = [];
|
||||||
|
|
||||||
|
for (var point in dataPoints) {
|
||||||
|
if (point.value != -1) {
|
||||||
|
// 有效数据点,添加到当前段
|
||||||
|
currentSegment.add(FlSpot(
|
||||||
|
_timeToX(point.timestamp.toDouble(), xLabels),
|
||||||
|
point.value,
|
||||||
|
));
|
||||||
|
} else if (currentSegment.isNotEmpty) {
|
||||||
|
// 遇到无效点且当前段不为空,结束当前段
|
||||||
|
lineSegments.add(currentSegment);
|
||||||
|
currentSegment = [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加最后一个段(如果有)
|
||||||
|
if (currentSegment.isNotEmpty) {
|
||||||
|
lineSegments.add(currentSegment);
|
||||||
|
}
|
||||||
|
|
||||||
return AspectRatio(
|
return AspectRatio(
|
||||||
aspectRatio: 2,
|
aspectRatio: 2,
|
||||||
@@ -204,15 +223,16 @@ class TimeSeriesChart extends StatelessWidget {
|
|||||||
top: BorderSide.none,
|
top: BorderSide.none,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
lineBarsData: [
|
lineBarsData: lineSegments.map((segment) {
|
||||||
LineChartBarData(
|
return LineChartBarData(
|
||||||
spots: spots,
|
spots: segment,
|
||||||
isCurved: false,
|
isCurved: false,
|
||||||
color: themeController.currentColor.sc2,
|
color: themeController.currentColor.sc2,
|
||||||
barWidth: 2,
|
barWidth: 2,
|
||||||
dotData: FlDotData(show: false),
|
dotData: FlDotData(show: false),
|
||||||
)
|
preventCurveOverShooting: true,
|
||||||
],
|
);
|
||||||
|
}).toList(),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -47,11 +47,21 @@ class _BreatheStandardWidgetState extends State<BreatheStandardWidget> {
|
|||||||
final endTime = widget.sleepReport['endTime'];
|
final endTime = widget.sleepReport['endTime'];
|
||||||
List<Map<String, dynamic>> data =
|
List<Map<String, dynamic>> data =
|
||||||
(widget.sleepReport['brbc'] as List).cast<Map<String, dynamic>>();
|
(widget.sleepReport['brbc'] as List).cast<Map<String, dynamic>>();
|
||||||
final dataPoints = data.map((item) {
|
List<TimeSeriesPoint> dataPoints = [];
|
||||||
|
|
||||||
|
if (data != null && data.isNotEmpty) {
|
||||||
|
data.forEach((item) {
|
||||||
final x = item['st'] as int;
|
final x = item['st'] as int;
|
||||||
|
if (item['value'] == null || item['value'] == '') {
|
||||||
|
// return;
|
||||||
|
dataPoints.add(TimeSeriesPoint(x, -1));
|
||||||
|
return;
|
||||||
|
}
|
||||||
final y = (item['value'] as num).toDouble(); // 安全地转换为 double
|
final y = (item['value'] as num).toDouble(); // 安全地转换为 double
|
||||||
return TimeSeriesPoint(x, y);
|
// return TimeSeriesPoint(x, y);
|
||||||
}).toList();
|
dataPoints.add(TimeSeriesPoint(x, y));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
List<Map<String, dynamic>> brs =
|
List<Map<String, dynamic>> brs =
|
||||||
(widget.sleepReport['brs'] as List).cast<Map<String, dynamic>>();
|
(widget.sleepReport['brs'] as List).cast<Map<String, dynamic>>();
|
||||||
@@ -130,7 +140,8 @@ class _BreatheStandardWidgetState extends State<BreatheStandardWidget> {
|
|||||||
Container(
|
Container(
|
||||||
child: Text(
|
child: Text(
|
||||||
// "呼吸数据介绍".tr,
|
// "呼吸数据介绍".tr,
|
||||||
"呼吸数据是指用户在睡眠过程中呼吸的基本数据,是评估睡眠呼吸质量、筛查睡眠呼吸障碍的核心指标。".tr,
|
"呼吸数据是指用户在睡眠过程中呼吸的基本数据,是评估睡眠呼吸质量、筛查睡眠呼吸障碍的核心指标。"
|
||||||
|
.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: themeController.currentColor.sc3,
|
color: themeController.currentColor.sc3,
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import 'package:vbvs_app/pages/device_bind/componnet/bind_dialog.dart';
|
|||||||
import 'package:vbvs_app/pages/sleep_report/chart/TimeSeriesChart.dart';
|
import 'package:vbvs_app/pages/sleep_report/chart/TimeSeriesChart.dart';
|
||||||
import 'package:EasyDartModule/EasyDartModule.dart' as es;
|
import 'package:EasyDartModule/EasyDartModule.dart' as es;
|
||||||
|
|
||||||
|
//心率基准
|
||||||
class HeartRateStandardWidget extends StatefulWidget {
|
class HeartRateStandardWidget extends StatefulWidget {
|
||||||
var sleepReport;
|
var sleepReport;
|
||||||
HeartRateStandardWidget({super.key, required this.sleepReport});
|
HeartRateStandardWidget({super.key, required this.sleepReport});
|
||||||
@@ -48,11 +49,21 @@ class _HeartRateStandardWidgetState extends State<HeartRateStandardWidget> {
|
|||||||
final endTime = widget.sleepReport['endTime'];
|
final endTime = widget.sleepReport['endTime'];
|
||||||
List<Map<String, dynamic>> data =
|
List<Map<String, dynamic>> data =
|
||||||
(widget.sleepReport['hrbc'] as List).cast<Map<String, dynamic>>();
|
(widget.sleepReport['hrbc'] as List).cast<Map<String, dynamic>>();
|
||||||
final dataPoints = data.map((item) {
|
List<TimeSeriesPoint> dataPoints = [];
|
||||||
|
|
||||||
|
if (data != null && data.isNotEmpty) {
|
||||||
|
data.forEach((item) {
|
||||||
final x = item['st'] as int;
|
final x = item['st'] as int;
|
||||||
|
if (item['value'] == null || item['value'] == '') {
|
||||||
|
// return;
|
||||||
|
dataPoints.add(TimeSeriesPoint(x, -1));
|
||||||
|
return;
|
||||||
|
}
|
||||||
final y = (item['value'] as num).toDouble(); // 安全地转换为 double
|
final y = (item['value'] as num).toDouble(); // 安全地转换为 double
|
||||||
return TimeSeriesPoint(x, y);
|
// return TimeSeriesPoint(x, y);
|
||||||
}).toList();
|
dataPoints.add(TimeSeriesPoint(x, y));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
List<Map<String, dynamic>> hrs =
|
List<Map<String, dynamic>> hrs =
|
||||||
(widget.sleepReport['hrs'] as List).cast<Map<String, dynamic>>();
|
(widget.sleepReport['hrs'] as List).cast<Map<String, dynamic>>();
|
||||||
@@ -129,7 +140,8 @@ class _HeartRateStandardWidgetState extends State<HeartRateStandardWidget> {
|
|||||||
Container(
|
Container(
|
||||||
child: Text(
|
child: Text(
|
||||||
// "心率数据介绍".tr,
|
// "心率数据介绍".tr,
|
||||||
"心率数据是指用户在睡眠过程中基本心率数据,可初步判断睡眠中的心血管负荷及自主神经功能状态,为睡眠健康评估提供重要依据。".tr,
|
"心率数据是指用户在睡眠过程中基本心率数据,可初步判断睡眠中的心血管负荷及自主神经功能状态,为睡眠健康评估提供重要依据。"
|
||||||
|
.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 26.rpx,
|
fontSize: 26.rpx,
|
||||||
color: themeController.currentColor.sc3,
|
color: themeController.currentColor.sc3,
|
||||||
@@ -376,7 +388,7 @@ class _HeartRateStandardWidgetState extends State<HeartRateStandardWidget> {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
es.EasyDartModule.logger.error("打鼾监测绘制异常${e}");
|
es.EasyDartModule.logger.error("心率基准绘制异常${e}");
|
||||||
return Container();
|
return Container();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -138,7 +138,7 @@ class _MHTNewSleepReportPageState extends State<MHTNewSleepReportPage> {
|
|||||||
double lineWidth = 115.rpx;
|
double lineWidth = 115.rpx;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ class _NewSleepReportPageState extends State<NewSleepReportPage> {
|
|||||||
double lineWidth = 115.rpx;
|
double lineWidth = 115.rpx;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -153,7 +153,7 @@ class _NewSleepReportPageState extends State<NewSleepReportPage> {
|
|||||||
double lineWidth = 115.rpx;
|
double lineWidth = 115.rpx;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: (widget.data['noBackImg'] != null &&
|
image: (widget.data['noBackImg'] != null &&
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ class _SleepReportPageState extends State<SleepReportPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -117,6 +117,4 @@ class _SleepReportPageState extends State<SleepReportPage> {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,8 +20,7 @@ class _AboutUsPageState extends State<AboutUsPage> {
|
|||||||
// pdfController.loadPdf();
|
// pdfController.loadPdf();
|
||||||
|
|
||||||
widget.webView = MyWebView(
|
widget.webView = MyWebView(
|
||||||
url:
|
url: AppConstants().ent_type == 1
|
||||||
AppConstants().ent_type == 1
|
|
||||||
? "https://mp.weixin.qq.com/s/IAr4RNBy0hGJXGKyMxe7eQ"
|
? "https://mp.weixin.qq.com/s/IAr4RNBy0hGJXGKyMxe7eQ"
|
||||||
: "https://mp.weixin.qq.com/s/7BvvprVDqX1eOzM3Lms8dg",
|
: "https://mp.weixin.qq.com/s/7BvvprVDqX1eOzM3Lms8dg",
|
||||||
onLoad: () {
|
onLoad: () {
|
||||||
@@ -34,7 +33,7 @@ class _AboutUsPageState extends State<AboutUsPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class _PrivacySchemePageState extends State<PrivacySchemePage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ class _SettingPageState extends State<SettingPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
@@ -577,8 +577,10 @@ class _SettingPageState extends State<SettingPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
AppConstants().ent_type == 1? 'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
AppConstants().ent_type == 1
|
||||||
.tr:"Copyright © 202-2025 杭州欢睡科技有限公司 版权所有",
|
? 'Copyright © 202-2025 嘉兴太和信息技术有限责任公司 版权所有'
|
||||||
|
.tr
|
||||||
|
: "Copyright © 202-2025 杭州欢睡科技有限公司 版权所有",
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
color: themeController.currentColor.sc4,
|
color: themeController.currentColor.sc4,
|
||||||
fontFamily: 'Inter',
|
fontFamily: 'Inter',
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class _UpdateUserPageState extends State<UpdateUserPage> {
|
|||||||
int login = userInfoController.model.login!;
|
int login = userInfoController.model.login!;
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ class _UserSchemePageState extends State<UserSchemePage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ class _XiaoEPageState extends State<XiaoEPage> {
|
|||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, bodySize) => GestureDetector(
|
builder: (context, bodySize) => GestureDetector(
|
||||||
onTap: () => FocusScope.of(context).unfocus(),
|
// onTap: () => FocusScope.of(context).unfocus(),,
|
||||||
child: Container(
|
child: Container(
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
image: DecorationImage(
|
image: DecorationImage(
|
||||||
|
|||||||
Reference in New Issue
Block a user