Created Queries and Execute endpoint

This commit is contained in:
2025-02-24 12:15:01 +03:00
parent cabcf837f9
commit 836ce1dc82
14 changed files with 635 additions and 50 deletions

View File

@@ -7,17 +7,17 @@ from data.crud import read_all_users, read_user, create_user, delete_user
from core.dependencies import get_db, get_current_user, get_admin_user
from sqlalchemy.exc import IntegrityError
from core.exceptions import ObjectNotFoundInDB, UserNotFound
from core.scripts import create_secret
from utils.scripts import create_secret
users_router = APIRouter()
router = APIRouter()
@users_router.get("/me")
@router.get("/me")
async def get_me(user=Depends(get_current_user)) -> UserOut:
return user
@users_router.get(
@router.get(
"/",
dependencies=[Depends(get_current_user)],
)
@@ -25,7 +25,7 @@ async def get_all_users_endpoint(db=Depends(get_db)) -> list[UserOut]:
return await read_all_users(db=db)
@users_router.post(
@router.post(
"/", dependencies=[Depends(get_current_user)], status_code=status.HTTP_201_CREATED
)
async def create_user_endpoint(
@@ -42,7 +42,7 @@ async def create_user_endpoint(
},
)
@users_router.post('/update-my-api_key/', status_code=status.HTTP_204_NO_CONTENT)
@router.post('/update-my-api_key/', status_code=status.HTTP_204_NO_CONTENT)
async def update_user_own_api_key(user=Depends(get_current_user), db=Depends(get_db)):
if user.role == UserRole.admin:
raise HTTPException(status_code=400, detail={
@@ -54,7 +54,7 @@ async def update_user_own_api_key(user=Depends(get_current_user), db=Depends(get
await db.commit()
await db.refresh(user)
@users_router.post('/update-user-api_key/', status_code=status.HTTP_202_ACCEPTED, dependencies=[Depends(get_admin_user)])
@router.post('/update-user-api_key/', status_code=status.HTTP_202_ACCEPTED, dependencies=[Depends(get_admin_user)])
async def update_user_own_api_key(user_id:int, db=Depends(get_db)) -> UserInDBBase:
user = await read_user(db=db, user_id=user_id)
if user is None:
@@ -65,7 +65,7 @@ async def update_user_own_api_key(user_id:int, db=Depends(get_db)) -> UserInDBBa
await db.refresh(user)
return user
@users_router.delete(
@router.delete(
"/", dependencies=[Depends(get_admin_user)], status_code=status.HTTP_204_NO_CONTENT
)
async def delete_user_endpoint(user_id: int, db=Depends(get_db)):