31 lines
945 B
Python
31 lines
945 B
Python
from fastapi import APIRouter, Depends
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
|
|
from app.database import get_db
|
|
from app.dependencies import get_current_admin
|
|
from app.schemas.admin import SystemConfigUpdateRequest
|
|
from app.services.admin_service import get_system_configs, update_system_configs
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.get("/config")
|
|
async def get_config(
|
|
admin_payload: dict = Depends(get_current_admin),
|
|
session: AsyncSession = Depends(get_db),
|
|
) -> dict:
|
|
_ = admin_payload
|
|
data = await get_system_configs(session)
|
|
return {"code": 0, "message": "ok", "data": data}
|
|
|
|
|
|
@router.put("/config")
|
|
async def update_config(
|
|
payload: SystemConfigUpdateRequest,
|
|
admin_payload: dict = Depends(get_current_admin),
|
|
session: AsyncSession = Depends(get_db),
|
|
) -> dict:
|
|
_ = admin_payload
|
|
data = await update_system_configs(session, payload.configs)
|
|
return {"code": 0, "message": "ok", "data": data}
|