From: xue <2144439972@qq.com> Date: Tue, 17 Jun 2025 06:41:36 +0000 (+0800) Subject: 1 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=597b3d73c233af04611df8244aeace51fce43841;p=mirrors%2FFD230.git 1 --- diff --git a/code/sdk/application/wearable/fd230app/CMakeLists.txt b/code/sdk/application/wearable/fd230app/CMakeLists.txt index fbe7e9b64..3e058f9cb 100644 --- a/code/sdk/application/wearable/fd230app/CMakeLists.txt +++ b/code/sdk/application/wearable/fd230app/CMakeLists.txt @@ -228,6 +228,9 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPCalibrationView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPUnderCalibrationView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPValueView.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPCalibrationPassView.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPCalibrationErrorView.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPCalibrationMindView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPMainView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPMainPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/bloodpressure/src/BPModel.cpp diff --git a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp index f9fe987a1..745ed4f98 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp @@ -60,9 +60,9 @@ namespace OHOS {VIEW_HEART_CHART, PNG_APPLIST_HEART_IMAGE_BIG, PNG_APPLIST_HEART_IMAGE, PNG_APPLIST_DEFAULT_IMG, "心率", STR_HEART_RATE, nullptr}, #endif {VIEW_BLOOD_RESULT, PNG_APPLIST_SPO2_IMAGE_BIG, PNG_APPLIST_SPO2_IMAGE, PNG_APPLIST_DEFAULT_IMG, "血氧", STR_BLOOD_OXYGEN, nullptr}, -#if defined(BOARD_W9) || defined(BOARD_N9) +#if defined(BOARD_W9) || defined(BOARD_N9)||1 /*W9与N9的Slice写宏里面*/ - // {VIEW_BLOOD_PRESSURE_CALIBRATION, PNG_APPLIST_SPO2_IMAGE_BIG, PNG_APPLIST_SPO2_IMAGE, PNG_APPLIST_DEFAULT_IMG, "血压", STR_BP_CHECK, nullptr}, + {VIEW_BLOOD_PRESSURE_CALIBRATION, PNG_APPLIST_SPO2_IMAGE_BIG, PNG_APPLIST_SPO2_IMAGE, PNG_APPLIST_DEFAULT_IMG, "血压", STR_BP_CHECK, nullptr}, {VIEW_BLOOD_PRESSURE_CHECK, PNG_APPLIST_SPO2_IMAGE_BIG, PNG_APPLIST_SPO2_IMAGE, PNG_APPLIST_DEFAULT_IMG, "血压", STR_BLOOD_OXYGEN, nullptr}, #endif {VIEW_SLEEP, PNG_APPLIST_SLEEP_IMAGE_BIG, PNG_APPLIST_SLEEP_IMAGE, PNG_APPLIST_DEFAULT_IMG, "睡眠", STR_SLEEP, nullptr}, diff --git a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/include/BPMainView.h b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/include/BPMainView.h index 4e17b0eec..949824563 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/include/BPMainView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/include/BPMainView.h @@ -7,8 +7,12 @@ #include "BaseView.h" #include "components/ui_view_group.h" #include "bloodpressure/include/BPCalibrationView.h" +#include "bloodpressure/include/BPCalibrationPassView.h" +#include "bloodpressure/include/BPCalibrationMindView.h" +#include "bloodpressure/include/BPCalibrationErrorView.h" #include "bloodpressure/include/BPUnderCalibrationView.h" #include "bloodpressure/include/BPValueView.h" +//#include "BPMainPresenter.h" namespace OHOS { typedef enum : uint8_t @@ -16,6 +20,9 @@ namespace OHOS BPCALIBRATIONVIEW = 0, // 主界面 BPUNDERCALIBRATIONVIEW, // BP校准界面 BPVALUEVIEW, // 血压输入界面 + BPCALIBRATIONPASSVIEW, //校准成功界面 + BPCALIBRATIONERRORVIEW, //校准失败界面 + BPCALIBRATIONMINDVIEW, //校准提醒界面 MAX_BPVIEW, } BPVIEWID; @@ -34,6 +41,10 @@ namespace OHOS bool ChangeBPCalibrationView(int16_t); bool ChangeBPUnderCalibrationView(int16_t); bool ChangeBPValueView(int16_t); + bool ChangeBPCalibrationPassView(int16_t thisView); + bool ChangeBPCalibrationErrorView(int16_t thisView); + bool ChangeBPCalibrationMindView(int16_t thisView); + bool ClickFunc(int16_t interface); void ChangeView(int16_t hideView, int16_t showView); @@ -42,6 +53,10 @@ namespace OHOS BPCalibrationView *p_BPCalibrationView{nullptr}; BPUnderCalibrationView *p_BPUnderCalibrationView{nullptr}; BPValueView *g_pBPValueView{nullptr}; + BPCalibrationPassView *g_pBPCalibrationPassView{nullptr}; + BPCalibrationErrorView *g_pBPCalibrationErrorView{nullptr}; + BPCalibrationMindView *g_pBPCalibrationMindView{nullptr}; + private: void DeInit(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainPresenter.cpp index 219d87d26..d111260f7 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainPresenter.cpp @@ -11,6 +11,8 @@ #include "bloodpressure/include/BPDetectionView.h" #include "bloodpressure/include/BPUnderCalibrationView.h" +#include "bloodpressure/include/BPValueView.h" +#include "bloodpressure/include/BPCalibrationPassView.h" #include "bloodpressure/include/BPMainView.h" #include "components/ui_label.h" @@ -145,7 +147,7 @@ namespace OHOS if (strcmp(view.GetViewId(), "value_check") == 0) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "value_check"); - + BPMainView::GetInstance()->ChangeView(BPVALUEVIEW,BPCALIBRATIONPASSVIEW); } if (strcmp(view.GetViewId(), "SBPLeft") == 0) @@ -175,6 +177,18 @@ namespace OHOS BPValueView::DBP++; + } + if (strcmp(view.GetViewId(), "passcheckButton") == 0) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "passcheckButton"); + BPMainView::GetInstance()->ChangeView(BPCALIBRATIONPASSVIEW,BPCALIBRATIONERRORVIEW); + + } + if (strcmp(view.GetViewId(), "errorcheckButton") == 0) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "errorcheckButton"); + BPMainView::GetInstance()->ChangeView(BPCALIBRATIONERRORVIEW,BPCALIBRATIONMINDVIEW); + } WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BPPresenter::OnClick"); return true; diff --git a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainView.cpp b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainView.cpp index 77a2656ee..75571d56f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPMainView.cpp @@ -61,6 +61,21 @@ namespace OHOS delete g_pBPValueView; g_pBPValueView = nullptr; } + if (g_pBPCalibrationPassView) + { + delete g_pBPCalibrationPassView; + g_pBPCalibrationPassView = nullptr; + } + if (g_pBPCalibrationErrorView) + { + delete g_pBPCalibrationErrorView; + g_pBPCalibrationErrorView = nullptr; + } + if (g_pBPCalibrationMindView) + { + delete g_pBPCalibrationMindView; + g_pBPCalibrationMindView = nullptr; + } } void BPMainView::OnStart() @@ -151,7 +166,7 @@ namespace OHOS return true; } - bool BPMainView::ChangeBPValueView(int16_t thisView) + bool BPMainView::ChangeBPValueView(int16_t thisView) { // 检查视图是否已初始化 if (group[thisView] == nullptr) @@ -170,6 +185,64 @@ namespace OHOS return true; } + bool BPMainView::ChangeBPCalibrationPassView(int16_t thisView) + { + // 检查视图是否已初始化 + if (group[thisView] == nullptr) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodPressureView::ChangeBPCalibrationPassView"); + g_pBPCalibrationPassView = new BPCalibrationPassView(); + if (g_pBPCalibrationPassView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodPressureView:: new scrollView[%d] fail", thisView); + return false; + } + // 初始化视图并添加到视图组 + group[thisView] = g_pBPCalibrationPassView->BPCalibrationPassInit(); + container_->Add(group[thisView]); + } + return true; + } + + bool BPMainView::ChangeBPCalibrationErrorView(int16_t thisView) + { + // 检查视图是否已初始化 + if (group[thisView] == nullptr) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodPressureView::ChangeBPCalibrationErrorView"); + g_pBPCalibrationErrorView = new BPCalibrationErrorView(); + if (g_pBPCalibrationErrorView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodPressureView:: new scrollView[%d] fail", thisView); + return false; + } + // 初始化视图并添加到视图组 + group[thisView] = g_pBPCalibrationErrorView->BPCalibrationErrorInit(); + container_->Add(group[thisView]); + } + return true; + } + + bool BPMainView::ChangeBPCalibrationMindView(int16_t thisView) + { + // 检查视图是否已初始化 + if (group[thisView] == nullptr) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodPressureView::ChangeBPCalibrationMindView"); + g_pBPCalibrationMindView = new BPCalibrationMindView(); + if (g_pBPCalibrationMindView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodPressureView:: new scrollView[%d] fail", thisView); + return false; + } + // 初始化视图并添加到视图组 + group[thisView] = g_pBPCalibrationMindView->BPCalibrationMindInit(); + container_->Add(group[thisView]); + } + return true; + } + + /** * 视图映射结构体 - 将视图ID映射到对应的视图切换函数 */ @@ -183,6 +256,9 @@ namespace OHOS {BPCALIBRATIONVIEW, &BPMainView::ChangeBPCalibrationView}, {BPUNDERCALIBRATIONVIEW, &BPMainView::ChangeBPUnderCalibrationView}, {BPVALUEVIEW, &BPMainView::ChangeBPValueView}, + {BPCALIBRATIONPASSVIEW, &BPMainView::ChangeBPCalibrationPassView}, + {BPCALIBRATIONERRORVIEW, &BPMainView::ChangeBPCalibrationErrorView}, + {BPCALIBRATIONMINDVIEW, &BPMainView::ChangeBPCalibrationMindView}, }; bool BPMainView::ClickFunc(int16_t interface) @@ -225,4 +301,4 @@ namespace OHOS container_->Invalidate(); } -} + } diff --git a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPModel.cpp index 7c995d9bb..7f13754c5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/bloodpressure/src/BPModel.cpp @@ -8,6 +8,7 @@ #include #include + extern "C" errcode_t uapi_get_timestamp_ms(uint32_t *tm); #include "AppViewIDs.h" @@ -85,7 +86,8 @@ static void BP_TimerCallbackProc(int data) { { BPModel::GetInstance()->BP_StopTimer(); //TODO:加判断?界面没有存在 直接就挂了 - BPMainView::GetInstance()->ChangeView(BPUNDERCALIBRATIONVIEW, BPVALUEVIEW); + BPMainView::GetInstance()->ChangeView(BPUNDERCALIBRATIONVIEW, BPVALUEVIEW); + } return; }