feat: 전문적이고 모던한 OAuth 로그인 UI 구현
- AiMond Authorization 브랜딩 적용 - 다크모드 기반 글래스모피즘 디자인 - 애니메이션 효과 (플로팅, 그라디언트, 포커스) - React Router 기반 라우팅 구조 - AuthContext를 통한 인증 상태 관리 - 대시보드 및 관리 페이지 기본 구조 - Backend API 엔드포인트 구조 개선 - pymongo 호환성 문제 수정 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
25
oauth/backend/app/api/v1/endpoints/admin.py
Normal file
25
oauth/backend/app/api/v1/endpoints/admin.py
Normal file
@ -0,0 +1,25 @@
|
||||
from fastapi import APIRouter, Depends, HTTPException
|
||||
from typing import List
|
||||
from app.core.security import get_current_user, require_admin
|
||||
from app.models.user import User
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@router.get("/users", dependencies=[Depends(require_admin)])
|
||||
async def get_all_users():
|
||||
# TODO: Implement get all users logic
|
||||
return {"users": []}
|
||||
|
||||
@router.get("/stats", dependencies=[Depends(require_admin)])
|
||||
async def get_system_stats():
|
||||
# TODO: Implement system statistics logic
|
||||
return {
|
||||
"total_users": 0,
|
||||
"total_applications": 0,
|
||||
"active_sessions": 0
|
||||
}
|
||||
|
||||
@router.post("/users/{user_id}/role", dependencies=[Depends(require_admin)])
|
||||
async def update_user_role(user_id: str, role: str):
|
||||
# TODO: Implement role update logic
|
||||
return {"message": f"User {user_id} role updated to {role}"}
|
||||
Reference in New Issue
Block a user