transformNumFloat with default values

This commit is contained in:
proddy
2025-01-18 16:07:41 +01:00
parent 2d9ea3ee8d
commit db90546bc3
3 changed files with 11 additions and 11 deletions

View File

@@ -517,25 +517,25 @@ void WebCustomEntityService::generate_value_web(JsonObject output, const bool is
} }
case DeviceValueType::INT8: case DeviceValueType::INT8:
if ((int8_t)entity.value != EMS_VALUE_INT8_NOTSET) { if ((int8_t)entity.value != EMS_VALUE_INT8_NOTSET) {
obj["v"] = Helpers::transformNumFloat(entity.factor * (int8_t)entity.value, 0); obj["v"] = Helpers::transformNumFloat(entity.factor * (int8_t)entity.value);
include = true; include = true;
} }
break; break;
case DeviceValueType::UINT8: case DeviceValueType::UINT8:
if ((uint8_t)entity.value != EMS_VALUE_UINT8_NOTSET) { if ((uint8_t)entity.value != EMS_VALUE_UINT8_NOTSET) {
obj["v"] = Helpers::transformNumFloat(entity.factor * (uint8_t)entity.value, 0); obj["v"] = Helpers::transformNumFloat(entity.factor * (uint8_t)entity.value);
include = true; include = true;
} }
break; break;
case DeviceValueType::INT16: case DeviceValueType::INT16:
if ((int16_t)entity.value != EMS_VALUE_INT16_NOTSET) { if ((int16_t)entity.value != EMS_VALUE_INT16_NOTSET) {
obj["v"] = Helpers::transformNumFloat(entity.factor * (int16_t)entity.value, 0); obj["v"] = Helpers::transformNumFloat(entity.factor * (int16_t)entity.value);
include = true; include = true;
} }
break; break;
case DeviceValueType::UINT16: case DeviceValueType::UINT16:
if ((uint16_t)entity.value != EMS_VALUE_UINT16_NOTSET) { if ((uint16_t)entity.value != EMS_VALUE_UINT16_NOTSET) {
obj["v"] = Helpers::transformNumFloat(entity.factor * (uint16_t)entity.value, 0); obj["v"] = Helpers::transformNumFloat(entity.factor * (uint16_t)entity.value);
include = true; include = true;
} }
break; break;
@@ -543,7 +543,7 @@ void WebCustomEntityService::generate_value_web(JsonObject output, const bool is
case DeviceValueType::TIME: case DeviceValueType::TIME:
case DeviceValueType::UINT32: case DeviceValueType::UINT32:
if (entity.value != EMS_VALUE_UINT24_NOTSET) { if (entity.value != EMS_VALUE_UINT24_NOTSET) {
obj["v"] = Helpers::transformNumFloat(entity.factor * entity.value, 0); obj["v"] = Helpers::transformNumFloat(entity.factor * entity.value);
include = true; include = true;
} }
break; break;

View File

@@ -145,7 +145,7 @@ void WebDataService::sensor_data(AsyncWebServerRequest * request) {
obj["t"] = sensor.type(); obj["t"] = sensor.type();
if (sensor.type() != AnalogSensor::AnalogType::NOTUSED) { if (sensor.type() != AnalogSensor::AnalogType::NOTUSED) {
obj["v"] = Helpers::transformNumFloat(sensor.value(), 0); // is optional and is a float obj["v"] = Helpers::transformNumFloat(sensor.value()); // is optional and is a float
} else { } else {
obj["v"] = 0; // must have a value for web sorting to work obj["v"] = 0; // must have a value for web sorting to work
} }
@@ -423,11 +423,11 @@ void WebDataService::dashboard_data(AsyncWebServerRequest * request) {
dv["id"] = "00" + sensor.name(); dv["id"] = "00" + sensor.name();
#if CONFIG_IDF_TARGET_ESP32 #if CONFIG_IDF_TARGET_ESP32
if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT && (sensor.gpio() == 25 || sensor.gpio() == 26)) { if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT && (sensor.gpio() == 25 || sensor.gpio() == 26)) {
obj["v"] = Helpers::transformNumFloat(sensor.value(), 0); obj["v"] = Helpers::transformNumFloat(sensor.value());
} else } else
#elif CONFIG_IDF_TARGET_ESP32S2 #elif CONFIG_IDF_TARGET_ESP32S2
if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT && (sensor.gpio() == 17 || sensor.gpio() == 18)) { if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT && (sensor.gpio() == 17 || sensor.gpio() == 18)) {
obj["v"] = Helpers::transformNumFloat(sensor.value(), 0); obj["v"] = Helpers::transformNumFloat(sensor.value());
} else } else
#endif #endif
if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT || sensor.type() == AnalogSensor::AnalogType::DIGITAL_IN) { if (sensor.type() == AnalogSensor::AnalogType::DIGITAL_OUT || sensor.type() == AnalogSensor::AnalogType::DIGITAL_IN) {
@@ -437,7 +437,7 @@ void WebDataService::dashboard_data(AsyncWebServerRequest * request) {
l.add(Helpers::render_boolean(s, false, true)); l.add(Helpers::render_boolean(s, false, true));
l.add(Helpers::render_boolean(s, true, true)); l.add(Helpers::render_boolean(s, true, true));
} else { } else {
dv["v"] = Helpers::transformNumFloat(sensor.value(), 0); dv["v"] = Helpers::transformNumFloat(sensor.value());
dv["u"] = sensor.uom(); dv["u"] = sensor.uom();
} }
if (sensor.type() == AnalogSensor::AnalogType::COUNTER || sensor.type() >= AnalogSensor::AnalogType::DIGITAL_OUT) { if (sensor.type() == AnalogSensor::AnalogType::COUNTER || sensor.type() >= AnalogSensor::AnalogType::DIGITAL_OUT) {

View File

@@ -130,8 +130,8 @@ void WebStatusService::systemStatus(AsyncWebServerRequest * request) {
root["free_psram"] = ESP.getFreePsram() / 1024; root["free_psram"] = ESP.getFreePsram() / 1024;
} }
root["model"] = EMSESP::system_.getBBQKeesGatewayDetails(); root["model"] = EMSESP::system_.getBBQKeesGatewayDetails();
#if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S2 #if CONFIG_IDF_TARGET_ESP32S3 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32
root["temperature"] = EMSESP::system_.temperature(); root["temperature"] = Helpers::transformNumFloat(EMSESP::system_.temperature(), 0, EMSESP::system_.fahrenheit() ? 2 : 0); // only 2 decimal places
#endif #endif
// check for a factory partition first // check for a factory partition first