修改房间选择 详情不更改bug 以及部分样式

This commit is contained in:
czz
2025-07-15 14:53:16 +08:00
parent a8b0723714
commit 8ec4da3488
15 changed files with 117 additions and 51 deletions

View File

@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30.41 24.02"><defs><style>.cls-1{fill:#333;}</style></defs><title>资源 1728</title><g id="图层_2" data-name="图层 2"><g id="图层_1-2" data-name="图层 1"><path class="cls-1" d="M23.25,12.48a6.87,6.87,0,1,0-9.3-10A6.86,6.86,0,0,0,4.26,8.8a6.88,6.88,0,0,0,2.9,5.6A11.35,11.35,0,0,0,0,22.83a1,1,0,1,0,2,.38,9.36,9.36,0,0,1,9.15-7.54h0a9.37,9.37,0,0,1,9.16,7.54,1,1,0,0,0,1,.81.65.65,0,0,0,.19,0,1,1,0,0,0,.79-1.17,11.34,11.34,0,0,0-7.15-8.43,7.29,7.29,0,0,0,1.35-1.25,7,7,0,0,0,2.82.6,9.34,9.34,0,0,1,9.15,7.54,1,1,0,0,0,1,.81l.2,0a1,1,0,0,0,.79-1.17A11.33,11.33,0,0,0,23.25,12.48ZM11.14,13.67h0A4.88,4.88,0,1,1,16,8.8a4.88,4.88,0,0,1-4.87,4.87Zm4.51-10a4.87,4.87,0,1,1,3.63,8.12,4.67,4.67,0,0,1-1.78-.35,6.85,6.85,0,0,0-1.85-7.77Z"/></g></g></svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="42" height="42" viewBox="0 0 42 42"><g><g><g><g><g></g></g></g></g><g><g><g><ellipse cx="17.0576171875" cy="17.071533203125" rx="5.875" ry="5.875" fill-opacity="0" stroke-opacity="1" stroke="#85F5FF" fill="none" stroke-width="2" stroke-linecap="ROUND" stroke-linejoin="round"/></g><g><g><path d="M9.811291875,24.5681290625Q6.707501875,27.155049062499998,5.9383838749999995,31.1019390625L7.9014598750000005,31.4844790625Q8.534501875,28.2358890625,11.091781874999999,26.1044690625Q13.681181875,23.9462890625,17.058621875,23.9462890625Q20.435321875,23.9462890625,23.024521875,26.1044490625Q25.581721875,28.2359390625,26.214721875,31.4844790625L28.177821875,31.1019390625Q27.408721875,27.155139062499998,24.305021875,24.5681590625Q21.159521875,21.9462890625,17.058621875,21.9462890625Q12.956991875,21.9462890625,9.811291875,24.5681290625Z" fill-rule="evenodd" fill="#85F5FF" fill-opacity="1"/></g></g></g><g><g><path d="M25.1962846875,20.022216796875Q23.7895446875,20.022216796875,22.6068446875,19.277916796874997L21.5415946875,20.970616796875Q23.2126046875,22.022216796875,25.1962846875,22.022216796875Q28.0442046875,22.022216796875,30.0578546875,20.008316796875Q32.0713046875,17.994676796874998,32.0713046875,15.147216796875Q32.0713046875,12.299316796875,30.057824687500002,10.285796796875Q28.044304687500002,8.272216796875,25.1962846875,8.272216796875Q23.3606346875,8.272216796875,21.7767146875,9.181677396875Q20.2418541875,10.062972796875,19.3207866875,11.574966796875L21.0288226875,12.615456796875Q21.6828546875,11.541816796875,22.7725946875,10.916096796875Q23.8939846875,10.272216796875,25.1962846875,10.272215796875Q27.2158646875,10.272215796875,28.6435946875,11.699986796875Q30.0712846875,13.127726796875,30.0712846875,15.147216796875Q30.0712846875,17.166306796875,28.6435646875,18.594206796875Q27.2157146875,20.022216796875,25.1962846875,20.022216796875Z" fill-rule="evenodd" fill="#85F5FF" fill-opacity="1"/></g><g><g><path d="M32.4431690625,22.643660234374998Q29.2973590625,20.021240234375,25.1962890625,20.021240234375L25.1962890625,22.021240234375Q28.5730690625,22.021240234375,31.1625390625,24.179890234375Q33.7200790625,26.311900234375,34.3524090625,29.560450234375L36.3155890625,29.178320234375Q35.5472890625,25.231310234375,32.4431690625,22.643660234374998Z" fill-rule="evenodd" fill="#85F5FF" fill-opacity="1"/></g></g></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 807 B

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -49,4 +49,5 @@ class AppConstants {
//系统参数
//运行打包APP模式
int ent_type = APPPackageType.MHT.code; //1.默认太和 2.欢睡 3.眠花糖
int text_length = 8;
}

