Complete implementation of the Goa Government e-Licensing platform with: Backend: - NestJS API with JWT authentication - PostgreSQL database with Knex ORM - Redis caching and session management - MinIO document storage - Hyperledger Besu blockchain integration - Multi-department workflow system - Comprehensive API tests (266/282 passing) Frontend: - Angular 21 with standalone components - Angular Material + TailwindCSS UI - Visual workflow builder - Document upload with progress tracking - Blockchain explorer integration - Role-based dashboards (Admin, Department, Citizen) - E2E tests with Playwright (37 tests) Infrastructure: - Docker Compose orchestration - Blockscout blockchain explorer - Development and production configurations
66 lines
1.5 KiB
Plaintext
66 lines
1.5 KiB
Plaintext
stateDiagram-v2
|
|
[*] --> DRAFT: Create Request
|
|
|
|
DRAFT --> SUBMITTED: Submit for<br/>Review
|
|
DRAFT --> [*]: Abandon
|
|
|
|
SUBMITTED --> IN_REVIEW: Route to<br/>Dept Approvers
|
|
SUBMITTED --> [*]: Withdraw
|
|
|
|
IN_REVIEW --> APPROVED: All Depts<br/>Approve
|
|
IN_REVIEW --> REJECTED: Any Dept<br/>Rejects
|
|
IN_REVIEW --> PENDING_RESUBMISSION: Request<br/>Changes
|
|
|
|
PENDING_RESUBMISSION --> SUBMITTED: Resubmit with<br/>Changes
|
|
PENDING_RESUBMISSION --> [*]: Withdraw
|
|
|
|
APPROVED --> REVOKED: License<br/>Revocation
|
|
APPROVED --> [*]: Expired
|
|
|
|
REJECTED --> DRAFT: Appeal or<br/>Reapply
|
|
REJECTED --> [*]: Withdrawn
|
|
|
|
REVOKED --> [*]: End
|
|
|
|
note right of DRAFT
|
|
Local Draft
|
|
Applicant can edit
|
|
No blockchain record
|
|
end note
|
|
|
|
note right of SUBMITTED
|
|
Submitted to System
|
|
Hash recorded on chain
|
|
Locked from editing
|
|
end note
|
|
|
|
note right of IN_REVIEW
|
|
Multi-Dept Approval
|
|
Parallel workflows
|
|
Can be sequential
|
|
end note
|
|
|
|
note right of PENDING_RESUBMISSION
|
|
Waiting for changes
|
|
Applicant notified
|
|
Time limited window
|
|
end note
|
|
|
|
note right of APPROVED
|
|
License Granted
|
|
ERC-721 NFT minted
|
|
Verifiable on chain
|
|
end note
|
|
|
|
note right of REJECTED
|
|
Request Denied
|
|
Reason recorded
|
|
Can appeal (future)
|
|
end note
|
|
|
|
note right of REVOKED
|
|
License Cancelled
|
|
NFT burned
|
|
Audit trail kept
|
|
end note
|