回退校准流程
authorxue <2144439972@qq.com>
Thu, 17 Jul 2025 07:17:22 +0000 (15:17 +0800)
committerxue <2144439972@qq.com>
Thu, 17 Jul 2025 07:17:22 +0000 (15:17 +0800)
code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainPresenter.cpp

index e3a423b..b71a8fc 100644 (file)
@@ -138,32 +138,35 @@ namespace OHOS
             BPMainView::GetInstance()->ChangeView(it->second.first, it->second.second);
             return true;
         }
-        else if (strcmp(view.GetViewId(), STARTCALIBRATIONBUTTON) == 0) // é¦\96ç\95\8cé\9d¢å\88°æ\8f\90é\86\92界面  第一步
+        else if (strcmp(view.GetViewId(), STARTCALIBRATIONBUTTON) == 0) // é¦\96ç\95\8cé\9d¢å\88°æµ\8bé\87\8få\80¼界面  第一步
         {
-            BPMainView::GetInstance()->ChangeView(BPCALPOSREQVIEW, BPCALIBRATIONMINDVIEW);
+            BPModel::GetInstance()->BP_Control(BPState::BP_CALIBRATING_FIRSTTIME);
+            BPMainView::GetInstance()->ChangeView(BPCALPOSREQVIEW, BPVALUEVIEW);
         }
-        else if (strcmp(view.GetViewId(), CALIBRATIONBUTTON) == 0) // 上次校准时间界面到提醒界面
+        else if (strcmp(view.GetViewId(), CALIBRATIONBUTTON) == 0) // 上次校准时间界面到二次校准界面
         {
-            BPMainView::GetInstance()->ChangeView(BPLASTCALIBRATIONTIME, BPCALIBRATIONMINDVIEW);
+            BPModel::GetInstance()->BP_Control(BPState::BP_CALIBRATING_SECONDTIME);
+            BPMainView::GetInstance()->ChangeView(BPLASTCALIBRATIONTIME, BPSECUNDERCALIBRATIONVIEW);
         }
-        else if (strcmp(view.GetViewId(), ERRORCHECKBUTTON) == 0) // å¤±è´¥ç\95\8cé\9d¢å\88°æ\8f\90é\86\92界面
+        else if (strcmp(view.GetViewId(), ERRORCHECKBUTTON) == 0) // å¤±è´¥ç\95\8cé\9d¢å\88°æ ¡å\87\86界面
         {
-            BPMainView::GetInstance()->ChangeView(BPCALIBRATIONMINDVIEW, BPRESULTANALYSISVIEW);
-        }
-        else if (strcmp(view.GetViewId(), VALUECHECKBUTTON) == 0) // 血压值界面到校准界面
-        {
-            BPModel::GetInstance()->BP_CALIBTATION(); // 参数值传入接口
-            if (BPModel::GetInstance()->GetCalibrationFlag() == 0) // 第一次校准
+            if (BPModel::GetInstance()->GetCalibrationFlag() == 1) // 第一次校准失败
             {
                 BPModel::GetInstance()->BP_Control(BPState::BP_CALIBRATING_FIRSTTIME);
-                BPMainView::GetInstance()->ChangeView(BPVALUEVIEW, BPUNDERCALIBRATIONVIEW);
+                BPMainView::GetInstance()->ChangeView(BPCALIBRATIONERRORVIEW, BPUNDERCALIBRATIONVIEW);
             }
-            else if (BPModel::GetInstance()->GetCalibrationFlag() == 2) // 第二次校准
+            else if (BPModel::GetInstance()->GetCalibrationFlag() == 3) // 第二次校准失败
             {
                 BPModel::GetInstance()->BP_Control(BPState::BP_CALIBRATING_SECONDTIME);
-                BPMainView::GetInstance()->ChangeView(BPVALUEVIEW, BPSECUNDERCALIBRATIONVIEW);
+                BPMainView::GetInstance()->ChangeView(BPCALIBRATIONERRORVIEW, BPSECUNDERCALIBRATIONVIEW);
             }
         }
+        else if (strcmp(view.GetViewId(), VALUECHECKBUTTON) == 0) // 血压值界面到结果分析界面
+        {
+            BPModel::GetInstance()->BP_CALIBTATION();
+            BPModel::GetInstance()->BP_Control(BPState::BP_CALIBRATING_ANGLYSIS);
+            BPMainView::GetInstance()->ChangeView(BPVALUEVIEW, BPRESULTANALYSISVIEW);
+        }
         else if (strcmp(view.GetViewId(), PASSCAECKBUTTON) == 0) // 校准成功界面
         {
             if (BPModel::GetInstance()->GetCalibrationFlag() == 2)