|
@@ -3,10 +3,9 @@ from typing import Dict, Tuple
|
|
|
|
|
|
import arrow
|
|
|
import numpy as np
|
|
|
-from loguru import logger
|
|
|
from sqlalchemy.orm import Session
|
|
|
|
|
|
-from app.api.errors.iot import MissingIOTDataError, missing_iot_data_handler
|
|
|
+from app.api.errors.iot import MissingIOTDataError
|
|
|
from app.controllers.equipment.controller import EquipmentController
|
|
|
from app.crud.device.device import device
|
|
|
from app.crud.device.status_timestamp import blowy_feedback_time, high_speed_time
|
|
@@ -143,7 +142,7 @@ class VRFController(EquipmentController):
|
|
|
return new_temperature_set
|
|
|
|
|
|
def get_speed_set(self) -> str:
|
|
|
- if self.device.work_mode == 4.0 or self.device.work_mode == 8.0:
|
|
|
+ if self.device.work_mode == VRFMode.ventilation:
|
|
|
if self.target is None:
|
|
|
new_speed = "hold"
|
|
|
else:
|
|
@@ -169,7 +168,7 @@ class VRFController(EquipmentController):
|
|
|
new_speed = "hold"
|
|
|
else:
|
|
|
new_speed = "M"
|
|
|
- elif self.device.work_mode == 1.0 or self.device.work_mode == 6.0:
|
|
|
+ elif self.device.work_mode == VRFMode.cooling:
|
|
|
new_speed = "hold"
|
|
|
if self.target is None:
|
|
|
return new_speed
|
|
@@ -202,7 +201,7 @@ class VRFController(EquipmentController):
|
|
|
new_speed = "LL"
|
|
|
else:
|
|
|
new_speed = "LL"
|
|
|
- elif self.device.work_mode == 2.0 or self.device.work_mode == 7.0:
|
|
|
+ elif self.device.work_mode == VRFMode.heating:
|
|
|
new_speed = "hold"
|
|
|
if self.target is None:
|
|
|
return new_speed
|
|
@@ -276,7 +275,6 @@ class VRFController(EquipmentController):
|
|
|
self.get_speed_set()
|
|
|
self.get_temperature_set()
|
|
|
except TypeError:
|
|
|
- logger.debug("missing data error")
|
|
|
raise MissingIOTDataError
|
|
|
|
|
|
def get_results(self):
|
|
@@ -312,23 +310,6 @@ async def query_status_time(db: Session, device_id: str) -> Tuple[datetime, date
|
|
|
return feedback_time, high_time
|
|
|
|
|
|
|
|
|
-def transform_mode(mode_value: float) -> VRFMode:
|
|
|
- try:
|
|
|
- if mode_value == 1.0 or mode_value == 6.0:
|
|
|
- mode = VRFMode.cooling
|
|
|
- elif mode_value == 2.0 or mode_value == 7.0:
|
|
|
- mode = VRFMode.heating
|
|
|
- elif mode_value == 4.0 or mode_value == 8.0:
|
|
|
- mode = VRFMode.ventilation
|
|
|
- else:
|
|
|
- mode = VRFMode.unknown
|
|
|
- except TypeError:
|
|
|
- raise MissingIOTDataError
|
|
|
- return mode
|
|
|
-
|
|
|
-
|
|
|
-@logger.catch
|
|
|
-@missing_iot_data_handler
|
|
|
async def build_acatvi_instructions(params: ACATVIInstructionsRequest) -> Dict:
|
|
|
vrf = VRF(
|
|
|
return_air_temp=params.return_air_temperature,
|