1.1 KiB
1.1 KiB
Visione Database Schema
The schema is stored in migrations/001_initial_schema.sql.
Important tables:
users: identity, personal data, password hash, points and moderation flags.roles,permissions,role_permissions,user_roles: authorization.otp_challenges: local OTP login flow.api_tokens: bearer tokens for the local API.report_categories: report classification.areas: named city areas with GeoJSON polygon boundaries.team_categories,teams: municipal intervention teams.reports: citizen reports with coordinates, address, status, area and assigned operator.report_status_history: immutable status transition log.assignments: report-to-team assignment history.report_photos: uploaded photo URL, original filename, content type and size.messages: citizen/operator report conversation.feedback: citizen rating and comment after resolution.reward_events: indirect gamification points ledger.
GeoJSON is intentionally used instead of MySQL Spatial in milestone 1 to keep the local setup simple and portable.