|
@@ -7,7 +7,7 @@ from loguru import logger
|
|
|
|
|
|
from app.controllers.equipment.fcu import get_fcu_control_result
|
|
|
from app.controllers.equipment.vav import get_vav_control_result
|
|
|
-from app.models.equipment import EquipmentControlInResponse
|
|
|
+from app.models.equipment import EquipmentControlInResponse, EquipmentControlInRequest
|
|
|
from app.utils.date import get_time_str
|
|
|
|
|
|
|
|
@@ -49,3 +49,30 @@ async def get_equipment_command(
|
|
|
'output': output
|
|
|
}
|
|
|
return response
|
|
|
+
|
|
|
+
|
|
|
+@router.post('/control', response_model=EquipmentControlInResponse, tags=['equipment'])
|
|
|
+async def get_equipment_command_v2(equipment_control_info: EquipmentControlInRequest):
|
|
|
+ if equipment_control_info.equipType == EquipmentName.FCU:
|
|
|
+ fcu = await get_fcu_control_result(equipment_control_info.projectId, equipment_control_info.equipId)
|
|
|
+ output = {
|
|
|
+ 'RunStatus': 1 if fcu.running_status else 0,
|
|
|
+ 'WorkModeSet': 1,
|
|
|
+ 'FanGearSet': fcu.air_valve_speed.value,
|
|
|
+ 'IndoorAirTempSet': fcu.setting_temperature
|
|
|
+ }
|
|
|
+ elif equipment_control_info.equipType == EquipmentName.VAV:
|
|
|
+ vav = await get_vav_control_result(equipment_control_info.projectId, equipment_control_info.equipId)
|
|
|
+ output = {
|
|
|
+ 'SupplyAirFlowSet': vav.supply_air_flow_set
|
|
|
+ }
|
|
|
+ else:
|
|
|
+ output = {}
|
|
|
+
|
|
|
+ response = {
|
|
|
+ 'projectId': equipment_control_info.projectId,
|
|
|
+ 'equipId': equipment_control_info.equipId,
|
|
|
+ 'time': get_time_str(),
|
|
|
+ 'output': output
|
|
|
+ }
|
|
|
+ return response
|