|
@@ -6,6 +6,7 @@ from loguru import logger
|
|
|
from app.controllers.equipment.controller import EquipmentController
|
|
|
from app.models.domain.devices import ACATVIInstructionsRequest
|
|
|
from app.schemas.equipment import VRF
|
|
|
+from app.utils.math import round_half_up
|
|
|
|
|
|
|
|
|
class VRFController(EquipmentController):
|
|
@@ -18,15 +19,9 @@ class VRFController(EquipmentController):
|
|
|
|
|
|
def get_switch_set(self) -> str:
|
|
|
if np.isnan(self.target):
|
|
|
- if self.device.running_status:
|
|
|
- switch_set = 'off'
|
|
|
- else:
|
|
|
- switch_set = 'hold'
|
|
|
+ switch_set = 'off'
|
|
|
else:
|
|
|
- if not self.device.running_status:
|
|
|
- switch_set = 'on'
|
|
|
- else:
|
|
|
- switch_set = 'hold'
|
|
|
+ switch_set = 'on'
|
|
|
|
|
|
self.device.equip_switch_set = switch_set
|
|
|
|
|
@@ -46,16 +41,19 @@ class VRFController(EquipmentController):
|
|
|
if self.realtime >= 24.0:
|
|
|
diff = self.device.return_air_temp - self.realtime
|
|
|
if diff > 0:
|
|
|
- self.device.temperature_set = self.target + diff
|
|
|
+ new_temperature_set = self.target + diff
|
|
|
else:
|
|
|
- self.device.temperature_set = self.target
|
|
|
+ new_temperature_set = self.target
|
|
|
elif self.realtime <= 22.0:
|
|
|
- self.device.temperature_set = self.device.return_air_temp + 1
|
|
|
+ new_temperature_set = self.device.return_air_temp + 1
|
|
|
else:
|
|
|
if np.isnan(self.device.current_temperature_set):
|
|
|
- self.device.temperature_set = 25.0
|
|
|
+ new_temperature_set = 25.0
|
|
|
else:
|
|
|
- self.device.temperature_set = self.device.current_temperature_set
|
|
|
+ new_temperature_set = self.device.current_temperature_set
|
|
|
+
|
|
|
+ new_temperature_set = round_half_up(new_temperature_set)
|
|
|
+ self.device.temperature_set = new_temperature_set
|
|
|
|
|
|
return self.device.temperature_set
|
|
|
|
|
@@ -85,7 +83,9 @@ class VRFController(EquipmentController):
|
|
|
self.get_temperature_set()
|
|
|
|
|
|
need_send = False
|
|
|
- if self.get_switch_set() != 'hold':
|
|
|
+ if self.device.equip_switch_set == 'on' and not self.device.running_status:
|
|
|
+ need_send = True
|
|
|
+ if self.device.equip_switch_set == 'off' and self.device.running_status:
|
|
|
need_send = True
|
|
|
if self.device.temperature_set != self.device.current_temperature_set:
|
|
|
need_send = True
|