Browse Source

add a router for target setting

highing666 3 years ago
parent
commit
c782a11636
2 changed files with 38 additions and 2 deletions
  1. 11 1
      app/api/routers/targets.py
  2. 27 1
      app/models/domain/targets.py

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

@@ -13,7 +13,12 @@ from app.controllers.targets.temperature import (
     get_target_after_feedback,
 )
 from app.models.domain.feedback import FeedbackValue
-from app.models.domain.targets import TargetReadjustResponse, RegulatedTargetResponse
+from app.models.domain.targets import (
+    TargetReadjustResponse,
+    RegulatedTargetResponse,
+    TargetReadjustRequestV2,
+    TargetReadjustResponseV2,
+)
 from app.utils.date import get_time_str
 
 router = APIRouter()
@@ -83,6 +88,11 @@ async def readjust_target_v2(
     return response
 
 
+@router.post("/readjust", response_model=TargetReadjustResponseV2)
+async def get_readjusted_target(params: TargetReadjustRequestV2):
+    pass
+
+
 @router.get("/regulated/value", response_model=RegulatedTargetResponse)
 async def read_regulated_value(
     project_id: str = Query(..., max_length=50, regex="^Pj", alias="projectId"),

+ 27 - 1
app/models/domain/targets.py

@@ -1,8 +1,11 @@
 # -*- coding: utf-8 -*-
 
-from typing import Dict
+from typing import Dict, List
 
 from pydantic import BaseModel
+from app.schemas.feedback import Feedback
+
+from app.schemas.season import Season
 
 
 class TargetReadjustResponse(BaseModel):
@@ -18,3 +21,26 @@ class RegulatedTargetResponse(BaseModel):
     spaceId: str
     isTemporary: bool
     temperature: Dict
+
+
+class TargetReadjustRequestBase(BaseModel):
+    feedback: Feedback
+    season: Season
+    realtime_temperature: float
+    targets: Dict
+
+
+class TargetReadjustRequestV2(TargetReadjustRequestBase):
+    pass
+
+
+class TargetReadjustResponseV2(BaseModel):
+    pass
+
+
+class TargetReadjustRequestV3(TargetReadjustRequestBase):
+    pre_changes: Dict
+
+
+class TargetReadjustResponseV3(BaseModel):
+    pass