How aswadekarb24-code/dbms_minmax_proj_1 works
TPQA is an academic consultancy and third-party audit management platform. Clients and faculty authenticate, create and review projects, then advance them through acceptance, approval, invoicing, payment, completion, revenue distribution, and closure; faculty can also revert a step. The graph preserves the documented nine stages and the admin, dashboard, and authentication branches. Source excerpts show router dispatch and selected storage/authentication relationships; unsampled frontend project and admin wiring is not inferred.
Main entry points: consultancy.py Consultancy API · auth.py Authentication API · database.py Database sessions · deps.py Token validation
Components 26
Web application
- Sign-in and signup
frontend/lib/auth-context.tsx - HTTP client
frontend/lib/api.ts - Role dashboards
frontend/app/dashboard - Project workspace
frontend/app/dashboard/projects/[id]/page.tsx - Workflow forms
frontend/components/workflow/WorkflowContainer.tsx - Step modals
frontend/components/workflow/modals/StepModals.tsx
Backend API
- Authentication API
backend/routers/auth.py - Admin API
backend/routers/admin.py - Consultancy API
backend/routers/consultancy.py
Consultancy lifecycle
- Request
backend/consultancy_steps/step_1_request.py - Faculty response
backend/consultancy_steps/step_2_response.py - Agency acceptance
backend/consultancy_steps/step_3_acceptance.py - Director approval
backend/consultancy_steps/step_4_approval.py - Proforma invoice
backend/consultancy_steps/step_5_proforma.py - Tax and receipt
backend/consultancy_steps/step_6_tax.py - Completion report
backend/consultancy_steps/step_7_completion.py - Revenue distribution
backend/consultancy_steps/step_8_distribution.py - Project closure
backend/consultancy_steps/step_9_close.py - Step reversion
backend/consultancy_steps/step_revert.py
Persistence and security
- Token validation
backend/deps.py - Password and tokens
backend/core/security.py - Database sessions
backend/core/database.py - Domain data models
backend/models/tables.py
Other components
- Clients
- Faculty and directors
- PostgreSQL
Connections 31
- Clients → Sign-in and signup: signs up
- Faculty and directors → Sign-in and signup: signs in
- Sign-in and signup → HTTP client: sends requests
frontend/lib/auth-context.tsx - HTTP client → Authentication API: calls auth endpoints
- Clients → Role dashboards: uses
- Faculty and directors → Role dashboards: uses
- Role dashboards → Project workspace: opens projects
- Project workspace → Workflow forms: presents workflow
- Workflow forms → Step modals: renders
frontend/components/workflow/WorkflowContainer.tsx - Faculty and directors → Admin API: administers
- Authentication API → Password and tokens: hashes and verifies
backend/routers/auth.py - Authentication API → Token validation: uses protected routes
backend/routers/auth.py - Token validation → Password and tokens: decodes tokens
backend/deps.py - Authentication API → Database sessions: opens database sessions
backend/routers/auth.py - Admin API → Database sessions: opens database sessions
backend/routers/admin.py - Consultancy API → Database sessions: opens database sessions
backend/routers/consultancy.py - Token validation → Database sessions: loads users
backend/deps.py - Database sessions → PostgreSQL: connects
backend/core/database.py - Authentication API → Domain data models: queries users
backend/routers/auth.py - Token validation → Domain data models: loads user records
backend/deps.py - Consultancy API → Domain data models: queries projects
backend/routers/consultancy.py - Consultancy API → Request: dispatches request
backend/routers/consultancy.py - Consultancy API → Faculty response: dispatches response
backend/routers/consultancy.py - Consultancy API → Agency acceptance: dispatches acceptance
backend/routers/consultancy.py - Consultancy API → Director approval: dispatches approval
backend/routers/consultancy.py - Consultancy API → Proforma invoice: dispatches invoice
backend/routers/consultancy.py - Consultancy API → Tax and receipt: dispatches payment
backend/routers/consultancy.py - Consultancy API → Completion report: dispatches report
backend/routers/consultancy.py - Consultancy API → Revenue distribution: dispatches distribution
backend/routers/consultancy.py - Consultancy API → Project closure: dispatches closure
backend/routers/consultancy.py - Consultancy API → Step reversion: dispatches reversion
backend/routers/consultancy.py