Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • I Idoso Mais 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
  • IDOSO Mais
  • Idoso Mais Wiki
  • Wiki
  • Banco de Dados

Last edited by Luiza Dara Valentini Nov 10, 2025
Page history
This is an old version of this page. You can view the most recent version or browse the history.

Banco de Dados

Home

Escopo e Cronograma

Processo

Design/Mockups

Configuração

Arquitetura

Código

BD

Qualidade

Banco de Dados

MongoDB_Logo.svg

Descrição

Para realização do projeto, escolhemos utilizar o banco de dados não relacional Mongo DB. A razão pela escolha deste modelo de banco de dados se deu principalmente por escolha do time em aprender novas tecnologias, pela facilidade de integração com o backend da aplicação e também devido ao projeto possuir somente uma entidade a ser armazenada, que é o Usuário.

Sumário

  • Modelagem
    • Esquema Conceitual
    • Collection
  • Implementação
    • Schemas

Modelagem

Esquema Conceitual

banco_de_dados

Collections

As informações dentro do banco de dados MongoDB são armazenadas dentro de collections ou coleções. Coleções são equivalentes a tabelas de banco de dados relacionais, guardando informações importantes em relação a uma entidade.

Coleção de usuário:

{ "_id": { 
     "$oid": "objectId" 
}, 
"nome": "String", 
"password": "String", 
"cpf": "String", 
"telefone": "String", 
"email": "String", 
"numeroINSS": "String", 
"endereco": { 
      "cep": "String", 
      "nomeRua": "String", 
      "numeroCasa": "String", 
      "complemento": "String",
      "bairro": "String", 
      "cidade": "String", 
      "estado": "String"
},
"contatosProfissionais": [
    {
      "telefoneProfissional": "String",
      "nomeProfissional": "String",
      "descricao": "String"
    },
],
"contatoEmergencia": "String",
"administrador": "bool",
"medicamentos": "String",
"planoDeSaude": "String"
}

Implementação

Schemas

Schema do usuário:

@Schema()
export class User implements IUser {
  @Prop({ required: true })
  nome: string;

  @Prop({ required: true })
  password: string;

  @Prop({ required: true })
  cpf: string;

  @Prop({ required: true })
  telefone: string;

  @Prop({ required: true })
  email: string;

  @Prop()
  numeroINSS?: string;

  @Prop()
  planoDeSaude?: string;

  @Prop(Address)
  endereco?: Address;

  @Prop()
  medicamentos?: string;

  @Prop({ required: true })
  contatosProfissionais: Contact[];

  @Prop({ required: true })
  contatoEmergencia: string;

  @Prop({ required: true })
  administrador: boolean;
}

Schema dos contatos:

@Schema()
export class Contact implements IContact {
  telefoneProfissional: string;
  nomeProfissional: string;
  descricao?: string;
}

Schema de endereço:

@Schema()
export class Address implements IAddress {
  cep: string;
  nomeRua: string;
  numeroCasa: string;
  complemento?: string;
  bairro?: string;
  cidade: string;
  estado?: string;
}
Clone repository
  • Banco de Dados
  • Banco_de_Dados
  • Gerência
  • Horários disponíveis
  • Instalação
  • Retro
  • Utilizando a wiki
    • adicionando imagens
    • escrevendo em markdown
    • wiki no editor de texto
  • arquitetura
  • codigo
  • configuracao
  • design_mockups
  • escopo
  • estudos
View All Pages