增加心率血氧 健康数据的nextday清空接口
authorCaisking <3449750381@qq.com>
Thu, 5 Sep 2024 07:16:52 +0000 (15:16 +0800)
committerCaisking <3449750381@qq.com>
Thu, 5 Sep 2024 07:16:52 +0000 (15:16 +0800)
code/sdk/application/wearable/fd230app/nativeui/heart_blood/health_service/health_service.cpp

index c8760f7..6d9550e 100644 (file)
@@ -368,24 +368,10 @@ namespace OHOS
     // 清空健康数据
     bool HealthService::CleanHealthData()
     {
-        HeartRateData heartdata;
-        heartdata.Heart = 0;
-        heartdata.timestamp = 0;
-        BloodOxygenData blooddata;
-        blooddata.SPO2 = 0;
-        blooddata.timestamp = 0;
-        if (!UpdateHealthData(heartdata))
-        {
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdateHealthData heartdata is error");
-            return false;
-        }
-        if (!UpdateHealthData(blooddata))
-        {
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdateHealthData blooddata is error");
-            return false;
-        }
-        HeartModel::GetInstance()->ReInit();
-        BloodOxygenModel::GetInstance()->ReInit();
+        ClearHourlyHeartRates();
+        HeartModel::GetInstance()->ClearDisplayData();
+        BloodOxygenModel::GetInstance()->ClearDisplayData();
+
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "CleanHealthData  is ok");
         return true;
     }
@@ -449,9 +435,8 @@ namespace OHOS
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "************************************************");
         }
 
-        // 如果不是同一天,清空文件内容
+        // 如果不是同一天,关闭文件
         file.close();
-        SaveDailyHeartRate();
 
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Error: Not same-day data");
         return false; // 不是同一天
@@ -503,13 +488,13 @@ namespace OHOS
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Updating heart rate: 小时 %d, 心率值 %d", hour, heartRate);
 
         // 确保 hour 在有效范围内,并且心率不是异常值(例如负值)
-        if (hour < MAX_HOURS && heartRate > 0) // 心率不应为负
+        if (hour < MAX_HOURS && heartRate > 0) // 心率不应为负 并且 小时不能为24
         {
             dailyHeartRates[hour] = heartRate;
-        }
 
-        // 记录目前更新时间点
-        currenthour = hour;
+            // 记录目前更新时间点
+            currenthour = hour;
+        }
     }
 
     uint16_t HealthService::GetHourlyHeartRate(uint16_t hour)