Files
2026-06-21 13:31:10 +03:00

25 lines
749 B
Python

from fastapi import APIRouter
import aiofiles
import json
# from async_lru import alru_cache
import logging
logging.basicConfig(level=logging.INFO)
router = APIRouter(prefix='/api/v1', tags=['tariffs'])
# @alru_cache(maxsize=1, ttl=86400)
async def get_tariffs_from_file():
async with aiofiles.open('data/tariffs.json', 'r', encoding='utf-8') as f:
content = await f.read()
data = json.loads(content) # <- блокирующая операция, но с маленьким контентом + кэш
# Удаляем squad_uuids
for tariff in data.get('tariffs', []):
tariff.pop('squad_uuids', None)
return data
@router.get('/tariffs')
async def get_tariffs():
return await get_tariffs_from_file()