feat: staff management apis
This commit is contained in:
+19
-1
@@ -1,8 +1,11 @@
|
||||
from fastapi import APIRouter, Request, status
|
||||
from fastapi import APIRouter, Request
|
||||
|
||||
from services.clinicServices import ClinicServices
|
||||
from schemas.UpdateSchemas import ClinicStatusUpdate
|
||||
from schemas.ApiResponse import ApiResponse
|
||||
from schemas.BaseSchemas import CreateSuperAdmin, ResetPasswordBase
|
||||
from services.authService import AuthService
|
||||
from utils.constants import DEFAULT_LIMIT, DEFAULT_PAGE
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@@ -11,3 +14,18 @@ router = APIRouter()
|
||||
def update_clinic_status(req:Request, data: ClinicStatusUpdate):
|
||||
response = ClinicServices().update_clinic_status(req.state.user, data.clinic_id, data.status, data.documentStatus, data.rejection_reason)
|
||||
return ApiResponse(data=response, message="Clinic status updated successfully")
|
||||
|
||||
|
||||
@router.post("/user")
|
||||
def create_user(req:Request, user_data: CreateSuperAdmin):
|
||||
AuthService().create_super_admin(req.state.user, user_data)
|
||||
return ApiResponse(data="OK", message="User created successfully")
|
||||
|
||||
|
||||
@router.get("/")
|
||||
def get_users(req:Request, limit:int = DEFAULT_LIMIT, page:int = DEFAULT_PAGE, search:str = ""):
|
||||
if page < 1:
|
||||
page = 1
|
||||
offset = (page - 1) * limit
|
||||
users = AuthService().get_admins(req.state.user, limit, offset, search)
|
||||
return ApiResponse(data=users, message="Users retrieved successfully")
|
||||
|
||||
+12
-1
@@ -2,7 +2,7 @@ from fastapi import APIRouter, BackgroundTasks
|
||||
from services.authService import AuthService
|
||||
from schemas.CreateSchemas import UserCreate
|
||||
from schemas.ApiResponse import ApiResponse
|
||||
from schemas.BaseSchemas import AuthBase, AuthOTP
|
||||
from schemas.BaseSchemas import AuthBase, AuthOTP, ResetPasswordBase
|
||||
from services.clinicServices import ClinicServices
|
||||
from http import HTTPStatus
|
||||
|
||||
@@ -34,6 +34,17 @@ def get_latest_clinic_id():
|
||||
)
|
||||
|
||||
|
||||
@router.post('/admin/forget-password')
|
||||
def forget_password(email: str):
|
||||
AuthService().forget_password(email)
|
||||
return ApiResponse(data="OK", message="Password reset email sent successfully")
|
||||
|
||||
@router.post('/admin/reset-password')
|
||||
def reset_password(data: ResetPasswordBase):
|
||||
AuthService().reset_password(data.token, data.password)
|
||||
return ApiResponse(data="OK", message="Password reset successfully")
|
||||
|
||||
|
||||
@router.post("/send-otp")
|
||||
def send_otp(email: str):
|
||||
AuthService().send_otp(email)
|
||||
|
||||
Reference in New Issue
Block a user