View File

@@ -59,7 +59,7 @@ class _HomeDeviceTypeState extends State<HomeDeviceType> {
// 左侧图标
Positioned(
left: 0.rpx,
child: returnIconButtom,
child: returnIconButtomNew,
),
],
),

View File

@@ -140,7 +140,7 @@ class ShareDeviceDetailWidget extends GetView {
MainAxisAlignment.spaceBetween,
children: [
Text(
'允许对方控制该设备'.tr,
'允许对方控制和查看该设备'.tr,
style: FlutterFlowTheme.of(context)
.bodyMedium
.override(

View File

@@ -78,7 +78,7 @@ class ShareUserWidget extends GetView {
alignment: const AlignmentDirectional(-1, 0),
child: Text(
info['op_type'] == 1
? '允许对方控制该设备'.tr
? '允许对方控制和查看该设备'.tr
: info['op_type'] == 2
? '仅允许对方查看该设备'.tr
: '',

View File

@@ -221,7 +221,18 @@ class _BluetoothPageState extends State<BluetoothPage> {
),
_buildMenuButton(
context, '房间选择', "/roomPickerPage",
arguments: obsData),
arguments: obsData, onResult: (result) {
if (result != null && result is Map) {
final Map<String, dynamic> safeMap =
result.map(
(key, value) =>
MapEntry(key.toString(), value),
);
setState(() {
obsData.addAll(safeMap);
});
}
}),
_buildMenuButton(context, '设备校准', ""),
_buildMenuButton(context, '体征传感器', ""),
_buildMenuButton(context, 'WIFI配置', ""),
@@ -313,21 +324,35 @@ class _BluetoothPageState extends State<BluetoothPage> {
});
}
Widget _buildMenuButton(
BuildContext context,
String title,
String? path, {
Map<dynamic, dynamic>? arguments,
VoidCallback? onTap,
}) {
return Padding(
padding: EdgeInsets.only(bottom: 19.rpx),
child: ClickableContainer(
backgroundColor: Colors.transparent,
highlightColor: Color(0XFF055466),
padding: EdgeInsets.only(left: 0),
onTap: () {
// if (path?.isNotEmpty == true) {
// Widget _buildMenuButton(
// BuildContext context,
// String title,
// String? path, {
// Map<dynamic, dynamic>? arguments,
// VoidCallback? onTap,
// }) {
// return Padding(
// padding: EdgeInsets.only(bottom: 19.rpx),
// child: ClickableContainer(
// backgroundColor: Colors.transparent,
// highlightColor: Color(0XFF055466),
// padding: EdgeInsets.only(left: 0),
// onTap: () {
// // if (path?.isNotEmpty == true) {
// // if (arguments != null) {
// // Get.toNamed(path!, arguments: arguments);
// // } else {
// // Get.toNamed(path!);
// // }
// // } else {
// // TopSlideNotification.show(
// // context,
// // text: "功能开发中...",
// // );
// // }
// if (onTap != null) {
// onTap(); // 优先执行自定义逻辑
// } else if (path?.isNotEmpty == true) {
// if (arguments != null) {
// Get.toNamed(path!, arguments: arguments);
// } else {
@@ -339,19 +364,48 @@ class _BluetoothPageState extends State<BluetoothPage> {
// text: "功能开发中...",
// );
// }
// },
// child: Container(
// height: MediaQuery.sizeOf(context).height * 0.0566,
// decoration: BoxDecoration(
// color: const Color(0xFF003058),
// borderRadius: BorderRadius.circular(16.rpx),
// ),
// child: Center(
// child: Text(
// title,
// style: const TextStyle(color: Colors.white, fontSize: 16),
// ),
// ),
// ),
// ),
// );
// }
Widget _buildMenuButton(
BuildContext context,
String title,
String? path, {
Map<dynamic, dynamic>? arguments,
VoidCallback? onTap,
ValueChanged<dynamic>? onResult, // ✅ 可选返回值处理器
}) {
return Padding(
padding: EdgeInsets.only(bottom: 19.rpx),
child: ClickableContainer(
backgroundColor: Colors.transparent,
highlightColor: const Color(0XFF055466),
padding: EdgeInsets.only(left: 0),
onTap: () async {
if (onTap != null) {
onTap(); // 优先执行自定义逻辑
onTap(); // 自定义点击逻辑优先执行
} else if (path?.isNotEmpty == true) {
if (arguments != null) {
Get.toNamed(path!, arguments: arguments);
} else {
Get.toNamed(path!);
final result = await Get.toNamed(path!, arguments: arguments);
if (result != null && onResult != null) {
onResult(result); // ✅ 有回调就处理返回值
}
} else {
TopSlideNotification.show(
context,
text: "功能开发中...",
);
TopSlideNotification.show(context, text: "功能开发中...");
}
},
child: Container(

View File

@@ -117,9 +117,11 @@ class _MHTBindDeviceSuccessState extends State<MHTBindDeviceSuccess> {
});
}
WidgetsBinding.instance.addPostFrameCallback((_) {
if (homeController.homeSleepDays.value.isNotEmpty) {
if (homeController
.homeSleepDays.value.isNotEmpty) {
homeController.selectedDayIndex.value =
homeController.homeSleepDays.value.length - 1;
homeController.homeSleepDays.value.length -
1;
}
});
Get.until((route) =>
@@ -239,11 +241,11 @@ class _MHTBindDeviceSuccessState extends State<MHTBindDeviceSuccess> {
borderRadius:
AppConstants().normal_container_radius, // 圆角半径
onTap: () async {
TopSlideNotification.show(
context,
text: "功能开发中...",
);
return;
// TopSlideNotification.show(
// context,
// text: "功能开发中...",
// );
// return;
PersonController personController = Get.find();
String deviceID =
personController.currentPersonId.value;
@@ -347,9 +349,11 @@ class _MHTBindDeviceSuccessState extends State<MHTBindDeviceSuccess> {
});
}
WidgetsBinding.instance.addPostFrameCallback((_) {
if (homeController.homeSleepDays.value.isNotEmpty) {
if (homeController
.homeSleepDays.value.isNotEmpty) {
homeController.selectedDayIndex.value =
homeController.homeSleepDays.value.length - 1;
homeController.homeSleepDays.value.length -
1;
}
});
Get.until((route) =>

View File

@@ -87,7 +87,7 @@ class _MHTBindDeviceTypePageState extends State<MHTBindDeviceTypePage> {
/// 左边返回按钮
Positioned(
left: 0,
child: returnIconButtom,
child: returnIconButtomNew,
),
],
),

View File

@@ -39,7 +39,7 @@ class _MHTPeopleInfoPageState extends State<MHTPeopleInfoPage> {
// Initialize person A
peopleList.add({
'mac': device?.macA,
'gender': "",
'gender': 1,
'id': device!.macAID,
});
@@ -47,7 +47,7 @@ class _MHTPeopleInfoPageState extends State<MHTPeopleInfoPage> {
if (device?.macB != null && device!.macB!.isNotEmpty) {
peopleList.add({
'mac': device.macB,
'gender': "",
'gender': 1,
'id': device!.macBID,
});
}
@@ -326,7 +326,7 @@ class _MHTPeopleInfoPageState extends State<MHTPeopleInfoPage> {
: 1, checkChange: (sindex) {
setState(() {
peopleList[index]['gender'] =
sindex == 0 ? "" : "";
sindex;
});
}).then((d) {});
});
@@ -351,7 +351,7 @@ class _MHTPeopleInfoPageState extends State<MHTPeopleInfoPage> {
Container(
width: 200.rpx,
child: Text(
'${peopleList[index]['gender']}',
'${peopleList[index]['gender'] == 1 ? '' : ''}',
textAlign: TextAlign.right,
style: TextStyle(
fontFamily: 'Readex Pro',

View File

@@ -142,6 +142,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
key: _formKey,
child: TextFormField(
controller: _phoneController,
textAlign: TextAlign.center,
decoration: InputDecoration(
hintText: '请输入对方手机号/邮箱号',
hintStyle: TextStyle(
@@ -234,7 +235,7 @@ class ShareDeviceWidget extends GetView<MHDeviceShareController> {
MainAxisAlignment.spaceBetween,
children: [
Text(
'允许对方控制该设备'.tr,
'允许对方控制和查看该设备'.tr,
style: TextStyle(
fontFamily: 'Readex Pro',
color: Colors.white,

View File

@@ -405,6 +405,8 @@ class EditAddressPage extends GetView<AddressController>
0),
child:
TextFormField(
initialValue:
address['name'],
onChanged:
(value) {
controller.model.name =
@@ -495,7 +497,6 @@ class EditAddressPage extends GetView<AddressController>
),
),
),
].divide(const SizedBox(
width: 15)),
),
@@ -589,6 +590,8 @@ class EditAddressPage extends GetView<AddressController>
0),
child:
TextFormField(
initialValue:
address['tel'],
onChanged:
(value) {
controller.model.tel =

View File

@@ -1,6 +1,7 @@
import 'package:ef/ef.dart';
import 'package:flutter/material.dart';
import 'package:vbvs_app/common/color/ServiceConstant.dart';
import 'package:vbvs_app/common/color/appConstants.dart';
import 'package:vbvs_app/common/util/FitTool.dart';
import 'package:vbvs_app/common/util/MyUtils.dart';
import 'package:vbvs_app/common/util/requestWithLog.dart';
@@ -121,9 +122,10 @@ class _EditBedPageState extends State<EditBedPage> {
editedData['name'] = val;
},
textAlign: TextAlign.center,
maxLength: AppConstants().text_length,
decoration: InputDecoration(
hintText: "请输入设备的名称",
// counterText: "",
contentPadding:
const EdgeInsetsDirectional
.fromSTEB(10, 0, 10, 0),

View File

@@ -147,7 +147,7 @@ class _MinePageState extends State<NewMinePage> {
userInfoController
.model.user!.avatar!.isEmpty
? Image.asset(
"assets/images/default_avatar.png",
"assets/images/mine_avatar.png",
fit: BoxFit.cover,
)
: Image.network(
@@ -156,7 +156,7 @@ class _MinePageState extends State<NewMinePage> {
fit: BoxFit.cover,
))
: Image.asset(
"assets/images/default_avatar.png",
"assets/images/mine_avatar.png",
fit: BoxFit.cover,
),
),

View File

@@ -43,7 +43,7 @@ class _RoomPickerPageState extends State<RoomPickerPage> {
);
}
int selectedIndex = 1;
int selectedIndex = 0;
BoxConstraints? bodysize;
@override
Widget build(BuildContext context) {
@@ -189,7 +189,8 @@ class _RoomPickerPageState extends State<RoomPickerPage> {
"roomId": rooms[selectedIndex]['_id'],
},
onSuccess: (res) {
editedData['roomName'] =
rooms[selectedIndex]['name'];
TopSlideNotification.show(context,
text: "更新成功".tr,
textColor: Color(0XFF00C1AA));

View File

@@ -213,7 +213,7 @@ class _RxhxMhtState extends State<RxhxMht> {
),
// 左侧图标
Positioned(
left: 20.rpx,
left: 0.rpx,
child: returnIconButtomNew,
),
],