瀏覽代碼

1、12导心电优化

guanxinyi 1 年之前
父節點
當前提交
65ff6d1e4b

二進制
android/app/libs/device_sdk.aar


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

@@ -57,7 +57,7 @@ class MedicalController extends FControllerBase with BluetoothAndLocationMixin {
     MedicalItem(key: DeviceTypes.WAIST, diagnosticItem: '腰臀比'),
     MedicalItem(key: DeviceTypes.URINE, diagnosticItem: '尿常规'),
     MedicalItem(key: DeviceTypes.HEART, diagnosticItem: '心电'),
-    MedicalItem(key: DeviceTypes.TWELVEHEART, diagnosticItem: '12导心电'),
+    MedicalItem(key: DeviceTypes.TWELVEHEART, diagnosticItem: '十二导心电'),
   ];
   @override
   void onInit() async {

+ 5 - 5
lib/pages/medical/view.dart

@@ -45,7 +45,7 @@ class MedicalPage extends GetView<MedicalController> {
 
   Widget _buildMedicalMenus() {
     return Expanded(
-      flex: 2,
+      flex: 3,
       child: Obx(
         () => Column(
           mainAxisAlignment: MainAxisAlignment.center,
@@ -93,7 +93,7 @@ class MedicalPage extends GetView<MedicalController> {
 
   Widget _buildMedicalInput(String? currentTab) {
     return Expanded(
-      flex: currentTab == DeviceTypes.TWELVEHEART ? 16 : 10,
+      flex: currentTab == DeviceTypes.TWELVEHEART ? 18 : 11,
       child: Stack(
         children: [
           Container(
@@ -135,7 +135,7 @@ class MedicalPage extends GetView<MedicalController> {
       return const SizedBox();
     }
     return Expanded(
-      flex: 6,
+      flex: 7,
       child: Container(
         alignment: Alignment.topCenter,
         margin: const EdgeInsets.all(16).copyWith(top: 10),
@@ -262,7 +262,7 @@ class _SideBar extends StatelessWidget {
   Widget build(BuildContext context) {
     return Container(
       alignment: Alignment.centerLeft,
-      width: 140,
+      width: 156,
       child: Container(
         margin: const EdgeInsets.only(bottom: 2),
         decoration: BoxDecoration(
@@ -275,7 +275,7 @@ class _SideBar extends StatelessWidget {
           ),
         ),
         alignment: Alignment.center,
-        width: isActive! ? 140 : 120,
+        width: 156,
         height: 60,
         child: Text(
           title,

+ 2 - 7
lib/pages/medical/widgets/twelve_ecg.dart

@@ -162,7 +162,8 @@ class _HeartRateState extends State<TwelveHeartRate> {
           child: Row(
             children: [
               if (twelveEcgStatus == TwelveEcgStatus.noSampling &&
-                  connectStatus == WorkerStatus.disconnected) ...[
+                  (connectStatus == WorkerStatus.connectionFailed ||
+                      connectStatus == WorkerStatus.disconnected)) ...[
                 SizedBox(
                   width: 150,
                   height: 50,
@@ -355,12 +356,6 @@ class _HeartRateState extends State<TwelveHeartRate> {
 
   void _onConnectFail(sender, e) async {
     logger.i("设备连接失败:${worker.mac}");
-    if (errorCount < 3) {
-      errorCount++;
-      // await tryReconnect();
-    } else {
-      isConnectFail = true;
-    }
     connectStatus = WorkerStatus.connectionFailed;
     twelveEcgStatus = TwelveEcgStatus.noSampling;
     setState(() {});

+ 1 - 1
lib/pages/medical/widgets/twelve_ecg_view/widgets/conclusion_dialog.dart

@@ -72,7 +72,7 @@ class ConclusionDialog extends StatelessWidget {
                 mainAxisAlignment: MainAxisAlignment.spaceBetween,
                 children: [
                   const Text(
-                    "诊断提示:",
+                    "检测提示:",
                     style: TextStyle(fontSize: 20),
                   ),
                   Text(

+ 5 - 0
lib/pages/medical/widgets/twelve_ecg_view/widgets/ecg_device_status.dart

@@ -3,6 +3,7 @@ import 'package:vitalapp/pages/check/widgets/exam_device_connect_status/connect.
 import 'package:vitalapp/pages/check/widgets/exam_device_connect_status/connect_success.dart';
 import 'package:vitalapp/pages/check/widgets/exam_device_connect_status/connect_unbound_device.dart';
 import 'package:vitalapp/pages/medical/models/worker.dart';
+import 'package:vitalapp/pages/medical/widgets/twelve_ecg_view/widgets/ecg_reconnecting.dart';
 
 class EcgDeviceStatus extends StatefulWidget {
   const EcgDeviceStatus({
@@ -55,6 +56,8 @@ class _EcgDeviceStatusState extends State<EcgDeviceStatus> {
 
   Widget _buildContent() {
     switch (_connectStatus) {
+      case WorkerStatus.connectionFailed:
+        return const EcgDeviceConnectDisconnected();
       case WorkerStatus.connected:
         return _buildColumn(
           const DeviceConnectSuccess(),
@@ -63,6 +66,8 @@ class _EcgDeviceStatusState extends State<EcgDeviceStatus> {
         return _buildColumn(
           const DeviceConnecting(),
         );
+      // case WorkerStatus.disconnected:
+      //   return const EcgDeviceConnectDisconnected();
       case WorkerStatus.unboundDevice:
         return _buildColumn(
           const UnboundDevice(),

+ 8 - 14
lib/pages/medical/widgets/twelve_ecg_view/widgets/ecg_reconnecting.dart

@@ -3,13 +3,18 @@ import 'package:flutter/material.dart';
 class EcgDeviceConnectDisconnected extends StatelessWidget {
   const EcgDeviceConnectDisconnected({
     super.key,
-    this.connect,
   });
-  final Function? connect;
 
   @override
   Widget build(BuildContext context) {
-    return _buildContent();
+    return Column(
+      children: [
+        const SizedBox(
+          height: 8,
+        ),
+        _buildContent(),
+      ],
+    );
   }
 
   Widget _buildTitle(String title) {
@@ -28,17 +33,6 @@ class EcgDeviceConnectDisconnected extends StatelessWidget {
         const SizedBox(
           width: 16,
         ),
-        IconButton(
-          onPressed: () async => await connect!.call(),
-          icon: const Icon(
-            Icons.bluetooth_connected,
-            size: 36,
-          ),
-          color: Colors.blue,
-        ),
-        const SizedBox(
-          width: 16,
-        ),
       ],
     );
   }

+ 1 - 1
lib/pages/settings/devices/widgets/consts.dart

@@ -11,7 +11,7 @@ abstract class DevicesSettingConsts {
     DeviceTypes.URINE: "尿液分析仪",
     DeviceTypes.IC_READER: "人证阅读器",
     DeviceTypes.HEART: "心电",
-    DeviceTypes.TWELVEHEART: "12导心电",
+    DeviceTypes.TWELVEHEART: "十二导心电",
   };
 
   /// 根据类型获取名称