final
This commit is contained in:
+14
-3
@@ -2,6 +2,7 @@ from datetime import date, datetime, timedelta
|
||||
from fastapi import APIRouter, Depends, Request
|
||||
from fastapi.responses import RedirectResponse
|
||||
|
||||
from db.handlers.access import AccessLevelHandler
|
||||
from db.handlers.categories import CategoryHandler
|
||||
from utils import render, requestDict, logger
|
||||
from .user import router as user
|
||||
@@ -181,14 +182,24 @@ async def post_requests(
|
||||
"startDate": startDate.strftime("%Y-%m-%d"),
|
||||
"endDate": endDate.strftime("%Y-%m-%d"),
|
||||
}
|
||||
# logger.info(resultData.get("data"))
|
||||
case "users":
|
||||
users = await UserHandler.getAll()
|
||||
if users:
|
||||
if isinstance(users, list):
|
||||
if len(users) == 0:
|
||||
resultData["status"] = "ok"
|
||||
resultData["data"] = {
|
||||
"users": [],
|
||||
"accessLevels": [],
|
||||
}
|
||||
for user in users:
|
||||
user.pop("hashed_password")
|
||||
accessLevels = await AccessLevelHandler.getAll()
|
||||
resultData["status"] = "ok"
|
||||
resultData["data"] = users
|
||||
resultData["data"] = {
|
||||
"users": users,
|
||||
"accessLevels": accessLevels,
|
||||
}
|
||||
# logger.info(resultData)
|
||||
case _:
|
||||
pass
|
||||
return resultData
|
||||
|
||||
Binary file not shown.
Binary file not shown.
+56
-3
@@ -12,9 +12,62 @@ async def get_user():
|
||||
return
|
||||
|
||||
|
||||
@router.post("/")
|
||||
async def create_user():
|
||||
return
|
||||
@router.post("/", summary="Правка данных пользователя")
|
||||
async def manage_user(request_data: dict = Depends(requestDict)):
|
||||
response = {"status": "error"}
|
||||
userData = request_data.get("body").get("userData", {})
|
||||
action = request_data.get("body").get("action")
|
||||
userId = request_data.get("body").get("userId")
|
||||
match action:
|
||||
case "create":
|
||||
result = await UserHandler.add(userData, userId)
|
||||
if result:
|
||||
response["status"] = "ok"
|
||||
case "update":
|
||||
result = await UserHandler.edit(userData, user_id=userId)
|
||||
if "error" not in result:
|
||||
response["status"] = "ok"
|
||||
else:
|
||||
response["message"] = result["error"]
|
||||
case "delete":
|
||||
result = await UserHandler.delete(userData["id"], userId)
|
||||
if "error" not in result:
|
||||
response["status"] = "ok"
|
||||
else:
|
||||
response["message"] = result["error"]
|
||||
case _:
|
||||
logger.error(f"Неверное действие: {action}")
|
||||
return response
|
||||
|
||||
|
||||
@router.post("/level", summary="Правка уровня доступа")
|
||||
async def manage_access_level(request_data: dict = Depends(requestDict)):
|
||||
logger.info(request_data.get("body"))
|
||||
action = request_data.get("body").get("action")
|
||||
userId = request_data.get("body").get("userId")
|
||||
levelData = request_data.get("body").get("changedLevelData")
|
||||
match action:
|
||||
case "create":
|
||||
result = await AccessLevelHandler.add(levelData, userId)
|
||||
if "error" not in result:
|
||||
return {"status": "ok"}
|
||||
else:
|
||||
return {"status": "error", "message": result["error"]}
|
||||
case "update":
|
||||
result = await AccessLevelHandler.edit(levelData, userId)
|
||||
if "error" not in result:
|
||||
return {"status": "ok"}
|
||||
else:
|
||||
return {"status": "error", "message": result["error"]}
|
||||
case "delete":
|
||||
result = await AccessLevelHandler.delete(levelData["id"], userId)
|
||||
if "error" not in result:
|
||||
return {"status": "ok"}
|
||||
else:
|
||||
return {"status": "error", "message": result["error"]}
|
||||
case _:
|
||||
logger.error(f"Неверное действие: {action}")
|
||||
return {"status": "ok"}
|
||||
|
||||
|
||||
@router.get("/login", name="Authentication", summary="Авторизация пользователя")
|
||||
|
||||
Reference in New Issue
Block a user