main
This commit is contained in:
@@ -96,6 +96,54 @@ async def get_available_parsers():
|
|||||||
return {"parsers": parsers}
|
return {"parsers": parsers}
|
||||||
|
|
||||||
|
|
||||||
|
@app.get("/parsers/{parser_name}/getters", tags=["Общее"],
|
||||||
|
summary="Информация о геттерах парсера",
|
||||||
|
description="Возвращает информацию о доступных геттерах для указанного парсера",
|
||||||
|
responses={
|
||||||
|
200: {
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"example": {
|
||||||
|
"parser": "svodka_pm",
|
||||||
|
"getters": {
|
||||||
|
"single_og": {
|
||||||
|
"required_params": ["id", "codes", "columns"],
|
||||||
|
"optional_params": ["search"],
|
||||||
|
"description": "Получение данных по одному ОГ"
|
||||||
|
},
|
||||||
|
"total_ogs": {
|
||||||
|
"required_params": ["codes", "columns"],
|
||||||
|
"optional_params": ["search"],
|
||||||
|
"description": "Получение данных по всем ОГ"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
404: {
|
||||||
|
"description": "Парсер не найден"
|
||||||
|
}
|
||||||
|
})
|
||||||
|
async def get_parser_getters(parser_name: str):
|
||||||
|
"""Получение информации о геттерах парсера"""
|
||||||
|
if parser_name not in PARSERS:
|
||||||
|
raise HTTPException(
|
||||||
|
status_code=status.HTTP_404_NOT_FOUND,
|
||||||
|
detail=f"Парсер '{parser_name}' не найден"
|
||||||
|
)
|
||||||
|
|
||||||
|
parser_class = PARSERS[parser_name]
|
||||||
|
parser_instance = parser_class()
|
||||||
|
|
||||||
|
getters_info = parser_instance.get_available_getters()
|
||||||
|
|
||||||
|
return {
|
||||||
|
"parser": parser_name,
|
||||||
|
"getters": getters_info
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@app.get("/server-info", tags=["Общее"],
|
@app.get("/server-info", tags=["Общее"],
|
||||||
summary="Информация о сервере",
|
summary="Информация о сервере",
|
||||||
response_model=ServerInfoResponse,)
|
response_model=ServerInfoResponse,)
|
||||||
@@ -352,40 +400,40 @@ async def get_svodka_pm_total_ogs(
|
|||||||
raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
||||||
|
|
||||||
|
|
||||||
# @app.post("/svodka_pm/get_data", tags=[SvodkaPMParser.name])
|
@app.post("/svodka_pm/get_data", tags=[SvodkaPMParser.name])
|
||||||
# async def get_svodka_pm_data(
|
async def get_svodka_pm_data(
|
||||||
# request_data: dict
|
request_data: dict
|
||||||
# ):
|
):
|
||||||
# report_service = get_report_service()
|
report_service = get_report_service()
|
||||||
# """
|
"""
|
||||||
# Получение данных из отчета сводки факта СарНПЗ
|
Получение данных из отчета сводки факта СарНПЗ
|
||||||
|
|
||||||
# - indicator_id: ID индикатора
|
- indicator_id: ID индикатора
|
||||||
# - code: Код для поиска
|
- code: Код для поиска
|
||||||
# - search_value: Опциональное значение для поиска
|
- search_value: Опциональное значение для поиска
|
||||||
# """
|
"""
|
||||||
# try:
|
try:
|
||||||
# # Создаем запрос
|
# Создаем запрос
|
||||||
# request = DataRequest(
|
request = DataRequest(
|
||||||
# report_type='svodka_pm',
|
report_type='svodka_pm',
|
||||||
# get_params=request_data
|
get_params=request_data
|
||||||
# )
|
)
|
||||||
|
|
||||||
# # Получаем данные
|
# Получаем данные
|
||||||
# result = report_service.get_data(request)
|
result = report_service.get_data(request)
|
||||||
|
|
||||||
# if result.success:
|
if result.success:
|
||||||
# return {
|
return {
|
||||||
# "success": True,
|
"success": True,
|
||||||
# "data": result.data
|
"data": result.data
|
||||||
# }
|
}
|
||||||
# else:
|
else:
|
||||||
# raise HTTPException(status_code=404, detail=result.message)
|
raise HTTPException(status_code=404, detail=result.message)
|
||||||
|
|
||||||
# except HTTPException:
|
except HTTPException:
|
||||||
# raise
|
raise
|
||||||
# except Exception as e:
|
except Exception as e:
|
||||||
# raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
||||||
|
|
||||||
|
|
||||||
@app.post("/svodka_ca/upload", tags=[SvodkaCAParser.name],
|
@app.post("/svodka_ca/upload", tags=[SvodkaCAParser.name],
|
||||||
@@ -562,38 +610,38 @@ async def get_svodka_ca_data(
|
|||||||
# raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
# raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
||||||
|
|
||||||
|
|
||||||
# @app.post("/monitoring_fuel/get_data", tags=[MonitoringFuelParser.name])
|
@app.post("/monitoring_fuel/get_data", tags=[MonitoringFuelParser.name])
|
||||||
# async def get_monitoring_fuel_data(
|
async def get_monitoring_fuel_data(
|
||||||
# request_data: dict
|
request_data: dict
|
||||||
# ):
|
):
|
||||||
# report_service = get_report_service()
|
report_service = get_report_service()
|
||||||
# """
|
"""
|
||||||
# Получение данных из отчета мониторинга топлива
|
Получение данных из отчета мониторинга топлива
|
||||||
|
|
||||||
# - column: Название колонки для агрегации (normativ, total, total_svod)
|
- column: Название колонки для агрегации (normativ, total, total_svod)
|
||||||
# """
|
"""
|
||||||
# try:
|
try:
|
||||||
# # Создаем запрос
|
# Создаем запрос
|
||||||
# request = DataRequest(
|
request = DataRequest(
|
||||||
# report_type='monitoring_fuel',
|
report_type='monitoring_fuel',
|
||||||
# get_params=request_data
|
get_params=request_data
|
||||||
# )
|
)
|
||||||
|
|
||||||
# # Получаем данные
|
# Получаем данные
|
||||||
# result = report_service.get_data(request)
|
result = report_service.get_data(request)
|
||||||
|
|
||||||
# if result.success:
|
if result.success:
|
||||||
# return {
|
return {
|
||||||
# "success": True,
|
"success": True,
|
||||||
# "data": result.data
|
"data": result.data
|
||||||
# }
|
}
|
||||||
# else:
|
else:
|
||||||
# raise HTTPException(status_code=404, detail=result.message)
|
raise HTTPException(status_code=404, detail=result.message)
|
||||||
|
|
||||||
# except HTTPException:
|
except HTTPException:
|
||||||
# raise
|
raise
|
||||||
# except Exception as e:
|
except Exception as e:
|
||||||
# raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
raise HTTPException(status_code=500, detail=f"Внутренняя ошибка сервера: {str(e)}")
|
||||||
|
|
||||||
|
|
||||||
# @app.post("/monitoring_fuel/upload_directory", tags=[MonitoringFuelParser.name])
|
# @app.post("/monitoring_fuel/upload_directory", tags=[MonitoringFuelParser.name])
|
||||||
|
|||||||
Reference in New Issue
Block a user