2024-09-17 12:11:39 +08:00
|
|
|
import uuid
|
|
|
|
from typing import Any
|
|
|
|
|
|
|
|
from fastapi import APIRouter, HTTPException, UploadFile, FastAPI, File
|
|
|
|
from sqlmodel import func, select
|
|
|
|
from typing import List
|
|
|
|
from app.api.deps import CurrentUser, SessionDep
|
|
|
|
from app.models import SettingBase, Setting
|
|
|
|
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
|
|
|
|
|
|
@router.get(
|
|
|
|
"/",
|
|
|
|
response_model=Setting,
|
|
|
|
)
|
2024-10-05 15:01:58 +08:00
|
|
|
def read_setting(session: SessionDep) -> Any:
|
2024-09-17 12:11:39 +08:00
|
|
|
"""
|
|
|
|
Retrieve users.
|
|
|
|
"""
|
|
|
|
setting = session.exec(select(Setting)).first()
|
|
|
|
if not setting:
|
|
|
|
raise HTTPException(status_code=404, detail="Setting not found")
|
|
|
|
return setting
|
|
|
|
|
|
|
|
|
|
|
|
@router.put("/", response_model=SettingBase)
|
|
|
|
def update_setting(
|
|
|
|
*,
|
|
|
|
session: SessionDep,
|
|
|
|
current_user: CurrentUser,
|
|
|
|
setting_in: SettingBase,
|
|
|
|
) -> Any:
|
|
|
|
"""
|
|
|
|
Update an item.
|
|
|
|
"""
|
|
|
|
setting = session.exec(select(Setting)).first()
|
|
|
|
update_dict = setting_in.model_dump(exclude_unset=True)
|
|
|
|
setting.sqlmodel_update(update_dict)
|
|
|
|
session.add(setting)
|
|
|
|
session.commit()
|
|
|
|
session.refresh(setting)
|
|
|
|
return setting
|