restructure: move backend into backend/

This commit is contained in:
2026-07-31 23:53:50 +05:00
parent 9074e55a13
commit 79bc04aaa7
29 changed files with 0 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from .. import crud
from ..database import get_db
from ..models import RadUserGroup
from ..pagination import Page, PageParams
from ..schemas import UserGroupCreate, UserGroupOut, UserGroupUpdate
router = APIRouter(prefix="/radusergroup", tags=["radusergroup"])
@router.get("", response_model=Page[UserGroupOut])
def list_usergroups(
page: PageParams = Depends(),
username: str | None = None,
groupname: str | None = None,
db: Session = Depends(get_db),
):
filters = {"username": username, "groupname": groupname}
total = crud.count_rows(db, RadUserGroup, filters)
rows = crud.list_rows(db, RadUserGroup, limit=page.limit, offset=page.offset,
filters=filters, order_by=RadUserGroup.priority.asc())
return Page(total=total, limit=page.limit, offset=page.offset, items=rows)
@router.get("/{item_id}", response_model=UserGroupOut)
def get_usergroup(item_id: int, db: Session = Depends(get_db)):
return crud.get_row_or_404(db, RadUserGroup, item_id)
@router.post("", response_model=UserGroupOut, status_code=201)
def create_usergroup(payload: UserGroupCreate, db: Session = Depends(get_db)):
return crud.create_row(db, RadUserGroup, payload.model_dump())
@router.put("/{item_id}", response_model=UserGroupOut)
def update_usergroup(item_id: int, payload: UserGroupUpdate, db: Session = Depends(get_db)):
obj = crud.get_row_or_404(db, RadUserGroup, item_id)
return crud.update_row(db, obj, payload.model_dump(exclude_unset=True))
@router.delete("/{item_id}", status_code=204)
def delete_usergroup(item_id: int, db: Session = Depends(get_db)):
obj = crud.get_row_or_404(db, RadUserGroup, item_id)
crud.delete_row(db, obj)