Spaces:
Running
Running
| from fastapi import ( | |
| APIRouter, | |
| Depends, | |
| ) | |
| from sqlalchemy.orm import Session | |
| from DocPilot.backend.app.db.session import get_db | |
| from DocPilot.backend.app.core.dependencies import ( | |
| get_current_user, | |
| ) | |
| router = APIRouter() | |
| def get_plan( | |
| current_user=Depends(get_current_user), | |
| ): | |
| return { | |
| "username": current_user.username, | |
| "plan": current_user.plan, | |
| } | |
| def upgrade_plan( | |
| current_user=Depends(get_current_user), | |
| db: Session = Depends(get_db), | |
| ): | |
| current_user.plan = "pro" | |
| db.commit() | |
| db.refresh(current_user) | |
| return { | |
| "message": "Upgraded to pro plan.", | |
| "plan": current_user.plan, | |
| } | |
| def downgrade_plan( | |
| current_user=Depends(get_current_user), | |
| db: Session = Depends(get_db), | |
| ): | |
| current_user.plan = "free" | |
| db.commit() | |
| db.refresh(current_user) | |
| return { | |
| "message": "Downgraded to free plan.", | |
| "plan": current_user.plan, | |
| } | |