Browse Source

上传代码

newdev_shunjiawei
liwei1dao 1 year ago
parent
commit
1985c0fd02
  1. 9
      lib/data/services/network/api.dart
  2. 24
      lib/modules/devices/controllers/devices_controller.dart

9
lib/data/services/network/api.dart

@ -154,6 +154,15 @@ class Api {
); );
} }
// 获取验证码
static getdevices([params]) {
return DioManager().request(
NWMethod.post,
'/api/home/user_getdevices',
params: params,
);
}
//绑定设备 //绑定设备
static bindauthcode([params]) { static bindauthcode([params]) {
return DioManager().request( return DioManager().request(

24
lib/modules/devices/controllers/devices_controller.dart

@ -1,5 +1,7 @@
import 'dart:ffi'; import 'dart:ffi';
import 'package:voitrans/data/models/appconfig_model.dart';
import '/core/utils/logger.dart'; import '/core/utils/logger.dart';
import '/data/models/user_Info.dart'; import '/data/models/user_Info.dart';
import '/data/services/ble_manager.dart'; import '/data/services/ble_manager.dart';
@ -29,8 +31,16 @@ class DevicesController extends GetxController {
} }
// 加载设备数据 // 加载设备数据
void _loadDevices() { void _loadDevices() async {
devices.clear(); devices.clear();
final response = await Api.getdevices();
if (response != null) {
var devices = (response['devices'] as List<dynamic>)
.map((e) => UserDevice.fromJson(e as Map<String, dynamic>))
.toList();
User.instance.devices = devices;
}
for (var device in User.instance.devices) { for (var device in User.instance.devices) {
if (!devices.containsKey(device.devicetype)) { if (!devices.containsKey(device.devicetype)) {
devices[device.devicetype] = []; devices[device.devicetype] = [];
@ -54,11 +64,13 @@ class DevicesController extends GetxController {
devices[device.devicetype]?.remove(device); devices[device.devicetype]?.remove(device);
devices.refresh(); // 触发UI更新 devices.refresh(); // 触发UI更新
User.instance.removeUserDevice(device.id); if (device.devicemac == _bleManager.deviceInfo.value?.address) {
_bleManager.clearPairedDevices(); User.instance.removeUserDevice(device.id);
_bleManager.disconnect(); _bleManager.clearPairedDevices();
await Future.delayed(const Duration(seconds: 1)); _bleManager.disconnect();
Get.toNamed(Routes.pairing); await Future.delayed(const Duration(seconds: 1));
Get.toNamed(Routes.pairing);
}
return; return;
} else { } else {
return; return;

Loading…
Cancel
Save