浏览代码

0016180: 【APP】【新建档案】“身份识别建档”修改为“身份证识别建档”

finlay 1 年之前
父节点
当前提交
67f0b2b197

+ 25 - 5
lib/managers/permission.dart

@@ -20,7 +20,7 @@ class PermissionManager implements IPermissionManager {
       } else {
         // 用户暂时拒绝了权限
         // 在这里可以给用户一些解释,然后再次请求权限
-        requestLocationPermission();
+        // requestLocationPermission();
       }
       return;
     }
@@ -41,7 +41,7 @@ class PermissionManager implements IPermissionManager {
       } else {
         // 用户暂时拒绝了权限
         // 在这里可以给用户一些解释,然后再次请求权限
-        requestBluetoothConnectPermission();
+        // requestBluetoothConnectPermission();
       }
       return;
     }
@@ -62,7 +62,7 @@ class PermissionManager implements IPermissionManager {
       } else {
         // 用户暂时拒绝了权限
         // 在这里可以给用户一些解释,然后再次请求权限
-        requestBluetoothScanPermission();
+        // requestBluetoothScanPermission();
       }
       return;
     }
@@ -83,7 +83,7 @@ class PermissionManager implements IPermissionManager {
       } else {
         // 用户暂时拒绝了权限
         // 在这里可以给用户一些解释,然后再次请求权限
-        requestBluetoothAdvertisePermission();
+        // requestBluetoothAdvertisePermission();
       }
       return;
     }
@@ -104,11 +104,31 @@ class PermissionManager implements IPermissionManager {
       } else {
         // 用户暂时拒绝了权限
         // 在这里可以给用户一些解释,然后再次请求权限
-        requestInstallPackagesPermission();
+        // requestInstallPackagesPermission();
       }
       return;
     }
   }
+
+  ///批量获取权限
+  Future<bool> requestPermissions(List<String> permissions) async {
+    if (permissions.contains('Location')) {
+      await requestLocationPermission();
+    }
+    if (permissions.contains('BluetoothConnect')) {
+      await requestBluetoothConnectPermission();
+    }
+    if (permissions.contains('BluetoothScan')) {
+      await requestBluetoothScanPermission();
+    }
+    if (permissions.contains('BluetoothAdvertise')) {
+      await requestBluetoothAdvertisePermission();
+    }
+    if (permissions.contains('InstallPackages')) {
+      await requestInstallPackagesPermission();
+    }
+    return false;
+  }
 }
 
 enum PermissionEnum {

+ 5 - 3
lib/pages/home/personal_center/widgets/avatar.dart

@@ -51,9 +51,11 @@ class AvatarPage extends GetView<PersonalCenterController> {
 
   Future<void> _openGallery() async {
     XFile? image = await ImagePicker().pickImage(source: ImageSource.gallery);
-    final url = await rpc.storage.upload(image!);
-    controller.state.headImageToken = url;
-    controller.updateUserInfo();
+    if (image != null) {
+      final url = await rpc.storage.upload(image!);
+      controller.state.headImageToken = url;
+      controller.updateUserInfo();
+    }
   }
 
   Widget _buildHeadImageToken(String? headImageToken) {

+ 1 - 1
lib/pages/id_card_scan/controller.dart

@@ -287,7 +287,7 @@ class IdCardScanController extends GetxController with WidgetsBindingObserver {
               result: idCardScanResult,
             );
           } else {
-            PromptBox.toast('身份证识别失败: ${result.errorMessage}');
+            PromptBox.toast('${result.errorMessage}');
           }
         } catch (e) {
           logger.e("getPatientBaseByImageAsync failed: $e", e);

+ 1 - 1
lib/pages/id_card_scan/view.dart

@@ -17,7 +17,7 @@ class IdCardScanPage extends GetView<IdCardScanController> {
       builder: (_) {
         return Scaffold(
           appBar: VAppBar(
-            titleText: "身份识别建档",
+            titleText: "身份识别建档",
           ),
           body: SafeArea(
             child: Obx(

+ 1 - 1
lib/pages/patient/create/widgets/quick_create.dart

@@ -65,7 +65,7 @@ class QuickCreatePatientPage extends GetView<CreatePatientController> {
 
   VSideNavMenuItem _buildScanIdCardRecord() {
     return VSideNavMenuItem(
-      title: "身份识别建档",
+      title: "身份识别建档",
       icon: Icon(Icons.perm_contact_cal_rounded, color: Colors.grey.shade700),
       onTap: () {
         if (!kIsOnline) {

+ 13 - 0
lib/pages/settings/devices/controller.dart

@@ -1,4 +1,5 @@
 import 'package:get/get.dart';
+import 'package:vitalapp/managers/interfaces/permission.dart';
 import 'package:vnote_device_plugin/models/device.dart';
 import 'package:vitalapp/architecture/defines.dart';
 import 'package:vitalapp/managers/interfaces/device.dart';
@@ -56,6 +57,18 @@ class DevicesSettingController extends FControllerBase {
     cancelBusy();
   }
 
+  ///验证是否有权限搜索设备
+  Future<void> initPermission() async {
+    IPermissionManager permissionManager = Get.find<IPermissionManager>();
+    await permissionManager.requestLocationPermission();
+    await Future.delayed(const Duration(milliseconds: 100));
+    await permissionManager.requestBluetoothConnectPermission();
+    await Future.delayed(const Duration(milliseconds: 100));
+    await permissionManager.requestBluetoothAdvertisePermission();
+    await Future.delayed(const Duration(milliseconds: 100));
+    await permissionManager.requestBluetoothScanPermission();
+  }
+
   void _loadData() async {
     state.accessTypes = await _deviceManager.getAccessTypes();
     await _loadDeviceList();

+ 1 - 0
lib/pages/settings/devices/view.dart

@@ -54,6 +54,7 @@ class DevicesSettingPage extends GetView<DevicesSettingController> {
   }
 
   void _onDeviceBind(String type) async {
+    // await controller.initPermission();
     final result = await DeviceSearchDialog.dialog(type);
     if (result != null) {
       controller.bindDevice(result);

+ 2 - 2
pubspec.lock

@@ -278,8 +278,8 @@ packages:
     dependency: "direct main"
     description:
       path: "."
-      ref: "85db175"
-      resolved-ref: "85db1754f95ab2a02beaf70f3e3db43d8a79f26d"
+      ref: bfc5465
+      resolved-ref: bfc5465846ea98530e30ad340b64542d1bd333de
       url: "http://git.ius.plus/Project-Vital/FlutterJsonRPC.git"
     source: git
     version: "0.0.1"