|
@@ -7,6 +7,7 @@ import arrow
|
|
|
import numpy as np
|
|
|
import pandas as pd
|
|
|
from httpx import AsyncClient, URL
|
|
|
+from loguru import logger
|
|
|
|
|
|
from app.core.config import settings
|
|
|
from app.services.service import Service
|
|
@@ -91,8 +92,8 @@ class SpaceInfoService(Service):
|
|
|
|
|
|
return feedback_dic
|
|
|
|
|
|
- async def get_custom_target(self) -> pd.DataFrame:
|
|
|
- url = self._base_url.join('duoduo-service/transfer/environment/target')
|
|
|
+ async def query_targets(self, url: str) -> pd.DataFrame:
|
|
|
+ url = self._base_url.join(url)
|
|
|
params = self._common_parameters()
|
|
|
params.update({'date': arrow.get(self._now_time, TIME_FMT).date().strftime('%Y%m%d')})
|
|
|
raw_info = await self._get(url, params)
|
|
@@ -105,8 +106,25 @@ class SpaceInfoService(Service):
|
|
|
|
|
|
return custom_target_df
|
|
|
|
|
|
+ async def get_custom_target(self) -> pd.DataFrame:
|
|
|
+ url = 'duoduo-service/transfer/environment/target'
|
|
|
+ targets = await self.query_targets(url)
|
|
|
+
|
|
|
+ return targets
|
|
|
+
|
|
|
+ async def query_pre_target(self) -> pd.DataFrame:
|
|
|
+ url = 'duoduo-service/setup-service/run/getBeforehand'
|
|
|
+ targets = await self.query_targets(url)
|
|
|
+
|
|
|
+ return targets
|
|
|
+
|
|
|
async def get_current_temperature_target(self) -> float:
|
|
|
- current_targets = await self.get_custom_target()
|
|
|
+ custom_targets = await self.get_custom_target()
|
|
|
+ pre_targets = await self.query_pre_target()
|
|
|
+ if len(pre_targets) > 0:
|
|
|
+ current_targets = pre_targets.append(custom_targets)
|
|
|
+ else:
|
|
|
+ current_targets = custom_targets
|
|
|
temp = arrow.get(self._now_time, TIME_FMT).shift(minutes=15).timestamp // (15 * 60) * (15 * 60)
|
|
|
next_quarter_minutes = arrow.get(temp).time().strftime('%H%M%S')
|
|
|
try:
|