Browse Source

add a new api for querying regulated target result

chenhaiyang 4 years ago
parent
commit
36bbbe4043
2 changed files with 29 additions and 1 deletions
  1. 20 1
      app/api/routers/targets.py
  2. 9 0
      app/models/domain/targets.py

+ 20 - 1
app/api/routers/targets.py

@@ -7,7 +7,7 @@ from loguru import logger
 
 from app.controllers.targets.temperature import temperature_target_control_v1, temperature_target_control_v2
 from app.models.domain.feedback import FeedbackValue
-from app.models.domain.targets import TargetReadjustResponse
+from app.models.domain.targets import TargetReadjustResponse, RegulatedTargetResponse
 from app.utils.date import get_time_str
 
 router = APIRouter()
@@ -71,3 +71,22 @@ async def readjust_target_v2(
         'time': get_time_str()
     }
     return response
+
+
+@router.get('/regulated/value', response_model=RegulatedTargetResponse)
+async def read_regulated_value(
+        project_id: str = Query(..., max_length=50, regex='^Pj', alias='projectId'),
+        space_id: str = Query(..., max_length=50, regex='^Sp', alias='spaceId'),
+        feedback: Optional[FeedbackValue] = Query(None)
+):
+    response = {
+        'projectId': project_id,
+        'spaceId': space_id,
+        'isTemporary': False,
+        'temperature': {
+            'min': 23.0,
+            'max': 25.0
+        }
+    }
+
+    return response

+ 9 - 0
app/models/domain/targets.py

@@ -1,5 +1,7 @@
 # -*- coding: utf-8 -*-
 
+from typing import Dict
+
 from pydantic import BaseModel
 
 
@@ -9,3 +11,10 @@ class TargetReadjustResponse(BaseModel):
     roomId: str
     flag: int
     time: str
+
+
+class RegulatedTargetResponse(BaseModel):
+    projectId: str
+    spaceId: str
+    isTemporary: bool
+    temperature: Dict