Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • wiki wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Plataforma de Doações para o Pão dos Pobres
  • wikiwiki
  • Wiki
  • Banco de Dados

Banco de Dados · Changes

Page history
Update Banco de Dados authored Aug 16, 2025 by Salette Cristina da Costa's avatar Salette Cristina da Costa
Hide whitespace changes
Inline Side-by-side
Banco-de-Dados.md 0 → 100644
View page @ 04a62154
| [**Home**](home) | [Escopo e Cronograma](Escopo%20e%20Cronograma) | [Processo](Processo) | [Mockups](design_mockups) | [Configuração](configuracao) | [Arquitetura](arquitetura) | [Código](codigo) | [BD](banco_dados) | [Qualidade](qualidade) |
# Banco de Dados – Plataforma de Doações
## Visão Geral
O banco de dados foi projetado para suportar a plataforma de campanhas de arrecadação, contemplando usuários (administradores e doadores), endereços, campanhas, doações, pagamentos e eventos.
---
## Entidades e Estrutura
### `user_account`
- `id` (UUID, PK)
- `email` (único, obrigatório)
- `password_hash`
### `admin`
- `user_id` (PK, FK → user_account.id)
- `root` (boolean, indica superadmin)
### `donor`
- `user_id` (PK, FK → user_account.id)
- `tax_id` (CPF, único)
- `full_name`, `birth_date`, `gender`, `phone`
### `address`
- `id` (UUID, PK)
- `state`, `city`, `street`, `number`, `complement`
### `donor_address`
- PK composta (`donor_id`, `address_id`)
- `is_primary` (boolean)
- `addr_type` (ex.: residencial, comercial)
### `campaign`
- `id` (UUID, PK)
- `description`, `target_amount`, `start_date`, `end_date`, `image_url`
- `status` (`campaign_status`)
- `admin_id` (FK → admin.user_id)
- `requester_id` (FK → donor.user_id)
### `donation`
- `id` (UUID, PK)
- `donation_type`
- `amount`, `periodicity`, `impact_area`
- `donor_id` (FK → donor.user_id)
- `campaign_id` (FK → campaign.id)
- `created_at` (timestamptz)
### `payment`
- `id` (UUID, PK)
- `method` (`payment_method`)
- `status` (`payment_status`)
- `amount`, `paid_at`
- `donation_id` (FK → donation.id)
### `event_item`
- `id` (UUID, PK)
- `url`, `description`, `start_date`, `end_date`, `created_at`
- `admin_id` (FK → admin.user_id)
---
## Índices
- `donor_address(address_id)`
- `campaign(admin_id)`
- `donation(donor_id)`
- `donation(campaign_id)`
- `payment(donation_id)`
---
## Observações
- Constraints de **ON DELETE** foram configuradas conforme regras de negócio.
- Doações preservam histórico mesmo se a campanha for excluída.
- Defaults: `uuid_generate_v4()` para IDs e `NOW()` para timestamps.
Clone repository
  • Arquitetura
  • BackEnd
  • Banco de Dados
  • Configuração
  • Design e Mockups
  • Escopo e Cronograma
  • FrontEnd
  • Gerência
  • Git Workflow
  • Qualidade
  • Home