From b138d15efb2e91521ebacb49d386a149bb72173b Mon Sep 17 00:00:00 2001 From: DingZQ Date: Sun, 2 Mar 2025 17:45:20 +0800 Subject: [PATCH] Refine --- influxdb_api.py | 9 +++++---- time_api.py | 12 +++++++++++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/influxdb_api.py b/influxdb_api.py index 5178e88..42a3417 100644 --- a/influxdb_api.py +++ b/influxdb_api.py @@ -1099,11 +1099,12 @@ def query_SCADA_data_by_device_ID_and_date(query_ids_list: List[str], query_date :param client: 已初始化的 InfluxDBClient 实例。 :return: """ - start_time, end_time = time_api.parse_date_range(query_date) + start_time, end_time = time_api.parse_beijing_date_range(query_date) + start_time_str = time_api.format_beijing_time(start_time) + end_time_str = time_api.format_beijing_time(end_time) + print(f"start_time_str: {start_time_str}, end_time_str: {end_time_str}") - print(f"start_time: {start_time}, end_time: {end_time}") - - return query_SCADA_data_by_device_ID_and_time_range(query_ids_list, str(start_time), str(end_time), bucket, client) + return query_SCADA_data_by_device_ID_and_time_range(query_ids_list, start_time_str, end_time_str, bucket, client) # 2025/02/01 diff --git a/time_api.py b/time_api.py index 0ee2023..9bc2350 100644 --- a/time_api.py +++ b/time_api.py @@ -63,15 +63,25 @@ def to_time_range(dt: datetime, delta: float) -> tuple[datetime.datetime, dateti return (start_time, end_time) -def parse_date_range(query_time: str) -> tuple[datetime.datetime, datetime.datetime]: +def parse_beijing_date_range(query_time: str) -> tuple[datetime.datetime, datetime.datetime]: ''' 将一个日期字符串,转换成 start/end 时间段 日期字符串格式:YYYY-MM-DD ''' start_time = datetime.datetime.fromisoformat(query_time).date() end_time = start_time + datetime.timedelta(days=1) + + start_time = to_beijing_time(start_time) + end_time = to_beijing_time(end_time) + return (start_time, end_time) +def format_beijing_time(dt: datetime.datetime) -> str: + ''' + 将一个北京时间的时间点,转换成字符串 + 格式:YYYY-MM-DDTHH:MM:SS+08:00 + ''' + return dt.strftime('%Y-%m-%dT%H:%M:%S%z') def get_day_start(dt: datetime.date) -> datetime.datetime: '''