Diagrama sem nome.drawio.png

Especificação de Entidades e Relacionamentos


Entidades:
- cargos(NOME, DESCRICAO, ARQUIVAR_EM);
- clientes(NOME, CPF, RG, SENHA, EMAIL, RECUPERAR_SENHA, ARQUIVAR_EM);
- cartoes(NOME_TITULAR, NUMERO, VALIDADE, CVV, TIPO);
- enderecos_cli(CEP, CIDADE, UF, LOGRADOURO, NUMERO);
- funcionarios(NOME, DATA_NASC, CPF, RG, SALARIO, EMAIL, SENHA, PERIODO,
		ADMISSAO, DEMISSAO);
- enderecos_func(LOGRADOURO, NUMERO, CEP, BAIRRO, CIDADE, UF);
- formas_pagamentos(TIPO);
- historicos(LOGS, DATA_HORA);
- status(STATUS);
- tipos(TIPO);
- quartos(QUARTO, DESCRICAO, PRECO_DIARIA, QTDE_PESSOAS, DESTAQUE, ARQUIVAR_EM);
- imagens(IMAGEM_CAMINHO_1, IMAGEM_CAMINHO_2);
- pedidos_reservas(DATA_RESERVA, DATA_ENTRADA, DATA_SAIDA, NOME, CPF, 
		EMAIL, ACOMPANHANTES);
- negativas(MOTIVO_NEGATIVA);
- novidades(NOME, EMAIL);
- reservas(PRECO_TOTAL, PARCELAS_TOTAL, DATA_ENTRADA, DATA_SAIDA);
- pagamentos(ENTRADA, RESTANTE, TAXA_JUROS);
- acoes(NOME);
- permissoes(CONSULTA, DELETE, CRIAR, ALTERAR);
- telefones_cli(TIPO, TEL);
- telefones_func(TIPO, TEL);

Relacionamentos:
Item_pedido se refere a Produto (N:1)
Item_pedido se refere a Pedido (N:1)
Item_pedido se refere a Forma_pagamento (N:1)
Item_pedido se refere a Endereco (N:1)
Item_pedido se refere a Usuario (N:1)
Pedido se refere a Forma_entrega (N:1)
Pedido se refere a Forma_pagamento (N:1)
Pedido se refere a Endereco (N:1)
Pedido se refere a Usuario (N:1)
Pedido se refere a Item_pedido (1:N)
Produto se refere a Categoria (N:1)
Produto se refere a Marca (N:1)
Produto se refere a Fornecedor (N:1)
Produto se refere a Item_pedido (1:N)
Categoria se refere a Produto (1:N)
Marca se refere a Produto (1:N)
Fornecedor se refere a Produto (1:N)
Endereco se refere a Usuario (1:N)
Forma_pagamento se refere a Pedido (1:N)
Forma_entrega se refere a Pedido (1:N)
Usuario se refere a Endereco (1:N)

Neste modelo, temos vinte e uma entidades. Cada uma dessas entidades possui seus respectivos atributos.

  1. Usuario se refere a Pedido(1:N): O relacionamento entre as entidades Usuario e Pedido é do tipo 1:N, pois um usuário pode realizar vários pedidos, mas um pedido só pode ser realizado por um único usuário.
  2. Pedido se refere a Item_pedido (1:N): O relacionamento entre as entidades Pedido e Item_pedido é do tipo 1:N, pois um pedido pode conter vários itens, mas um item só pode pertencer a um único pedido.
  3. Produto se refere a Item_pedido (1:N): O relacionamento entre as entidades Produto e Item_pedido é do tipo 1:N, pois um produto pode aparecer em vários itens de pedidos, mas um item só pode ter um único produto.
  4. Categoria se refere a Produto (1:N): O relacionamento entre as entidades Categoria e Produto é do tipo 1:N, pois uma categoria pode conter vários produtos, mas um produto só pode pertencer a uma única categoria.
  5. Marca se refere a Produto (1:N): O relacionamento entre as entidades Marca e Produto é do tipo 1:N, pois uma marca pode ter vários produtos, mas um produto só pode pertencer a uma única marca.
  6. Pedido se refere a Endereco (N:1): O relacionamento entre as entidades Pedido e Endereco é do tipo N:1, pois um pedido pode ter um único endereço de entrega, mas um endereço pode ser utilizado em vários pedidos.
  7. Produto se refere a Imagem_produto (1:N): O relacionamento entre as entidades Produto e Imagem_produto é do tipo 1:N, pois um produto pode ter várias imagens associadas, mas uma imagem só pode pertencer a um único produto.
  8. Usuario se refere a Endereco (1:N): O relacionamento entre as entidades Usuario e Endereco é do tipo 1:N, pois um usuário pode ter vários endereços de entrega cadastrados, mas um endereço só pode pertencer a um único usuário.
  9. Produto se refere a Avaliacao_produto (1:N): O relacionamento entre as entidades Produto e Avaliacao_produto é do tipo 1:N, pois um produto pode ter várias avaliações de usuários associadas, mas uma avaliação só pode ser atribuída a um único produto.
  10. Usuario se refere a Avaliacao_produto (1:N): O relacionamento entre as entidades Usuario e Avaliacao_produto é do tipo 1:N, pois um usuário pode realizar várias avaliações de produtos, mas uma avaliação só pode ser atribuída a um único usuário.
  11. Produto se refere a Estoque (1:N): O relacionamento entre as entidades Produto e Estoque é do tipo 1:N, pois um produto pode ter várias entradas e saídas de estoque registradas, mas um registro só pode referenciar um único produto.
  12. Pedido se refere a Pagamento (1:N): O relacionamento entre as entidades Pedido e Pagamento é do tipo 1:N, pois um pedido pode ter várias formas de pagamento associadas, mas uma forma de pagamento só pode ser utilizada em um único pedido.
  13. Pagamento se refere a Transacao (1:N): O relacionamento entre as entidades Pagamento e Transacao é do tipo 1:N, pois um pagamento pode ter várias transações associadas, mas uma transação só pode pertencer a um único pagamento.
  14. O relacionamento entre as entidades Produto e ItemPedido é do tipo N:1, pois um produto pode estar presente em vários itens de pedido diferentes, mas cada item de pedido só pode conter um único produto.
  15. O relacionamento entre as entidades ItemPedido e Pedido é do tipo N:1, pois um pedido pode ter vários itens diferentes, mas cada item de pedido só pode pertencer a um único pedido.
  16. O relacionamento entre as entidades ItemPedido e Adicional é do tipo N:M, pois um item de pedido pode ter vários adicionais diferentes e um adicional pode estar presente em vários itens de pedido diferentes.
  17. O relacionamento entre as entidades Pedido e Mesa é do tipo 1:N, pois um pedido só pode estar associado a uma única mesa, mas uma mesma mesa pode estar associada a vários pedidos.
  18. O relacionamento entre as entidades Pedido e FormaPagamento é do tipo N:1, pois um pedido só pode ter uma única forma de pagamento, mas várias pedidos podem ser associados a uma mesma forma de pagamento.
  19. O relacionamento entre as entidades Pedido e StatusPedido é do tipo N:1, pois um pedido só pode ter um único status, mas vários pedidos podem ter o mesmo status.
  20. O relacionamento entre as entidades FormaPagamento e Pagamento é do tipo 1:N, pois uma forma de pagamento pode ter vários pagamentos associados, mas um pagamento só pode ser associado a uma única forma de pagamento.