Add API queryallrecordsbytimerange
This commit is contained in:
25
main.py
25
main.py
@@ -2319,7 +2319,6 @@ async def fastapi_query_all_records_by_time(querytime: str) -> dict[str, list]:
|
||||
return { "nodes": results[0],
|
||||
"links": results[1] }
|
||||
|
||||
#def query_all_record_by_date(query_date: str, bucket: str="realtime_simulation_result", client: InfluxDBClient=client) -> tuple:
|
||||
@app.get("/queryallrecordsbydate/")
|
||||
async def fastapi_query_all_records_by_date(querydate: str) -> dict[str, list]:
|
||||
# 缓存查询结果提高性能
|
||||
@@ -2344,6 +2343,30 @@ async def fastapi_query_all_records_by_date(querydate: str) -> dict[str, list]:
|
||||
|
||||
return results
|
||||
|
||||
@app.get("/queryallrecordsbytimerange/")
|
||||
async def fastapi_query_all_records_by_time_range(starttime: str, endtime: str) -> dict[str, list]:
|
||||
# 缓存查询结果提高性能
|
||||
global redis_client
|
||||
|
||||
# 今天的不要去缓存
|
||||
if not time_api.is_today_or_future(starttime):
|
||||
cache_key = f"queryallrecordsbytimerange_{starttime}_{endtime}"
|
||||
data = redis_client.get(cache_key)
|
||||
if data:
|
||||
# 使用自定义的反序列化函数
|
||||
loaded_dict = msgpack.unpackb(data, object_hook=decode_datetime)
|
||||
return loaded_dict
|
||||
|
||||
nodes_links: tuple = influxdb_api.query_all_records_by_time_range(starttime=starttime, endtime=endtime)
|
||||
results = { "nodes": nodes_links[0],
|
||||
"links": nodes_links[1] }
|
||||
|
||||
# 今天的不要去缓存
|
||||
if not time_api.is_today_or_future(starttime):
|
||||
redis_client.set(cache_key, msgpack.packb(results, default=encode_datetime))
|
||||
|
||||
return results
|
||||
|
||||
#2025-03-15, DingZQ
|
||||
@app.get("/queryallrecordsbydatewithtype/")
|
||||
async def fastapi_query_all_records_by_date_with_type(querydate: str, querytype: str) -> list:
|
||||
|
||||
Reference in New Issue
Block a user