-
-* [x] Cards com faturamento vendas, e ticket médio.
-* [x] Graficos - Produtos mais vendidos e tempos de preparo de petiscos.
-* [x] Grafico de faturamento mês a mês do ano anterio, atual, e projeção.
-* [x] Filtro por data (padrão últimos 30 dias).
-
-## Produtos
-
-
-* [x] Cadastrar e editar produtos.
-* [x] Ativar/Desativar produtos direto da tela de lista de produtos com um só click.
-* [x] Pesquisar produtos por nome.
-* [x] Pesquisa reativa.
-* [ ] Gerenciar o estoque de produto.
-
-### Comandas
-
-
-
-
-* [x] Abrir nova comanda(inserindo nome, associando ou não a mesa).
-* [x] Editar informações da comanda.
-* [x] Adicionar produtos na comanda.
-* [x] Adicionar observação ao produto(somente item da cozinha).
-* [x] Remover produtos da comanda.
-* [x] Imprimir cupom de pagamento.
-* [x] Imprimir fichas dos produtos.
-* [x] Receber pagamento parcial.
-* [x] Taxa de serviço opcional.
-* [x] Fechamento da comanda.
-* [x] Receber pagamento ou adicionar valor na conta do cliente.
-* [x] Adicionar valor na conta do cliente.
-* [x] Responsivo para mobile.
-
-### Mesa
-
-
-
-
-* [ ] Reserva de mesas.
-* [x] Mesas podem ser reposicionadas no mapa.
-* [x] Cores das mesas alteram automático se ocupadas.
-* [x] Visualiza comandas abertas na mesa com o valor de consumo.
-* [x] Associar pedidos e comandas a mesas.
-* [ ] Dividir contas.
-
-### Pedidos Cozinha
-
-
-* [x] Criar pedido automático (se no cadastro do produto tiver marcado cozinha).
-* [x] Aviso na cozinha via tablet.
-* [x] Cards da cozinha com cores diferentes para pedidos com observação, exluido, ou na fila.
-* [ ] Comunicação de pedidos via websocket.
-
-### Clientes
-
-
-
-* [x] Cadastrar novos clientes (nome, endereço, telefone, email).
-* [x] Editar informações de clientes existentes.
-* [ ] Excluir clientes.
-* [ ] Consultar o histórico de pedidos de um cliente.
-
-### Guarita
-
-
-* [x] Adicionar produtos, quantidade.
-* [x] Pesquisa produto reativa.
-* [x] Exibição de produtos em ordem de maior saida.
-* [x] Excluir produtos.
-* [x] Impressão de fichas de consumo.
-* [x] Atalhos do teclado para maior agilidade.
-* [x] Calculo de troco do pagamento.
-
-### Funcionários
-* [X] Cadastrar novos funcionários.
-* [x] Editar informações de funcionários existentes.
-* [x] Excluir funcionários.
-* [X] Gerenciar permissões de acesso.
-
-### Relatórios
-* [ ] Gerar relatório de vendas por período (diário, semanal, mensal).
-* [ ] Gerar relatório de estoque (produtos em falta, produtos com alta rotatividade).
-* [ ] Gerar relatório de clientes (mais ativos, menos ativos).
-* [ ] Gerar relatório de funcionários (horas trabalhadas, faltas).
-
-### Pagamentos
-* [ ] Integrar com gateways de pagamento (cartão de crédito, débito, PIX).
-* [x] Gerenciar formas de pagamento.
-* [x] Adicionar valor na conta do cliente(vincula a comanda).
-* [ ] Emitir notas fiscais eletrônicas.
-
-
-### Delivery
-* [ ] Cadastrar entregadores.
-* [ ] Gerenciar rotas de entrega.
-* [ ] Acompanhar pedidos em tempo real.
-
-### Sistema
-
-
-* [x] Gerenciar usuários do sistema (login, senha, permissões).
-* [ ] Realizar backups do sistema.
-
-## Tecnologias Utilizadas
-* **Django:** Framework Python para desenvolvimento web.
-* **Python:** Linguagem de programação principal do projeto.
-* **HTML:** Linguagem de marcação para disponibilizar os elementos na pagina.
-* **HTMX:** Biblioteca para deixar a pagina mais dinâmica, reduzindo a necessidade do js puro.
-* **CSS:** Linguagem para estilizar a interface do usuário.
-* **JavaScript:** Linguagem que executa a lógica da pagina do lado do cliente.
-
-## Como Executar o Projeto
-1. **Clonar o repositório:**
- ```bash
- git clone https://github.com/Pindoba/RRBEC.git
-2. **Criar um ambiente virtual:**
- ```bash
- python -m venv [nome da sua preferencia]
- source venv/bin/activate
-3. **Instalar as dependências:**
- ```bash
- pip install -r requirements.txt
-4. **Executar as migrations:**
- ```bash
- python manage.py migrate
-5. **Iniciar o servidor de desenvolvimento:**
- ```bash
- python manage.py runserver
diff --git a/WebSocketServer/Dockerfile b/WebSocketServer/Dockerfile
deleted file mode 100644
index ddfb0aa..0000000
--- a/WebSocketServer/Dockerfile
+++ /dev/null
@@ -1,14 +0,0 @@
-
-FROM python:3.12-slim
-
-WORKDIR /app
-
-RUN apt-get update && apt-get install -y git && apt-get clean
-
-RUN git clone https://github.com/welton89/websocket-RRBEC.git /app
-
-RUN pip install --upgrade pip && pip install websockets
-
-EXPOSE 8765
-
-CMD ["python", "websocket_server.py"]
diff --git a/WebSocketServer/servidor.py b/WebSocketServer/servidor.py
deleted file mode 100644
index 3678e09..0000000
--- a/WebSocketServer/servidor.py
+++ /dev/null
@@ -1,74 +0,0 @@
-import asyncio
-import websockets
-import json
-import logging
-import uuid
-
-
-# Configurar o registro de logs
-logging.basicConfig(level=logging.INFO)
-
-connected_clients = set()
-
-async def handle_client(websocket):
- logging.info(f"Cliente conectado: {websocket.remote_address}")
- connected_clients.add(websocket)
- # for client in connected_clients:
- # await client.send(json.dumps({"message": "Novo cliente conectado"}))
- # print(client)
- try:
- async for message in websocket:
- logging.info(f"Mensagem recebida de {websocket.remote_address}: {message}")
- print(f"Mensagem recebida de {websocket.remote_address}: {message}")
- try:
- data = json.loads(message)
- # Processa a mensagem aqui
- await process_message(data, websocket)
-
- except json.JSONDecodeError:
- logging.error(f"JSON inválido recebido de {websocket.remote_address}: {message}")
- await websocket.send(json.dumps({"error": "Formato JSON inválido"}))
- except Exception as e:
- logging.error(f"Erro ao processar mensagem de {websocket.remote_address}: {e}")
- await websocket.send(json.dumps({"error": "Erro ao processar mensagem"}))
-
- except websockets.exceptions.ConnectionClosedOK:
- logging.info(f"Cliente desconectado: {websocket.remote_address}")
- except websockets.exceptions.ConnectionClosedError:
- logging.error(f"Conexão do cliente fechada com erro {websocket.remote_address}")
- except Exception as e:
- logging.error(f"Erro durante a conexão de {websocket.remote_address} com erro {e}")
- finally:
- connected_clients.remove(websocket)
-
-async def process_message(data, websocket):
- if "type" in data and data["type"] == "broadcast" and "message" in data:
- await broadcast_message(data)
- print("Mensagem de Broadcast:", data["message"])
- elif "type" in data and data["type"] == "echo" and "message" in data:
- await websocket.send(json.dumps({"response": data['message']}))
- elif "type" in data and data['type'] == "test":
- await websocket.send(json.dumps({"response": "teste está ok"}))
- else:
- logging.warning(f"Tipo de mensagem ou formato desconhecido: {data}")
- await websocket.send(json.dumps({"error": "Tipo de mensagem desconhecido"}))
-
-async def broadcast_message(data):
- if connected_clients:
- logging.info(f"Enviando mensagem por broadcast: {data}")
- # await asyncio.wait([client.send(json.dumps(data)) for client in connected_clients])
- tasks = [asyncio.create_task(client.send(json.dumps(data))) for client in connected_clients]
- await asyncio.wait(tasks)
- else:
- logging.info("Nenhum cliente conectado.")
-
-
-async def main():
- start_server = websockets.serve(handle_client, "192.168.1.150", 8765)
- logging.info("Servidor WebSocket iniciado em ws://192.168.1.150:8765")
- await start_server
- await asyncio.Future() # Mantém o servidor em execução indefinidamente
-
-
-if __name__ == "__main__":
- asyncio.run(main())
diff --git a/gestaoRaul/balcao/__init__.py b/balcao/__init__.py
similarity index 100%
rename from gestaoRaul/balcao/__init__.py
rename to balcao/__init__.py
diff --git a/gestaoRaul/balcao/admin.py b/balcao/admin.py
similarity index 100%
rename from gestaoRaul/balcao/admin.py
rename to balcao/admin.py
diff --git a/gestaoRaul/balcao/apps.py b/balcao/apps.py
similarity index 100%
rename from gestaoRaul/balcao/apps.py
rename to balcao/apps.py
diff --git a/gestaoRaul/balcao/htmx_views.py b/balcao/htmx_views.py
similarity index 100%
rename from gestaoRaul/balcao/htmx_views.py
rename to balcao/htmx_views.py
diff --git a/gestaoRaul/balcao/models.py b/balcao/models.py
similarity index 100%
rename from gestaoRaul/balcao/models.py
rename to balcao/models.py
diff --git a/gestaoRaul/balcao/templates/viewBalcao.html b/balcao/templates/viewBalcao.html
similarity index 100%
rename from gestaoRaul/balcao/templates/viewBalcao.html
rename to balcao/templates/viewBalcao.html
diff --git a/gestaoRaul/balcao/tests.py b/balcao/tests.py
similarity index 100%
rename from gestaoRaul/balcao/tests.py
rename to balcao/tests.py
diff --git a/gestaoRaul/balcao/urls.py b/balcao/urls.py
similarity index 100%
rename from gestaoRaul/balcao/urls.py
rename to balcao/urls.py
diff --git a/gestaoRaul/balcao/views.py b/balcao/views.py
similarity index 100%
rename from gestaoRaul/balcao/views.py
rename to balcao/views.py
diff --git a/gestaoRaul/categories/__init__.py b/categories/__init__.py
similarity index 100%
rename from gestaoRaul/categories/__init__.py
rename to categories/__init__.py
diff --git a/gestaoRaul/categories/admin.py b/categories/admin.py
similarity index 100%
rename from gestaoRaul/categories/admin.py
rename to categories/admin.py
diff --git a/gestaoRaul/categories/api_views.py b/categories/api_views.py
similarity index 100%
rename from gestaoRaul/categories/api_views.py
rename to categories/api_views.py
diff --git a/gestaoRaul/categories/apps.py b/categories/apps.py
similarity index 100%
rename from gestaoRaul/categories/apps.py
rename to categories/apps.py
diff --git a/gestaoRaul/categories/migrations/0001_initial.py b/categories/migrations/0001_initial.py
similarity index 100%
rename from gestaoRaul/categories/migrations/0001_initial.py
rename to categories/migrations/0001_initial.py
diff --git a/gestaoRaul/categories/migrations/0002_rename_category_categories.py b/categories/migrations/0002_rename_category_categories.py
similarity index 100%
rename from gestaoRaul/categories/migrations/0002_rename_category_categories.py
rename to categories/migrations/0002_rename_category_categories.py
diff --git a/gestaoRaul/categories/migrations/__init__.py b/categories/migrations/__init__.py
similarity index 100%
rename from gestaoRaul/categories/migrations/__init__.py
rename to categories/migrations/__init__.py
diff --git a/gestaoRaul/categories/models.py b/categories/models.py
similarity index 100%
rename from gestaoRaul/categories/models.py
rename to categories/models.py
diff --git a/gestaoRaul/categories/serializers.py b/categories/serializers.py
similarity index 100%
rename from gestaoRaul/categories/serializers.py
rename to categories/serializers.py
diff --git a/gestaoRaul/categories/templates/categories.html b/categories/templates/categories.html
similarity index 100%
rename from gestaoRaul/categories/templates/categories.html
rename to categories/templates/categories.html
diff --git a/gestaoRaul/categories/tests.py b/categories/tests.py
similarity index 100%
rename from gestaoRaul/categories/tests.py
rename to categories/tests.py
diff --git a/gestaoRaul/categories/urls.py b/categories/urls.py
similarity index 100%
rename from gestaoRaul/categories/urls.py
rename to categories/urls.py
diff --git a/gestaoRaul/categories/views.py b/categories/views.py
similarity index 100%
rename from gestaoRaul/categories/views.py
rename to categories/views.py
diff --git a/gestaoRaul/clients/__init__.py b/clients/__init__.py
similarity index 100%
rename from gestaoRaul/clients/__init__.py
rename to clients/__init__.py
diff --git a/gestaoRaul/clients/admin.py b/clients/admin.py
similarity index 100%
rename from gestaoRaul/clients/admin.py
rename to clients/admin.py
diff --git a/gestaoRaul/clients/api_views.py b/clients/api_views.py
similarity index 100%
rename from gestaoRaul/clients/api_views.py
rename to clients/api_views.py
diff --git a/gestaoRaul/clients/apps.py b/clients/apps.py
similarity index 100%
rename from gestaoRaul/clients/apps.py
rename to clients/apps.py
diff --git a/gestaoRaul/clients/migrations/0001_initial.py b/clients/migrations/0001_initial.py
similarity index 100%
rename from gestaoRaul/clients/migrations/0001_initial.py
rename to clients/migrations/0001_initial.py
diff --git a/gestaoRaul/clients/migrations/0002_client_created_at_client_debt.py b/clients/migrations/0002_client_created_at_client_debt.py
similarity index 100%
rename from gestaoRaul/clients/migrations/0002_client_created_at_client_debt.py
rename to clients/migrations/0002_client_created_at_client_debt.py
diff --git a/gestaoRaul/clients/migrations/__init__.py b/clients/migrations/__init__.py
similarity index 100%
rename from gestaoRaul/clients/migrations/__init__.py
rename to clients/migrations/__init__.py
diff --git a/gestaoRaul/clients/models.py b/clients/models.py
similarity index 100%
rename from gestaoRaul/clients/models.py
rename to clients/models.py
diff --git a/gestaoRaul/clients/serializers.py b/clients/serializers.py
similarity index 100%
rename from gestaoRaul/clients/serializers.py
rename to clients/serializers.py
diff --git a/gestaoRaul/clients/templates/clients.html b/clients/templates/clients.html
similarity index 100%
rename from gestaoRaul/clients/templates/clients.html
rename to clients/templates/clients.html
diff --git a/gestaoRaul/clients/templates/viewclient.html b/clients/templates/viewclient.html
similarity index 100%
rename from gestaoRaul/clients/templates/viewclient.html
rename to clients/templates/viewclient.html
diff --git a/gestaoRaul/clients/tests.py b/clients/tests.py
similarity index 100%
rename from gestaoRaul/clients/tests.py
rename to clients/tests.py
diff --git a/gestaoRaul/clients/urls.py b/clients/urls.py
similarity index 100%
rename from gestaoRaul/clients/urls.py
rename to clients/urls.py
diff --git a/gestaoRaul/clients/views.py b/clients/views.py
similarity index 100%
rename from gestaoRaul/clients/views.py
rename to clients/views.py
diff --git a/gestaoRaul/comandas/__init__.py b/comandas/__init__.py
similarity index 100%
rename from gestaoRaul/comandas/__init__.py
rename to comandas/__init__.py
diff --git a/gestaoRaul/comandas/admin.py b/comandas/admin.py
similarity index 100%
rename from gestaoRaul/comandas/admin.py
rename to comandas/admin.py
diff --git a/gestaoRaul/comandas/api_views.py b/comandas/api_views.py
similarity index 100%
rename from gestaoRaul/comandas/api_views.py
rename to comandas/api_views.py
diff --git a/gestaoRaul/comandas/apps.py b/comandas/apps.py
similarity index 100%
rename from gestaoRaul/comandas/apps.py
rename to comandas/apps.py
diff --git a/gestaoRaul/comandas/htmx_views.py b/comandas/htmx_views.py
similarity index 100%
rename from gestaoRaul/comandas/htmx_views.py
rename to comandas/htmx_views.py
diff --git a/gestaoRaul/comandas/migrations/0001_initial.py b/comandas/migrations/0001_initial.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/0001_initial.py
rename to comandas/migrations/0001_initial.py
diff --git a/gestaoRaul/comandas/migrations/0002_productcomanda.py b/comandas/migrations/0002_productcomanda.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/0002_productcomanda.py
rename to comandas/migrations/0002_productcomanda.py
diff --git a/gestaoRaul/comandas/migrations/0003_comanda_status_alter_productcomanda_product.py b/comandas/migrations/0003_comanda_status_alter_productcomanda_product.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/0003_comanda_status_alter_productcomanda_product.py
rename to comandas/migrations/0003_comanda_status_alter_productcomanda_product.py
diff --git a/gestaoRaul/comandas/migrations/0004_comanda_user.py b/comandas/migrations/0004_comanda_user.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/0004_comanda_user.py
rename to comandas/migrations/0004_comanda_user.py
diff --git a/gestaoRaul/comandas/migrations/0005_stockmovementtype_stockmovement.py b/comandas/migrations/0005_stockmovementtype_stockmovement.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/0005_stockmovementtype_stockmovement.py
rename to comandas/migrations/0005_stockmovementtype_stockmovement.py
diff --git a/gestaoRaul/comandas/migrations/__init__.py b/comandas/migrations/__init__.py
similarity index 100%
rename from gestaoRaul/comandas/migrations/__init__.py
rename to comandas/migrations/__init__.py
diff --git a/gestaoRaul/comandas/models.py b/comandas/models.py
similarity index 100%
rename from gestaoRaul/comandas/models.py
rename to comandas/models.py
diff --git a/gestaoRaul/comandas/serializers.py b/comandas/serializers.py
similarity index 100%
rename from gestaoRaul/comandas/serializers.py
rename to comandas/serializers.py
diff --git a/gestaoRaul/comandas/templates/comandas.html b/comandas/templates/comandas.html
similarity index 100%
rename from gestaoRaul/comandas/templates/comandas.html
rename to comandas/templates/comandas.html
diff --git a/gestaoRaul/comandas/templates/viewcomanda.html b/comandas/templates/viewcomanda.html
similarity index 100%
rename from gestaoRaul/comandas/templates/viewcomanda.html
rename to comandas/templates/viewcomanda.html
diff --git a/gestaoRaul/comandas/templatetags/__init__.py b/comandas/templatetags/__init__.py
similarity index 100%
rename from gestaoRaul/comandas/templatetags/__init__.py
rename to comandas/templatetags/__init__.py
diff --git a/gestaoRaul/comandas/templatetags/custom_filter_tag.py b/comandas/templatetags/custom_filter_tag.py
similarity index 100%
rename from gestaoRaul/comandas/templatetags/custom_filter_tag.py
rename to comandas/templatetags/custom_filter_tag.py
diff --git a/gestaoRaul/comandas/tests.py b/comandas/tests.py
similarity index 100%
rename from gestaoRaul/comandas/tests.py
rename to comandas/tests.py
diff --git a/gestaoRaul/comandas/tests/__init__.py b/comandas/tests/__init__.py
similarity index 100%
rename from gestaoRaul/comandas/tests/__init__.py
rename to comandas/tests/__init__.py
diff --git a/gestaoRaul/comandas/tests/test_models.py b/comandas/tests/test_models.py
similarity index 100%
rename from gestaoRaul/comandas/tests/test_models.py
rename to comandas/tests/test_models.py
diff --git a/gestaoRaul/comandas/tests/test_views.py b/comandas/tests/test_views.py
similarity index 100%
rename from gestaoRaul/comandas/tests/test_views.py
rename to comandas/tests/test_views.py
diff --git a/gestaoRaul/comandas/urls.py b/comandas/urls.py
similarity index 100%
rename from gestaoRaul/comandas/urls.py
rename to comandas/urls.py
diff --git a/gestaoRaul/comandas/views.py b/comandas/views.py
similarity index 100%
rename from gestaoRaul/comandas/views.py
rename to comandas/views.py
diff --git a/comandos.txt b/comandos.txt
deleted file mode 100644
index 5193697..0000000
--- a/comandos.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-mkdir djangotutorial
-python -m venv meu_ambiente
-django-admin startproject mysite djangotutorial
-meu_ambiente\Scripts\Activate.ps1
-python manage.py runserver
-python manage.py startapp polls
-python manage.py makemigrations
-python manage.py migrate
-python manage.py createsuperuser
-pip freeze > requirements.txt
-pip install -r requirements.txt
-python manage.py runserver_plus 192.168.0.100:8000 --cert-file /tmp/cert.crt
-python manage.py collectstatic --noinput
-docker compose up --build
\ No newline at end of file
diff --git a/doc/App Cliente/App Cliente - Visão Geral.md b/doc/App Cliente/App Cliente - Visão Geral.md
deleted file mode 100644
index 9729910..0000000
--- a/doc/App Cliente/App Cliente - Visão Geral.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# BarApp - Visão Geral
-
-O **BarApp** é um aplicativo mobile desenvolvido para clientes de bares, com o objetivo de modernizar e otimizar a experiência de consumo e interação dentro do estabelecimento. Ele oferece uma gama de funcionalidades que permitem ao usuário ter maior controle sobre seus gastos, acesso rápido a produtos e eventos, e uma forma inovadora de interagir com o bar.
-
-## Principais Funcionalidades:
-
-- **Cardápio Digital:** Visualize o cardápio completo com detalhes dos produtos.
-
-- **Compra e Gestão de Tickets:** Adquira tickets de produtos diretamente pelo app, armazene-os em uma carteira digital e utilize-os no balcão ou com o garçom.
-
-- **Transferência de Tickets:** Compartilhe tickets com amigos através de QR Codes.
-
-- **Venda de Ingressos:** Compre ingressos para eventos exclusivos do bar.
-
-- **Karaokê:** Acompanhe a fila de cantores do karaokê em tempo real.
-
-- **Comanda Digital:** Consulte sua comanda de consumo e realize pagamentos (total ou parcial) via Pix, crédito ou débito, com a opção de cadastrar cartões.
-
-- **Login Social:** Facilidade de acesso via conta Google.
-
-
-## Documentos Relacionados:
-
-- [[Requisitos - Aplicativo Cliente]]
-
-- [[Casos de Uso - Aplicativo Cliente]]
-
-- [[Histórias de Usuário - Aplicativo Cliente]]
-
-- [[Modelagem de Banco de Dados]]
-
-- [[Visão Geral do Projeto]]
\ No newline at end of file
diff --git a/doc/App Cliente/Casos de Uso - Aplicativo Cliente.md b/doc/App Cliente/Casos de Uso - Aplicativo Cliente.md
deleted file mode 100644
index f3152e1..0000000
--- a/doc/App Cliente/Casos de Uso - Aplicativo Cliente.md
+++ /dev/null
@@ -1,336 +0,0 @@
-# Casos de Uso do Aplicativo BarApp
-
-Este documento descreve os principais casos de uso do aplicativo BarApp, detalhando as interações entre os atores (usuários) e o sistema.
-
-## Atores
-
-- **Usuário:** Cliente do bar que utiliza o aplicativo.
-
-- **Garçom/Atendente:** Funcionário do bar que interage com o aplicativo para validar tickets/comandas.
-
-- **Sistema de Pagamento:** Serviço externo responsável por processar transações financeiras.
-
-- **Sistema de Autenticação Social (Google):** Serviço externo para autenticação via conta Google.
-
-
-## Casos de Uso
-
-### 1. Gerenciamento de Usuários
-
-#### CU001: Cadastrar Usuário
-
-- **Nome:** Cadastrar Usuário
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que um novo usuário crie uma conta no aplicativo.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela de cadastro.
-
- 2. Usuário preenche os campos obrigatórios (nome, e-mail, senha).
-
- 3. Sistema valida os dados.
-
- 4. Sistema cria a conta do usuário e o autentica.
-
-
-#### CU002: Alterar Senha
-
-- **Nome:** Alterar Senha
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que um usuário autenticado modifique sua senha de acesso.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela de alteração de senha.
-
- 2. Usuário informa a senha atual e a nova senha (duas vezes para confirmação).
-
- 3. Sistema valida a senha atual e a nova senha.
-
- 4. Sistema atualiza a senha do usuário.
-
-
-#### CU003: Realizar Login Social (Google)
-
-- **Nome:** Realizar Login Social (Google)
-
-- **Ator:** Usuário, Sistema de Autenticação Social (Google)
-
-- **Descrição:** Permite que o usuário faça login usando sua conta Google.
-
-- **Fluxo Principal:**
-
- 1. Usuário seleciona a opção "Login com Google".
-
- 2. Sistema redireciona para a tela de autenticação do Google.
-
- 3. Usuário autentica-se com sua conta Google.
-
- 4. Sistema de Autenticação Social retorna os dados do usuário para o BarApp.
-
- 5. BarApp cria ou vincula a conta do usuário e o autentica.
-
-
-### 2. Cardápio e Tickets
-
-#### CU004: Visualizar Cardápio
-
-- **Nome:** Visualizar Cardápio
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário navegue pelos produtos disponíveis no bar.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela do cardápio.
-
- 2. Sistema exibe a lista de produtos com nome, preço, descrição e imagem.
-
-
-#### CU005: Adicionar Ticket à Cesta
-
-- **Nome:** Adicionar Ticket à Cesta
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário selecione um produto e adicione tickets correspondentes à sua cesta de compras.
-
-- **Fluxo Principal:**
-
- 1. Usuário visualiza o cardápio.
-
- 2. Usuário seleciona um produto e a quantidade de tickets desejada.
-
- 3. Sistema adiciona os tickets à cesta de compras do usuário.
-
-
-#### CU006: Visualizar Cesta de Compras
-
-- **Nome:** Visualizar Cesta de Compras
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário revise os itens selecionados antes de finalizar a compra.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela da cesta de compras.
-
- 2. Sistema exibe os produtos, quantidades e valor total na cesta.
-
-
-#### CU007: Comprar Tickets
-
-- **Nome:** Comprar Tickets
-
-- **Ator:** Usuário, Sistema de Pagamento
-
-- **Descrição:** Permite que o usuário finalize a compra dos tickets na cesta de compras.
-
-- **Fluxo Principal:**
-
- 1. Usuário está na tela da cesta de compras.
-
- 2. Usuário seleciona a opção "Finalizar Compra".
-
- 3. Usuário escolhe o método de pagamento.
-
- 4. Sistema de Pagamento processa a transação.
-
- 5. Sistema registra os tickets comprados na carteira do usuário.
-
-
-#### CU008: Visualizar Carteira de Tickets
-
-- **Nome:** Visualizar Carteira de Tickets
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário veja os tickets que possui e ainda não utilizou.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela da carteira de tickets.
-
- 2. Sistema exibe a lista de tickets disponíveis, com detalhes e prazo de validade.
-
-
-#### CU009: Visualizar Histórico de Tickets
-
-- **Nome:** Visualizar Histórico de Tickets
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário consulte o registro de todos os tickets comprados e utilizados.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela de histórico de tickets.
-
- 2. Sistema exibe a lista de tickets com datas de compra e uso.
-
-
-#### CU010: Transferir Ticket
-
-- **Nome:** Transferir Ticket
-
-- **Ator:** Usuário (remetente), Usuário (destinatário)
-
-- **Descrição:** Permite que um usuário transfira um ou mais tickets para outro usuário.
-
-- **Fluxo Principal:**
-
- 1. Usuário (remetente) seleciona tickets na carteira para transferência.
-
- 2. Sistema gera um QR Code para a transferência.
-
- 3. Usuário (destinatário) lê o QR Code gerado pelo remetente.
-
- 4. Sistema remove os tickets da carteira do remetente e adiciona à carteira do destinatário.
-
-
-#### CU011: Receber Ticket
-
-- **Nome:** Receber Ticket
-
-- **Ator:** Usuário (destinatário), Usuário (remetente)
-
-- **Descrição:** Permite que um usuário receba tickets transferidos por outro usuário.
-
-- **Fluxo Principal:**
-
- 1. Usuário (destinatário) acessa a função de "Receber Ticket" e ativa a câmera.
-
- 2. Usuário (destinatário) escaneia o QR Code de transferência gerado pelo remetente.
-
- 3. Sistema valida o QR Code e adiciona os tickets à carteira do destinatário.
-
-
-#### CU012: Utilizar Ticket
-
-- **Nome:** Utilizar Ticket
-
-- **Ator:** Usuário, Garçom/Atendente
-
-- **Descrição:** Permite que o usuário troque um ticket por um produto no bar.
-
-- **Fluxo Principal:**
-
- 1. Usuário seleciona um ticket na carteira para uso.
-
- 2. Sistema gera um QR Code único para o ticket.
-
- 3. Garçom/Atendente lê o QR Code com um dispositivo próprio.
-
- 4. Sistema valida o ticket e o marca como utilizado, registrando a data e hora.
-
-
-### 3. Pagamento
-
-#### CU013: Efetuar Pagamento da Cesta
-
-- **Nome:** Efetuar Pagamento da Cesta
-
-- **Ator:** Usuário, Sistema de Pagamento
-
-- **Descrição:** Processa o pagamento dos tickets na cesta de compras. (Já coberto em CU007, mas pode ser um caso de uso separado para o processo de pagamento em si).
-
-- **Fluxo Principal:**
-
- 1. Usuário confirma os itens na cesta.
-
- 2. Usuário seleciona o método de pagamento (Pix, Cartão de Crédito/Débito).
-
- 3. Se for Pix, sistema exibe QR Code/código.
-
- 4. Se for cartão, usuário insere dados ou seleciona cartão cadastrado.
-
- 5. Sistema integra com o Sistema de Pagamento para finalizar a transação.
-
- 6. Sistema confirma o pagamento e atualiza o status dos tickets.
-
-
-#### CU014: Cadastrar Cartão de Crédito/Débito
-
-- **Nome:** Cadastrar Cartão de Crédito/Débito
-
-- **Ator:** Usuário, Sistema de Pagamento
-
-- **Descrição:** Permite que o usuário armazene dados de cartão para pagamentos futuros.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a seção de gerenciamento de pagamentos.
-
- 2. Usuário seleciona a opção "Adicionar Cartão".
-
- 3. Usuário insere os dados do cartão (número, validade, CVV, nome do titular).
-
- 4. Sistema de Pagamento tokeniza e armazena os dados do cartão de forma segura.
-
- 5. Sistema confirma o cadastro do cartão.
-
-
-#### CU015: Efetuar Pagamento da Comanda
-
-- **Nome:** Efetuar Pagamento da Comanda
-
-- **Ator:** Usuário, Garçom/Atendente, Sistema de Pagamento
-
-- **Descrição:** Permite que o usuário visualize e pague sua comanda de consumo.
-
-- **Fluxo Principal:**
-
- 1. Garçom/Atendente fornece um QR Code da comanda ao usuário.
-
- 2. Usuário escaneia o QR Code da comanda.
-
- 3. Sistema exibe os detalhes da comanda (itens, valores, total).
-
- 4. Usuário seleciona a opção de pagamento (total ou parcial) e o método (Pix, Cartão).
-
- 5. Sistema de Pagamento processa a transação.
-
- 6. Sistema atualiza o status da comanda no sistema do bar.
-
-
-### 4. Eventos e Karaokê
-
-#### CU016: Comprar Ingresso para Evento
-
-- **Nome:** Comprar Ingresso para Evento
-
-- **Ator:** Usuário, Sistema de Pagamento
-
-- **Descrição:** Permite que o usuário adquira ingressos para eventos do bar.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela de eventos.
-
- 2. Usuário seleciona um evento e a quantidade de ingressos.
-
- 3. Usuário prossegue para o pagamento (similar ao CU007).
-
- 4. Sistema registra os ingressos na seção de ingressos do usuário.
-
-
-#### CU017: Visualizar Fila do Karaokê
-
-- **Nome:** Visualizar Fila do Karaokê
-
-- **Ator:** Usuário
-
-- **Descrição:** Permite que o usuário veja a ordem das pessoas para cantar no karaokê.
-
-- **Fluxo Principal:**
-
- 1. Usuário acessa a tela do karaokê.
-
- 2. Sistema exibe a fila atualizada em tempo real.
\ No newline at end of file
diff --git a/doc/App Cliente/Histórias de Usuário - Aplicativo Cliente.md b/doc/App Cliente/Histórias de Usuário - Aplicativo Cliente.md
deleted file mode 100644
index 308cc2e..0000000
--- a/doc/App Cliente/Histórias de Usuário - Aplicativo Cliente.md
+++ /dev/null
@@ -1,273 +0,0 @@
-# Histórias de Usuário do Aplicativo BarApp
-
-Este documento apresenta as histórias de usuário para o aplicativo BarApp, focando na perspectiva do usuário e no valor que cada funcionalidade entrega.
-
-## 1. Gerenciamento de Usuários
-
-- **HU001 - Cadastro:**
-
- - **Como um** novo cliente,
-
- - **Eu quero** me cadastrar no aplicativo,
-
- - **Para que** eu possa acessar todas as funcionalidades e personalizar minha experiência.
-
- - **Critérios de Aceitação:**
-
- - Dados de cadastro (nome, e-mail, senha) são coletados.
-
- - E-mail é validado para formato correto.
-
- - Senha atende aos requisitos de segurança (e.g., mínimo de 8 caracteres, maiúscula, minúscula, número).
-
- - Usuário é autenticado e redirecionado para a tela principal após o cadastro.
-
-- **HU002 - Alteração de Senha:**
-
- - **Como um** usuário cadastrado,
-
- - **Eu quero** alterar minha senha,
-
- - **Para que** eu possa manter minha conta segura.
-
- - **Critérios de Aceitação:**
-
- - Usuário deve informar a senha atual corretamente.
-
- - Nova senha deve ser confirmada e atender aos requisitos de segurança.
-
- - Sistema deve informar sucesso ou falha na alteração da senha.
-
-- **HU003 - Login Social (Google):**
-
- - **Como um** cliente com conta Google,
-
- - **Eu quero** fazer login usando minha conta Google,
-
- - **Para que** eu não precise criar e lembrar de mais uma senha.
-
- - **Critérios de Aceitação:**
-
- - Opção de login com Google está visível na tela de login.
-
- - Usuário é redirecionado para a autenticação do Google.
-
- - Após autenticação, usuário é logado no aplicativo.
-
-
-## 2. Cardápio e Compra de Tickets
-
-- **HU004 - Visualização do Cardápio:**
-
- - **Como um** cliente,
-
- - **Eu quero** visualizar o cardápio de produtos do bar,
-
- - **Para que** eu possa escolher o que consumir.
-
- - **Critérios de Aceitação:**
-
- - Cardápio exibe nome, preço, descrição e imagem para cada produto.
-
- - Cardápio é fácil de navegar.
-
-- **HU005 - Compra de Ticket:**
-
- - **Como um** cliente,
-
- - **Eu quero** comprar tickets para produtos do cardápio,
-
- - **Para que** eu possa ter meus produtos garantidos e evitar filas no caixa.
-
- - **Critérios de Aceitação:**
-
- - É possível selecionar a quantidade de tickets para um produto.
-
- - Sistema aplica limite de compra por produto/usuário.
-
- - Tickets são adicionados à cesta de compras.
-
-- **HU006 - Visualização da Cesta de Compras:**
-
- - **Como um** cliente,
-
- - **Eu quero** ver os itens que adicionei à minha cesta,
-
- - **Para que** eu possa revisar meu pedido antes de pagar.
-
- - **Critérios de Aceitação:**
-
- - Cesta exibe nome do produto, quantidade e subtotal.
-
- - Total da compra é exibido.
-
- - É possível remover itens da cesta.
-
-
-## 3. Carteira e Uso de Tickets
-
-- **HU007 - Visualização da Carteira de Tickets:**
-
- - **Como um** cliente,
-
- - **Eu quero** ver todos os tickets que comprei e ainda não usei,
-
- - **Para que** eu saiba o que tenho disponível para consumir.
-
- - **Critérios de Aceitação:**
-
- - Carteira exibe tickets disponíveis, com nome do produto e quantidade.
-
- - Prazo de validade dos tickets é exibido claramente.
-
-- **HU008 - Visualização do Histórico de Tickets:**
-
- - **Como um** cliente,
-
- - **Eu quero** ver meu histórico de tickets comprados e usados,
-
- - **Para que** eu possa acompanhar meus gastos e consumo.
-
- - **Critérios de Aceitação:**
-
- - Histórico exibe data e hora da compra.
-
- - Histórico exibe data e hora do uso (se aplicável).
-
- - Tickets usados e não usados são diferenciados visualmente.
-
-- **HU009 - Transferência de Ticket (Gerar QR Code):**
-
- - **Como um** cliente,
-
- - **Eu quero** transferir tickets para outro usuário,
-
- - **Para que** eu possa presentear amigos ou dividir tickets.
-
- - **Critérios de Aceitação:**
-
- - É possível selecionar tickets da carteira para transferência.
-
- - Um QR Code único é gerado para a transferência.
-
- - Tickets são removidos da carteira do remetente após a transferência ser concluída.
-
-- **HU010 - Recebimento de Ticket (Ler QR Code):**
-
- - **Como um** cliente,
-
- - **Eu quero** receber tickets de outro usuário lendo um QR Code,
-
- - **Para que** eu possa aceitar tickets transferidos por amigos.
-
- - **Critérios de Aceitação:**
-
- - Funcionalidade de leitura de QR Code é acessível.
-
- - Após a leitura de um QR Code válido, tickets são adicionados à carteira do destinatário.
-
-- **HU011 - Uso de Ticket:**
-
- - **Como um** cliente,
-
- - **Eu quero** usar um ticket da minha carteira para pegar um produto,
-
- - **Para que** eu possa consumir o que comprei.
-
- - **Critérios de Aceitação:**
-
- - Ao tocar no ticket, um QR Code único é gerado.
-
- - QR Code é lido pelo garçom.
-
- - Ticket é marcado como usado no sistema.
-
-
-## 4. Pagamento
-
-- **HU012 - Pagamento da Cesta:**
-
- - **Como um** cliente,
-
- - **Eu quero** pagar minha cesta de tickets,
-
- - **Para que** eu possa ter os tickets na minha carteira.
-
- - **Critérios de Aceitação:**
-
- - Opções de pagamento (Pix, Crédito, Débito) são apresentadas.
-
- - Transação é processada com sucesso pelo método escolhido.
-
- - Tickets são liberados para a carteira após confirmação do pagamento.
-
-- **HU013 - Cadastro de Cartão:**
-
- - **Como um** cliente,
-
- - **Eu quero** cadastrar meus cartões de pagamento,
-
- - **Para que** eu possa pagar mais rapidamente em compras futuras.
-
- - **Critérios de Aceitação:**
-
- - Dados do cartão são coletados de forma segura.
-
- - Cartão é armazenado para uso futuro.
-
- - Opção de selecionar cartão cadastrado aparece nas telas de pagamento.
-
-- **HU014 - Pagamento da Comanda:**
-
- - **Como um** cliente,
-
- - **Eu quero** visualizar e pagar minha comanda de consumo pelo aplicativo,
-
- - **Para que** eu tenha controle dos meus gastos e agilidade no pagamento.
-
- - **Critérios de Aceitação:**
-
- - É possível escanear um QR Code da comanda fornecido pelo garçom.
-
- - Comanda exibe itens consumidos e valor total.
-
- - É possível efetuar o pagamento total ou parcial da comanda.
-
- - Status da comanda é atualizado após o pagamento.
-
-
-## 5. Eventos e Karaokê
-
-- **HU015 - Compra de Ingresso para Evento:**
-
- - **Como um** cliente,
-
- - **Eu quero** comprar ingressos para eventos do bar,
-
- - **Para que** eu possa garantir minha entrada e participar das festas.
-
- - **Critérios de Aceitação:**
-
- - Lista de eventos disponíveis é exibida com detalhes (nome, data, preço).
-
- - É possível selecionar a quantidade de ingressos.
-
- - Pagamento é processado com sucesso.
-
- - Ingressos aparecem na minha seção de ingressos.
-
-- **HU016 - Visualização da Fila do Karaokê:**
-
- - **Como um** cliente,
-
- - **Eu quero** visualizar a fila de pessoas para cantar no karaokê,
-
- - **Para que** eu possa saber quando será minha vez ou a de meus amigos.
-
- - **Critérios de Aceitação:**
-
- - Fila é exibida em tempo real.
-
- - Nomes das pessoas na fila são visíveis.
-
- - Ordem da fila é clara.
\ No newline at end of file
diff --git a/doc/App Cliente/Requisitos - Aplicativo Cliente.md b/doc/App Cliente/Requisitos - Aplicativo Cliente.md
deleted file mode 100644
index 71eafa8..0000000
--- a/doc/App Cliente/Requisitos - Aplicativo Cliente.md
+++ /dev/null
@@ -1,248 +0,0 @@
-estou desenvolvendo um aplicativo mobile para um bar, onde: poderá ver o cardápio, haverá venda e armazenamento de tickets, para que depois possa ser trocado por produto no local, venda de ingressos para eventos, visualizar fila de pessoa que vão cantar no karaokê, visualizar e efetuar pagamento da sua comanda de consumo.
-algumas características do app:
-* o usuário pode efetuar um Cadastro
-* pode Alterar sua senha
-* pode fazer Login social(com uma conta Google)
-* visualizar o cardápio de produtos disponíveis com nome, preço, descrição e imagem
-* Comprar ticket referente ao produto
-* deve haver um limite de compra de tickets de um mesmo produto por usuário
-* deve haver uma carteira de tickets para ser armazenados os tickets comprados
-* os tickets podem ter prazo de validade
-* o usuário pode ver seu histórico de tickets (data e hora da compra e de uso)
-* deve haver uma "cesta de compra" onde o usuário pode ir armazenando os tickets para depois efetuar o pagamento dos mesmo
-* o pagamento pode ser via pix, credito, ou debito
-* o usuário pode Transferir seus tickets para outro usuário através da geração de um qrcode
-* o usuário pode receber transferença de tickets de outro usuário através da leitura de um qrcode
-* para usar o ticket basta tocar e o app vai gerar um qrcode que será lido pelo garçom
-* o usuário poderá cadastrar cartões para facilitar pagamentos futuros
-
-* o aplicativo poderá vender ingressos para eventos do bar
-* Ingressos podem ser nomeados
-* Possibilidade de acompanhar a própria comanda de consumo através da leitura de um qrcode fornecido pelo o garçom, e efetuar o pagamento da mesma pelo app
-
-
-
-
-# Documento de Requisitos do Aplicativo BarApp
-
-## 1. Introdução
-
-### 1.1. Propósito
-
-Este documento tem como objetivo detalhar os requisitos funcionais, não funcionais, regras de negócio e requisitos de sistema para o desenvolvimento do aplicativo mobile "BarApp". O aplicativo visa aprimorar a experiência do cliente em um bar, oferecendo funcionalidades como visualização de cardápio, compra e gerenciamento de tickets de produtos, venda de ingressos para eventos, acompanhamento da fila do karaokê e pagamento de comandas de consumo.
-
-### 1.2. Escopo
-
-O aplicativo BarApp será uma solução mobile disponível para as plataformas Android e iOS, permitindo que os usuários realizem as ações descritas neste documento. O escopo inicial não inclui funcionalidades para a equipe do bar (garçons, gerentes), que serão consideradas em fases futuras, exceto pela interação de leitura de QR Codes.
-
-### 1.3. Público-alvo
-
-- **Usuários Finais:** Clientes do bar que desejam interagir com o estabelecimento de forma digital.
-
-- **Garçons/Atendentes:** Profissionais do bar que precisarão ler QR Codes gerados pelo aplicativo para validação de tickets e comandas.
-
-
-## 2. Requisitos Funcionais (RF)
-
-Os requisitos funcionais descrevem as funcionalidades que o sistema deve oferecer aos usuários.
-
-### 2.1. Gerenciamento de Usuários
-
-- **RF001 - Cadastro de Usuário:** O sistema deve permitir que um novo usuário realize seu cadastro, fornecendo informações como nome completo, e-mail e senha.
-
-- **RF002 - Alteração de Senha:** O sistema deve permitir que um usuário autenticado altere sua senha.
-
-- **RF003 - Login:** O sistema deve permitir que um usuário autenticado faça login utilizando e-mail e senha.
-
-- **RF004 - Login Social (Google):** O sistema deve permitir que um usuário faça login utilizando sua conta Google.
-
-- **RF005 - Recuperação de Senha:** O sistema deve permitir que um usuário recupere sua senha através de um processo seguro (e.g., envio de link para o e-mail cadastrado).
-
-- **RF006 - Gerenciamento de Perfil:** O sistema deve permitir que o usuário visualize e edite suas informações de perfil (exceto e-mail de cadastro).
-
-
-### 2.2. Gerenciamento de Cardápio
-
-- **RF007 - Visualização do Cardápio:** O sistema deve exibir o cardápio completo de produtos disponíveis no bar.
-
-- **RF008 - Detalhes do Produto:** Para cada item do cardápio, o sistema deve exibir nome, preço, descrição e imagem.
-
-
-### 2.3. Compra e Gerenciamento de Tickets
-
-- **RF009 - Compra de Ticket:** O sistema deve permitir que o usuário selecione um produto do cardápio e compre tickets referentes a ele.
-
-- **RF010 - Adicionar à Cesta de Compras:** O sistema deve permitir que o usuário adicione tickets de diferentes produtos a uma "cesta de compras" antes de finalizar o pagamento.
-
-- **RF011 - Visualização da Cesta de Compras:** O sistema deve exibir todos os itens adicionados à cesta de compras, com seus respectivos nomes, quantidades e valores totais.
-
-- **RF012 - Remoção de Item da Cesta:** O sistema deve permitir que o usuário remova itens da cesta de compras.
-
-- **RF013 - Visualização da Carteira de Tickets:** O sistema deve exibir uma "carteira" com todos os tickets comprados e ainda não utilizados pelo usuário.
-
-- **RF014 - Detalhes do Ticket na Carteira:** Para cada ticket na carteira, o sistema deve exibir o nome do produto, quantidade, data de compra e, se aplicável, prazo de validade.
-
-- **RF015 - Visualização do Histórico de Tickets:** O sistema deve exibir o histórico de tickets do usuário, incluindo data e hora da compra e data e hora de uso (se já utilizado).
-
-
-### 2.4. Pagamento
-
-- **RF016 - Seleção de Método de Pagamento:** O sistema deve permitir que o usuário selecione o método de pagamento para a cesta de compras (Pix, Cartão de Crédito, Cartão de Débito).
-
-- **RF017 - Processamento de Pagamento (Pix):** O sistema deve gerar um QR Code Pix ou código "copia e cola" para que o usuário efetue o pagamento.
-
-- **RF018 - Processamento de Pagamento (Cartão):** O sistema deve integrar com uma plataforma de pagamento para processar transações de cartão de crédito/débito.
-
-- **RF019 - Cadastro de Cartões:** O sistema deve permitir que o usuário cadastre múltiplos cartões de crédito/débito para pagamentos futuros.
-
-- **RF020 - Seleção de Cartão Cadastrado:** O sistema deve permitir que o usuário selecione um cartão previamente cadastrado para realizar pagamentos.
-
-
-### 2.5. Transferência de Tickets
-
-- **RF021 - Geração de QR Code para Transferência:** O sistema deve permitir que o usuário selecione um ou mais tickets de sua carteira e gere um QR Code para transferência para outro usuário.
-
-- **RF022 - Leitura de QR Code para Recebimento:** O sistema deve permitir que o usuário utilize a câmera do dispositivo para ler um QR Code de transferência e receber tickets de outro usuário.
-
-
-### 2.6. Utilização de Tickets
-
-- **RF023 - Geração de QR Code para Uso:** O sistema deve permitir que o usuário selecione um ticket na carteira e gere um QR Code único para que o garçom possa validá-lo e trocá-lo pelo produto.
-
-- **RF024 - Validação de Uso de Ticket:** O sistema deve registrar a data e hora do uso do ticket após a leitura bem-sucedida pelo garçom.
-
-
-### 2.7. Venda de Ingressos para Eventos
-
-- **RF025 - Visualização de Eventos:** O sistema deve exibir uma lista dos eventos disponíveis no bar, com nome do evento, data, hora, descrição e preço do ingresso.
-
-- **RF026 - Compra de Ingresso:** O sistema deve permitir que o usuário compre ingressos para eventos.
-
-- **RF027 - Visualização de Ingressos Comprados:** O sistema deve exibir os ingressos comprados pelo usuário.
-
-- **RF028 - Geração de QR Code do Ingresso:** O sistema deve permitir que o usuário gere um QR Code para cada ingresso comprado, para validação na entrada do evento.
-
-
-### 2.8. Karaokê
-
-- **RF029 - Visualização da Fila do Karaokê:** O sistema deve exibir a fila atual de pessoas que vão cantar no karaokê, em tempo real.
-
-
-### 2.9. Comanda de Consumo
-
-- **RF030 - Acompanhamento da Comanda:** O sistema deve permitir que o usuário leia um QR Code fornecido pelo garçom para visualizar sua comanda de consumo em tempo real.
-
-- **RF031 - Detalhes da Comanda:** A comanda deve exibir os itens consumidos, quantidades, preços unitários e valor total.
-
-- **RF032 - Pagamento da Comanda:** O sistema deve permitir que o usuário efetue o pagamento total ou parcial da comanda de consumo através dos métodos de pagamento disponíveis (Pix, Cartão de Crédito, Cartão de Débito).
-
-
-## 3. Requisitos Não Funcionais (RNF)
-
-Os requisitos não funcionais descrevem as qualidades do sistema.
-
-### 3.1. Usabilidade
-
-- **RNF001 - Interface Intuitiva:** A interface do usuário deve ser intuitiva e fácil de usar, mesmo para usuários com pouca familiaridade com aplicativos.
-
-- **RNF002 - Tempo de Resposta:** O tempo de resposta do aplicativo para todas as interações do usuário não deve exceder 3 segundos.
-
-- **RNF003 - Consistência Visual:** A interface deve seguir um padrão visual consistente em todas as telas e funcionalidades.
-
-- **RNF004 - Feedback ao Usuário:** O sistema deve fornecer feedback claro e imediato para todas as ações do usuário (e.g., sucesso na compra, erro de login).
-
-
-### 3.2. Desempenho
-
-- **RNF005 - Carregamento Rápido:** O aplicativo deve carregar em no máximo 5 segundos na primeira inicialização.
-
-- **RNF006 - Escalabilidade:** O sistema deve ser capaz de suportar um grande volume de usuários simultâneos (e.g., 1000 usuários ativos) sem degradação significativa de desempenho.
-
-- **RNF007 - Otimização de Imagens:** As imagens do cardápio e eventos devem ser otimizadas para carregamento rápido sem comprometer a qualidade visual.
-
-
-### 3.3. Segurança
-
-- **RNF008 - Autenticação Segura:** O sistema deve garantir que as credenciais de login dos usuários sejam armazenadas e transmitidas de forma segura (e.g., criptografia, hashing de senhas).
-
-- **RNF009 - Proteção de Dados Pessoais:** As informações pessoais e de pagamento dos usuários devem ser protegidas contra acesso não autorizado e vazamento de dados.
-
-- **RNF010 - Transações Seguras:** Todas as transações financeiras devem ser processadas através de gateways de pagamento seguros e certificados.
-
-- **RNF011 - Validação de QR Code:** Os QR Codes gerados para tickets e ingressos devem ser únicos, com validade limitada e antifraude.
-
-
-### 3.4. Confiabilidade
-
-- **RNF012 - Disponibilidade:** O aplicativo deve estar disponível 99,9% do tempo.
-
-- **RNF013 - Tratamento de Erros:** O sistema deve lidar com erros de forma graciosa, exibindo mensagens claras e úteis ao usuário.
-
-- **RNF014 - Persistência de Dados:** Todos os dados do usuário (cadastro, tickets, histórico, cartões) devem ser armazenados de forma persistente e recuperáveis.
-
-
-### 3.5. Manutenibilidade
-
-- **RNF015 - Código Limpo:** O código-fonte deve ser bem documentado, modular e fácil de entender para futuras manutenções e evoluções.
-
-- **RNF016 - Atualizações:** O aplicativo deve permitir atualizações e novas funcionalidades sem exigir reinstalação completa por parte do usuário, sempre que possível.
-
-
-### 3.6. Compatibilidade
-
-- **RNF017 - Compatibilidade Mobile:** O aplicativo deve ser compatível com as versões mais recentes dos sistemas operacionais Android e iOS (e.g., últimas 3 versões).
-
-- **RNF018 - Responsividade:** A interface do aplicativo deve se adaptar a diferentes tamanhos de tela e orientações (retrato/paisagem) de dispositivos móveis.
-
-
-## 4. Regras de Negócio (RN)
-
-As regras de negócio são as políticas e restrições que governam o funcionamento do bar e do aplicativo.
-
-### 4.1. Tickets
-
-- **RN001 - Limite de Compra de Tickets:** Cada usuário terá um limite máximo de tickets de um mesmo produto que pode comprar em uma única transação ou em um período de tempo (a ser definido pelo bar, e.g., 10 tickets do mesmo produto por dia).
-
-- **RN002 - Validade do Ticket:** Tickets comprados podem ter um prazo de validade (e.g., 30 dias a partir da data da compra, ou até o fechamento do bar no dia da compra).
-
-- **RN003 - Uso Único do Ticket:** Cada ticket gerado para uso (QR Code) pode ser utilizado apenas uma vez.
-
-- **RN004 - Transferência de Tickets:** Tickets podem ser transferidos entre usuários, e a responsabilidade pela validade e uso passa para o novo proprietário.
-
-- **RN005 - Tickets Não Reembolsáveis:** Uma vez comprado, tickets não são reembolsáveis (a menos que haja uma política de exceção do bar).
-
-
-### 4.2. Pagamento
-
-- **RN006 - Métodos de Pagamento:** Os métodos de pagamento aceitos são Pix, Cartão de Crédito e Cartão de Débito.
-
-- **RN007 - Pagamento da Comanda:** A comanda de consumo pode ser paga total ou parcialmente pelo aplicativo.
-
-
-### 4.3. Eventos
-
-- **RN008 - Ingressos Nomeados:** Ingressos para eventos podem ter nomes específicos (e.g., "Ingresso Pista", "Ingresso VIP").
-
-- **RN009 - Validação de Ingresso:** Cada ingresso comprado gera um QR Code único para validação na entrada do evento, permitindo apenas um acesso por ingresso.
-
-
-## 5. Requisitos de Sistema (RS)
-
-Os requisitos de sistema definem as necessidades de infraestrutura e tecnologia.
-
-### 5.1. Plataformas
-
-- **RS001 - Desenvolvimento Multiplataforma:** O aplicativo deve ser desenvolvido para ser compatível com iOS e Android.
-
-- **RS002 - Linguagens de Programação:** A serem definidas pela equipe de desenvolvimento (e.g., React Native, Flutter, Swift/Kotlin nativo).
-
-
-### 5.2. Integrações
-
-- **RS003 - Gateway de Pagamento:** O sistema deve integrar-se com um gateway de pagamento (e.g., Stripe, PagSeguro, Mercado Pago) para processar pagamentos com cartão e Pix.
-
-- **RS004 - Autenticação Social:** O sistema deve integrar-se com a API de autenticação do Google para login social.
-
-- **RS005 - Sistema de Gerenciamento do Bar:** O aplicativo pode precisar de integração com um sistema de gerenciamento interno do bar para atualização de cardápio, fila de karaokê e comandas (a ser definido em fases futuras).
-
-- **RS006 - Leitura de QR Code:** O aplicativo deve utilizar a câmera do dispositivo para ler QR Codes.
\ No newline at end of file
diff --git a/doc/App Gestão/App Gestão - Visão Geral.md b/doc/App Gestão/App Gestão - Visão Geral.md
deleted file mode 100644
index a3c0dbe..0000000
--- a/doc/App Gestão/App Gestão - Visão Geral.md
+++ /dev/null
@@ -1,46 +0,0 @@
-# Aplicativo de Gestão do Bar - Visão Geral
-
-O **Aplicativo de Gestão do Bar** é uma plataforma web centralizada, desenvolvida em Django/Python, destinada a administradores e gerentes do bar. Ele atua como o cérebro da operação, integrando e gerenciando todas as funcionalidades dos aplicativos mobile (BarApp e GarçomApp), além de introduzir capacidades essenciais de gestão empresarial.
-
-## Propósito
-
-O principal objetivo deste aplicativo é proporcionar um controle abrangente e eficiente sobre todas as áreas do negócio, desde a operação diária até a análise estratégica e financeira. Ele visa otimizar processos, reduzir erros e fornecer insights valiosos para a tomada de decisões.
-
-## Principais Funcionalidades:
-
-- **Gestão de Usuários:** Gerenciamento completo de clientes (do BarApp) e garçons (do GarçomApp), incluindo cadastro, edição e permissões.
-
-- **Gestão de Cardápio e Produtos:** Cadastro, edição, exclusão e controle de disponibilidade de todos os itens do cardápio.
-
-- **Gestão de Tickets e Eventos:** Visualização detalhada das vendas de tickets e ingressos, além do gerenciamento completo de eventos (cadastro, edição, exclusão).
-
-- **Gestão da Fila do Karaokê:** Controle administrativo da fila, permitindo adicionar, editar, remover e reordenar participantes.
-
-- **Gestão de Comandas:** Visão geral e gerenciamento detalhado de todas as comandas abertas, aguardando pagamento, pagas e fechadas.
-
-- **Gestão de Funcionários:** Cadastro, manutenção de dados, cargos e controle de acesso para toda a equipe do bar.
-
-- **Gestão de Pagamentos de Salário:** Registro de pagamentos, cálculo de holerites e histórico de salários.
-
-- **Gestão de Estoque e Mercadorias:** Registro de entradas de produtos, atualização automática de estoque, visualização do inventário atual e alertas de estoque baixo.
-
-- **Dashboards e Relatórios:** Painéis visuais e relatórios detalhados sobre vendas, lucratividade, desempenho de funcionários, estoque e finanças, permitindo análises estratégicas.
-
-
-## Integração com os Outros Aplicativos:
-
-Este aplicativo de gestão é o backend central para o **BarApp (cliente)** e o **GarçomApp (interno)**. Todas as informações de cardápio, tickets, ingressos, comandas, fila do karaokê e notificações são gerenciadas aqui e sincronizadas em tempo real com os aplicativos mobile, garantindo uma operação coesa e eficiente.
-
-## Documentos Relacionados:
-
-Para mais detalhes sobre o Aplicativo de Gestão do Bar, consulte os seguintes documentos:
-
-- [[Requisitos - Aplicativo de Gestão]]
-
-- [[Casos de Uso - Aplicativo de Gestão]]
-
-- [[Histórias de Usuário - Aplicativo de Gestão]]
-
-- [[Modelagem de Banco de Dados]]
-
-- [[Visão Geral do Projeto]]
\ No newline at end of file
diff --git a/doc/App Gestão/Casos de Uso - Aplicativo de Gestão.md b/doc/App Gestão/Casos de Uso - Aplicativo de Gestão.md
deleted file mode 100644
index c7249ba..0000000
--- a/doc/App Gestão/Casos de Uso - Aplicativo de Gestão.md
+++ /dev/null
@@ -1,298 +0,0 @@
-# Casos de Uso do Aplicativo de Gestão do Bar
-
-Este documento descreve os principais casos de uso para o aplicativo de gestão do bar, detalhando as interações entre os atores e o sistema.
-
-## Atores
-
-- **Administrador:** Usuário com acesso total ao sistema.
-
-- **Gerente:** Usuário com acesso operacional e de relatórios.
-
-- **Funcionário Administrativo:** Usuário com acesso a módulos específicos (e.g., estoque, folha de pagamento).
-
-- **Sistema de Pagamento:** Serviço externo para processamento de transações.
-
-- **Sistema de Cozinha:** Sistema responsável pelo gerenciamento de pedidos na cozinha.
-
-
-## Casos de Uso
-
-### 1. Gerenciamento de Usuários (Clientes e Garçons)
-
-#### CUGSA001: Gerenciar Clientes
-
-- **Nome:** Gerenciar Clientes
-
-- **Ator:** Administrador
-
-- **Descrição:** Permite ao administrador visualizar, editar e excluir informações de clientes do BarApp.
-
-- **Fluxo Principal:**
-
- 1. Administrador acessa o módulo de "Clientes".
-
- 2. Sistema exibe lista de clientes.
-
- 3. Administrador seleciona cliente para visualizar/editar/excluir.
-
- 4. Sistema realiza a ação solicitada.
-
-
-#### CUGSA002: Gerenciar Garçons
-
-- **Nome:** Gerenciar Garçons
-
-- **Ator:** Administrador
-
-- **Descrição:** Permite ao administrador cadastrar, editar e excluir garçons.
-
-- **Fluxo Principal:**
-
- 1. Administrador acessa o módulo de "Garçons".
-
- 2. Sistema exibe lista de garçons.
-
- 3. Administrador seleciona opção para "Cadastrar Novo Garçom", "Editar Garçom" ou "Excluir Garçom".
-
- 4. Sistema realiza a ação e atualiza o registro de garçons.
-
-
-### 2. Gerenciamento de Cardápio e Produtos
-
-#### CUGSA003: Gerenciar Produtos do Cardápio
-
-- **Nome:** Gerenciar Produtos do Cardápio
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite gerenciar produtos, incluindo cadastro, edição, exclusão e status de disponibilidade.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Cardápio/Produtos".
-
- 2. Sistema exibe lista de produtos.
-
- 3. Ator seleciona opção para "Adicionar Produto", "Editar Produto", "Excluir Produto" ou "Alterar Disponibilidade".
-
- 4. Sistema realiza a ação e atualiza o cardápio.
-
-
-### 3. Gerenciamento de Tickets e Ingressos
-
-#### CUGSA004: Consultar Tickets
-
-- **Nome:** Consultar Tickets
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite visualizar e consultar detalhes de tickets vendidos e seus históricos.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Tickets".
-
- 2. Sistema exibe lista de tickets.
-
- 3. Ator pode filtrar por produto, usuário, status, data.
-
- 4. Ator seleciona ticket para ver histórico de uso/transferência.
-
-
-#### CUGSA005: Gerenciar Eventos e Ingressos
-
-- **Nome:** Gerenciar Eventos e Ingressos
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite gerenciar eventos e os ingressos associados.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Eventos".
-
- 2. Sistema exibe lista de eventos.
-
- 3. Ator seleciona opção para "Cadastrar Novo Evento", "Editar Evento", "Excluir Evento".
-
- 4. Ator pode visualizar lista de ingressos vendidos para um evento específico.
-
-
-### 4. Gerenciamento da Fila do Karaokê
-
-#### CUGSA006: Gerenciar Fila do Karaokê (Admin)
-
-- **Nome:** Gerenciar Fila do Karaokê (Admin)
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite o controle total da fila do karaokê.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Karaokê".
-
- 2. Sistema exibe a fila em tempo real.
-
- 3. Ator pode adicionar, editar, remover ou reordenar pessoas na fila.
-
-
-### 5. Gerenciamento de Comandas
-
-#### CUGSA007: Gerenciar Comandas (Admin)
-
-- **Nome:** Gerenciar Comandas (Admin)
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite visualizar, editar e fechar comandas.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Comandas".
-
- 2. Sistema exibe lista de comandas com seus status.
-
- 3. Ator seleciona comanda para ver detalhes, editar itens, alterar status ou fechar.
-
-
-### 6. Gerenciamento de Funcionários
-
-#### CUGSA008: Gerenciar Dados de Funcionários
-
-- **Nome:** Gerenciar Dados de Funcionários
-
-- **Ator:** Administrador, Funcionário Administrativo (RH)
-
-- **Descrição:** Permite o cadastro e a manutenção dos dados dos funcionários.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Funcionários".
-
- 2. Sistema exibe lista de funcionários.
-
- 3. Ator seleciona opção para "Cadastrar Novo Funcionário", "Editar Dados" ou "Excluir Funcionário".
-
- 4. Sistema atualiza o cadastro de funcionários.
-
-
-### 7. Gestão de Pagamentos de Salário
-
-#### CUGSA009: Registrar Pagamento de Salário
-
-- **Nome:** Registrar Pagamento de Salário
-
-- **Ator:** Administrador, Funcionário Administrativo (RH)
-
-- **Descrição:** Permite registrar os pagamentos de salário e gerar holerites.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Folha de Pagamento".
-
- 2. Ator seleciona funcionário e insere detalhes do pagamento (valor, período).
-
- 3. Sistema registra o pagamento e gera o holerite.
-
-
-#### CUGSA010: Consultar Histórico de Pagamentos
-
-- **Nome:** Consultar Histórico de Pagamentos
-
-- **Ator:** Administrador, Funcionário Administrativo (RH)
-
-- **Descrição:** Permite visualizar o histórico de pagamentos de salário por funcionário.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Folha de Pagamento".
-
- 2. Ator seleciona funcionário para ver seu histórico de pagamentos.
-
-
-### 8. Gestão de Estoque e Entrada de Mercadorias
-
-#### CUGSA011: Registrar Entrada de Mercadoria
-
-- **Nome:** Registrar Entrada de Mercadoria
-
-- **Ator:** Administrador, Funcionário Administrativo (Estoque)
-
-- **Descrição:** Permite registrar a entrada de novos produtos no estoque.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Estoque/Entrada de Mercadorias".
-
- 2. Ator seleciona produto, quantidade, fornecedor e custo.
-
- 3. Sistema registra a entrada e atualiza o estoque do produto.
-
-
-#### CUGSA012: Gerenciar Estoque
-
-- **Nome:** Gerenciar Estoque
-
-- **Ator:** Administrador, Funcionário Administrativo (Estoque)
-
-- **Descrição:** Permite visualizar o estoque atual e gerenciar fornecedores.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Estoque".
-
- 2. Sistema exibe o estoque atual de todos os produtos.
-
- 3. Ator pode gerenciar fornecedores (cadastrar, editar, excluir).
-
-
-### 9. Dashboard de Resultados e Relatórios
-
-#### CUGSA013: Visualizar Dashboard de Vendas
-
-- **Nome:** Visualizar Dashboard de Vendas
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite visualizar gráficos e métricas de vendas.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o "Dashboard de Vendas".
-
- 2. Sistema exibe métricas como total de vendas, vendas por produto/período/garçom.
-
-
-#### CUGSA014: Visualizar Dashboard de Lucratividade
-
-- **Nome:** Visualizar Dashboard de Lucratividade
-
-- **Ator:** Administrador, Gerente
-
-- **Descrição:** Permite visualizar gráficos e métricas de lucratividade.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o "Dashboard de Lucratividade".
-
- 2. Sistema exibe receita, custos e lucro bruto.
-
-
-#### CUGSA015: Gerar Relatórios
-
-- **Nome:** Gerar Relatórios
-
-- **Ator:** Administrador, Gerente, Funcionário Administrativo
-
-- **Descrição:** Permite gerar diversos relatórios para análise.
-
-- **Fluxo Principal:**
-
- 1. Ator acessa o módulo de "Relatórios".
-
- 2. Ator seleciona o tipo de relatório (estoque, financeiro, desempenho de funcionários).
-
- 3. Ator define filtros (período, funcionário, produto).
-
- 4. Sistema gera o relatório e permite exportação.
\ No newline at end of file
diff --git a/doc/App Gestão/Histórias de Usuário - Aplicativo de Gestão.md b/doc/App Gestão/Histórias de Usuário - Aplicativo de Gestão.md
deleted file mode 100644
index 341dbbb..0000000
--- a/doc/App Gestão/Histórias de Usuário - Aplicativo de Gestão.md
+++ /dev/null
@@ -1,165 +0,0 @@
-# Histórias de Usuário do Aplicativo de Gestão do Bar
-
-Este documento apresenta as histórias de usuário para o aplicativo de gestão do bar, focando na perspectiva dos usuários de gestão (Administradores, Gerentes, Funcionários Administrativos) e no valor que cada funcionalidade entrega.
-
-## 1. Gerenciamento de Usuários (Clientes e Garçons)
-
-- **HUGSA001 - Gerenciar Clientes:**
-
- - **Como um** administrador,
-
- - **Eu quero** visualizar e gerenciar os cadastros dos clientes do BarApp,
-
- - **Para que** eu possa ter controle sobre a base de usuários e realizar manutenções.
-
-- **HUGSA002 - Gerenciar Garçons:**
-
- - **Como um** administrador,
-
- - **Eu quero** cadastrar e gerenciar os garçons que usam o GarçomApp,
-
- - **Para que** eu possa controlar o acesso da equipe e suas informações.
-
-
-## 2. Gerenciamento de Cardápio e Produtos
-
-- **HUGSA003 - Gerenciar Produtos:**
-
- - **Como um** gerente,
-
- - **Eu quero** cadastrar, editar e remover produtos do cardápio,
-
- - **Para que** o cardápio no aplicativo do cliente esteja sempre atualizado com os itens disponíveis.
-
-- **HUGSA004 - Gerenciar Disponibilidade de Produtos:**
-
- - **Como um** gerente,
-
- - **Eu quero** marcar produtos como disponíveis ou indisponíveis,
-
- - **Para que** os clientes vejam apenas o que está sendo servido no momento.
-
-
-## 3. Gerenciamento de Tickets e Ingressos
-
-- **HUGSA005 - Consultar Vendas de Tickets:**
-
- - **Como um** gerente,
-
- - **Eu quero** visualizar todos os tickets vendidos e seus status de uso,
-
- - **Para que** eu possa acompanhar as vendas de tickets e o consumo dos clientes.
-
-- **HUGSA006 - Gerenciar Eventos:**
-
- - **Como um** administrador,
-
- - **Eu quero** cadastrar e gerenciar os eventos do bar,
-
- - **Para que** os clientes possam comprar ingressos e participar das festas.
-
-
-## 4. Gerenciamento da Fila do Karaokê
-
-- **HUGSA007 - Gerenciar Fila do Karaokê (Admin):**
-
- - **Como um** gerente,
-
- - **Eu quero** ter controle total sobre a fila do karaokê,
-
- - **Para que** eu possa organizar as apresentações e garantir a fluidez do evento.
-
-
-## 5. Gerenciamento de Comandas
-
-- **HUGSA008 - Visualizar e Gerenciar Comandas:**
-
- - **Como um** gerente,
-
- - **Eu quero** visualizar todas as comandas abertas e fechadas,
-
- - **Para que** eu possa acompanhar o consumo das mesas e o status dos pagamentos.
-
-
-## 6. Gerenciamento de Funcionários
-
-- **HUGSA009 - Cadastrar Funcionário:**
-
- - **Como um** administrador,
-
- - **Eu quero** cadastrar novos funcionários,
-
- - **Para que** eu possa manter um registro completo da equipe.
-
-- **HUGSA010 - Gerenciar Dados de Funcionários:**
-
- - **Como um** administrador,
-
- - **Eu quero** editar os dados dos funcionários,
-
- - **Para que** as informações da equipe estejam sempre atualizadas.
-
-
-## 7. Gestão de Pagamentos de Salário
-
-- **HUGSA011 - Registrar Pagamento de Salário:**
-
- - **Como um** funcionário administrativo (RH),
-
- - **Eu quero** registrar os pagamentos de salário dos funcionários,
-
- - **Para que** a folha de pagamento seja organizada e os holerites gerados corretamente.
-
-- **HUGSA012 - Consultar Histórico de Pagamentos:**
-
- - **Como um** funcionário administrativo (RH),
-
- - **Eu quero** consultar o histórico de pagamentos de salário de cada funcionário,
-
- - **Para que** eu possa verificar registros passados e resolver dúvidas.
-
-
-## 8. Gestão de Estoque e Entrada de Mercadorias
-
-- **HUGSA013 - Registrar Entrada de Mercadoria:**
-
- - **Como um** funcionário administrativo (estoque),
-
- - **Eu quero** registrar a entrada de novas mercadorias,
-
- - **Para que** o estoque seja atualizado e eu tenha controle sobre o que entra no bar.
-
-- **HUGSA014 - Visualizar Estoque e Alertas:**
-
- - **Como um** gerente,
-
- - **Eu quero** visualizar o estoque atual de produtos e receber alertas de estoque baixo,
-
- - **Para que** eu possa garantir que nunca falte produto e planejar novas compras.
-
-
-## 9. Dashboard de Resultados e Relatórios
-
-- **HUGSA015 - Visualizar Dashboard de Vendas:**
-
- - **Como um** gerente,
-
- - **Eu quero** ver um dashboard com os resultados de vendas,
-
- - **Para que** eu possa analisar o desempenho do bar e identificar tendências.
-
-- **HUGSA016 - Visualizar Dashboard de Lucratividade:**
-
- - **Como um** administrador,
-
- - **Eu quero** ver um dashboard com a lucratividade do bar,
-
- - **Para que** eu possa tomar decisões financeiras estratégicas.
-
-- **HUGSA017 - Gerar Relatórios:**
-
- - **Como um** administrador,
-
- - **Eu quero** gerar relatórios detalhados (estoque, financeiro, desempenho de funcionários),
-
- - **Para que** eu possa ter informações precisas para auditorias e planejamento.
\ No newline at end of file
diff --git a/doc/App Gestão/Requisitos - Aplicativo de Gestão.md b/doc/App Gestão/Requisitos - Aplicativo de Gestão.md
deleted file mode 100644
index 794948c..0000000
--- a/doc/App Gestão/Requisitos - Aplicativo de Gestão.md
+++ /dev/null
@@ -1,225 +0,0 @@
-# Documento de Requisitos do Aplicativo de Gestão do Bar
-
-## 1. Introdução
-
-### 1.1. Propósito
-
-Este documento detalha os requisitos funcionais, não funcionais, regras de negócio e requisitos de sistema para o desenvolvimento de um aplicativo web de gestão para o bar, a ser desenvolvido em Django/Python. Este aplicativo centralizará o controle de todas as operações do bar, incluindo as funcionalidades já existentes nos aplicativos mobile (BarApp e GarçomApp), além de novas funcionalidades de gestão empresarial.
-
-### 1.2. Escopo
-
-O aplicativo de gestão será uma plataforma web acessível por navegadores, destinada a administradores e gerentes do bar. Ele englobará a gestão de clientes, produtos, tickets, ingressos, karaokê, comandas, funcionários, salários, estoque e dashboards de resultados.
-
-### 1.3. Público-alvo
-
-- **Administradores:** Usuários com acesso total ao sistema, responsáveis pela configuração e gestão estratégica.
-
-- **Gerentes:** Usuários com acesso a funcionalidades operacionais e de relatórios.
-
-- **Funcionários Administrativos:** Usuários com acesso a funcionalidades específicas, como gestão de estoque ou folha de pagamento.
-
-
-## 2. Requisitos Funcionais (RF)
-
-Os requisitos funcionais descrevem as funcionalidades que o sistema deve oferecer aos usuários do aplicativo de gestão.
-
-### 2.1. Gerenciamento de Usuários (Clientes e Garçons)
-
-- **RFGSA001 - Gerenciar Clientes (BarApp):** O sistema deve permitir que o administrador visualize, edite e exclua cadastros de clientes do BarApp.
-
-- **RFGSA002 - Gerenciar Garçons (GarçomApp):** O sistema deve permitir que o administrador cadastre, edite (nome, usuário, senha) e exclua garçons que utilizarão o GarçomApp.
-
-- **RFGSA003 - Gerenciar Permissões de Garçons:** O sistema deve permitir que o administrador atribua diferentes níveis de permissão aos garçons (e.g., acesso a comandas, acesso a karaokê).
-
-
-### 2.2. Gerenciamento de Cardápio e Produtos
-
-- **RFGSA004 - Cadastrar Produto:** O sistema deve permitir que o administrador cadastre novos produtos no cardápio (nome, descrição, preço, imagem, categoria).
-
-- **RFGSA005 - Editar Produto:** O sistema deve permitir que o administrador edite informações de produtos existentes.
-
-- **RFGSA006 - Excluir Produto:** O sistema deve permitir que o administrador exclua produtos do cardápio.
-
-- **RFGSA007 - Gerenciar Categorias de Produtos:** O sistema deve permitir o cadastro, edição e exclusão de categorias de produtos.
-
-- **RFGSA008 - Gerenciar Disponibilidade de Produtos:** O sistema deve permitir que o administrador marque produtos como disponíveis ou indisponíveis no cardápio do BarApp.
-
-
-### 2.3. Gerenciamento de Tickets
-
-- **RFGSA009 - Visualizar Tickets Vendidos:** O sistema deve exibir uma lista de todos os tickets vendidos, com detalhes (produto, comprador, data de compra, status).
-
-- **RFGSA010 - Consultar Histórico de Tickets:** O sistema deve permitir a consulta do histórico de uso e transferência de tickets.
-
-- **RFGSA011 - Configurar Prazo de Validade de Tickets:** O sistema deve permitir que o administrador configure o prazo de validade padrão para os tickets.
-
-- **RFGSA012 - Configurar Limite de Compra de Tickets:** O sistema deve permitir que o administrador configure o limite de compra de tickets por produto por usuário.
-
-
-### 2.4. Gerenciamento de Eventos e Ingressos
-
-- **RFGSA013 - Cadastrar Evento:** O sistema deve permitir que o administrador cadastre novos eventos (nome, data, hora, descrição, preço do ingresso, imagem).
-
-- **RFGSA014 - Editar Evento:** O sistema deve permitir que o administrador edite informações de eventos existentes.
-
-- **RFGSA015 - Excluir Evento:** O sistema deve permitir que o administrador exclua eventos.
-
-- **RFGSA016 - Visualizar Ingressos Vendidos:** O sistema deve exibir uma lista de todos os ingressos vendidos para eventos.
-
-- **RFGSA017 - Consultar Status de Ingressos:** O sistema deve permitir verificar o status de uso de cada ingresso.
-
-
-### 2.5. Gerenciamento da Fila do Karaokê
-
-- **RFGSA018 - Visualizar Fila do Karaokê:** O sistema deve exibir a fila do karaokê em tempo real, permitindo ao administrador acompanhar e gerenciar.
-
-- **RFGSA019 - Gerenciar Fila do Karaokê (Admin):** O sistema deve permitir que o administrador adicione, edite, exclua e altere a posição de pessoas na fila do karaokê.
-
-
-### 2.6. Gerenciamento de Comandas
-
-- **RFGSA020 - Visualizar Todas as Comandas:** O sistema deve exibir uma lista completa de todas as comandas (abertas, aguardando pagamento, pagas, fechadas).
-
-- **RFGSA021 - Detalhes da Comanda:** O sistema deve permitir que o administrador visualize os detalhes de cada comanda (itens, valores, histórico de pagamentos).
-
-- **RFGSA022 - Editar Comanda (Admin):** O sistema deve permitir que o administrador edite qualquer informação de uma comanda (itens, status, etc.).
-
-- **RFGSA023 - Fechar Comanda (Admin):** O sistema deve permitir que o administrador feche uma comanda manualmente.
-
-- **RFGSA024 - Gerar Relatório de Comandas:** O sistema deve gerar relatórios de comandas por período, garçom, status, etc.
-
-
-### 2.7. Gerenciamento de Funcionários
-
-- **RFGSA025 - Cadastrar Funcionário:** O sistema deve permitir o cadastro de novos funcionários (nome, CPF, cargo, data de contratação, salário base, dados bancários).
-
-- **RFGSA026 - Editar Dados do Funcionário:** O sistema deve permitir a edição dos dados cadastrais dos funcionários.
-
-- **RFGSA027 - Excluir Funcionário:** O sistema deve permitir a exclusão de registros de funcionários.
-
-- **RFGSA028 - Gerenciar Cargos:** O sistema deve permitir o cadastro, edição e exclusão de cargos e suas descrições.
-
-
-### 2.8. Gestão de Pagamentos de Salário
-
-- **RFGSA029 - Registrar Pagamento de Salário:** O sistema deve permitir o registro de pagamentos de salário para funcionários (valor, data, período de referência).
-
-- **RFGSA030 - Gerar Holerite:** O sistema deve gerar holerites (recibos de pagamento) para os funcionários, contendo detalhes do salário, descontos e benefícios.
-
-- **RFGSA031 - Visualizar Histórico de Pagamentos:** O sistema deve exibir o histórico de pagamentos de salário por funcionário.
-
-
-### 2.9. Gestão de Estoque e Entrada de Mercadorias
-
-- **RFGSA032 - Registrar Entrada de Mercadoria:** O sistema deve permitir o registro de entrada de mercadorias no estoque (produto, quantidade, data, fornecedor, custo unitário).
-
-- **RFGSA033 - Atualizar Estoque:** O sistema deve atualizar automaticamente o estoque dos produtos após a entrada de mercadorias.
-
-- **RFGSA034 - Visualizar Estoque Atual:** O sistema deve exibir o estoque atual de todos os produtos.
-
-- **RFGSA035 - Alerta de Estoque Baixo:** O sistema deve gerar alertas quando o estoque de um produto atingir um nível mínimo configurável.
-
-- **RFGSA036 - Gerenciar Fornecedores:** O sistema deve permitir o cadastro, edição e exclusão de informações de fornecedores.
-
-
-### 2.10. Dashboard de Resultados e Relatórios
-
-- **RFGSA037 - Dashboard de Vendas:** O sistema deve exibir um dashboard com métricas de vendas (total de vendas, vendas por produto, vendas por período, vendas por garçom).
-
-- **RFGSA038 - Dashboard de Lucratividade:** O sistema deve exibir um dashboard com métricas de lucratividade (receita, custo de mercadoria vendida, lucro bruto).
-
-- **RFGSA039 - Relatório de Estoque:** O sistema deve gerar relatórios detalhados sobre o estoque (movimentação, valor do estoque).
-
-- **RFGSA040 - Relatório de Desempenho de Funcionários:** O sistema deve gerar relatórios sobre o desempenho dos garçons (e.g., número de comandas abertas, valor total de vendas).
-
-- **RFGSA041 - Relatório Financeiro:** O sistema deve gerar relatórios financeiros consolidados (receitas, despesas, fluxo de caixa).
-
-
-## 3. Requisitos Não Funcionais (RNF)
-
-### 3.1. Usabilidade
-
-- **RNFGSA001 - Interface Web Intuitiva:** A interface web deve ser intuitiva, responsiva e fácil de navegar para administradores e gerentes.
-
-- **RNFGSA002 - Painéis de Controle Claros:** Os dashboards e relatórios devem apresentar informações de forma clara e visualmente atraente.
-
-- **RNFGSA003 - Geração de Relatórios:** Relatórios devem ser exportáveis em formatos comuns (e.g., PDF, CSV, Excel).
-
-
-### 3.2. Desempenho
-
-- **RNFGSA004 - Tempo de Resposta:** O tempo de resposta para operações de gestão e carregamento de dashboards não deve exceder 5 segundos.
-
-- **RNFGSA005 - Capacidade de Processamento:** O sistema deve ser capaz de processar um grande volume de dados de vendas, estoque e funcionários sem lentidão.
-
-
-### 3.3. Segurança
-
-- **RNFGSA006 - Autenticação de Administradores:** O sistema deve garantir que apenas usuários autorizados (administradores, gerentes) possam acessar o painel de gestão.
-
-- **RNFGSA007 - Controle de Acesso Baseado em Papéis (RBAC):** O sistema deve implementar um controle de acesso robusto, onde diferentes papéis de usuário (administrador, gerente, etc.) têm permissões específicas.
-
-- **RNFGSA008 - Proteção de Dados Sensíveis:** Informações financeiras, de funcionários e de clientes devem ser armazenadas e transmitidas de forma criptografada e segura.
-
-- **RNFGSA009 - Auditoria:** O sistema deve registrar logs de auditoria para ações críticas realizadas pelos usuários de gestão.
-
-
-### 3.4. Confiabilidade
-
-- **RNFGSA010 - Disponibilidade:** O sistema deve estar disponível 99,5% do tempo.
-
-- **RNFGSA011 - Integridade dos Dados:** O sistema deve garantir a integridade e consistência de todos os dados financeiros e de estoque.
-
-- **RNFGSA012 - Backup e Recuperação:** Deve haver um plano de backup e recuperação de desastres para os dados do sistema.
-
-
-### 3.5. Manutenibilidade
-
-- **RNFGSA013 - Arquitetura Modular:** O sistema deve ser desenvolvido com uma arquitetura modular para facilitar a manutenção e a adição de novas funcionalidades.
-
-- **RNFGSA014 - Documentação Interna:** O código e a arquitetura do sistema devem ser bem documentados.
-
-
-### 3.6. Compatibilidade
-
-- **RNFGSA015 - Compatibilidade com Navegadores:** O sistema deve ser compatível com os principais navegadores web modernos (Chrome, Firefox, Edge, Safari).
-
-- **RNFGSA016 - Responsividade Web:** A interface deve ser responsiva e adaptável a diferentes tamanhos de tela (desktops, tablets).
-
-
-## 4. Regras de Negócio (RN)
-
-### 4.1. Funcionários e Salários
-
-- **RNGSA001 - Salário Base:** Cada funcionário deve ter um salário base definido.
-
-- **RNGSA002 - Período de Pagamento:** Salários são pagos em períodos definidos (e.g., mensalmente).
-
-- **RNGSA003 - Descontos Legais:** O sistema deve calcular e aplicar descontos legais (e.g., impostos, previdência) nos holerites.
-
-
-### 4.2. Estoque
-
-- **RNGSA004 - Atualização de Estoque:** A venda de produtos (via tickets ou comandas) deve decrementar automaticamente o estoque.
-
-- **RNGSA005 - Custo Médio Ponderado:** O sistema deve calcular o custo médio ponderado dos produtos em estoque para fins de lucratividade.
-
-
-## 5. Requisitos de Sistema (RS)
-
-### 5.1. Tecnologia
-
-- **RSGSA001 - Framework:** O sistema será desenvolvido utilizando o framework Django (Python).
-
-- **RSGSA002 - Banco de Dados:** Será utilizado um banco de dados relacional (e.g., PostgreSQL, MySQL).
-
-- **RSGSA003 - Servidor Web:** O sistema será hospedado em um servidor web (e.g., Nginx, Apache).
-
-
-### 5.2. Integrações
-
-- **RSGSA004 - Integração com BarApp e GarçomApp:** O sistema de gestão atuará como o backend central para os aplicativos mobile, gerenciando seus dados.
-
-- **RSGSA005 - Integração com Gateway de Pagamento:** O sistema de gestão deve ter acesso às informações de transações do gateway de pagamento.
-
-- **RSGSA006 - Integração com Sistema de Cozinha:** O sistema de gestão deve se comunicar com o sistema da cozinha para gerenciar o status dos pedidos.
\ No newline at end of file
diff --git a/doc/App Gestão/db.json b/doc/App Gestão/db.json
deleted file mode 100644
index 0637a08..0000000
--- a/doc/App Gestão/db.json
+++ /dev/null
@@ -1 +0,0 @@
-[]
\ No newline at end of file
diff --git a/doc/App Interno/App Interno - Visão Geral.md b/doc/App Interno/App Interno - Visão Geral.md
deleted file mode 100644
index 813f8e0..0000000
--- a/doc/App Interno/App Interno - Visão Geral.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# GarçomApp - Visão Geral
-
-O **GarçomApp** é um aplicativo mobile de uso interno, exclusivo para a equipe de garçons do bar. Seu propósito é otimizar as operações diárias, agilizando o atendimento, o gerenciamento de pedidos e a interação com os clientes de forma eficiente.
-
-## Principais Funcionalidades:
-
-- **Validação de Tickets e Ingressos:** Leia e valide QR Codes de tickets de produtos e ingressos de eventos apresentados pelos clientes no BarApp.
-
-- **Gestão da Fila do Karaokê:** Visualize, adicione, edite e remova pessoas da fila do karaokê em tempo real.
-
-- **Gestão de Comandas:**
-
- - Visualize todas as comandas abertas e aguardando pagamento.
-
- - Abra novas comandas e associe-as a mesas ou clientes.
-
- - Adicione produtos às comandas.
-
- - Gere QR Codes para que os clientes paguem suas comandas (total ou parcial) via Pix no BarApp.
-
- - Feche comandas.
-
-- **Acompanhamento de Pedidos:** Monitore o status dos pedidos enviados para a cozinha (na fila, preparando, pronto).
-
-- **Notificações:** Receba alertas em tempo real sobre pagamentos de comandas efetuados pelos clientes e quando os pedidos da cozinha estiverem prontos.
-
-
-## Documentos Relacionados:
-
-- [[Requisitos - Aplicativo Interno]]
-
-- [[Casos de Uso - Aplicativo Interno]]
-
-- [[Histórias de Usuário - Aplicativo Interno]]
-
-- [[Modelagem de Banco de Dados]]
-
-- [[Visão Geral do Projeto]]
\ No newline at end of file
diff --git a/doc/App Interno/Casos de Uso - Aplicativo Interno.md b/doc/App Interno/Casos de Uso - Aplicativo Interno.md
deleted file mode 100644
index e22b200..0000000
--- a/doc/App Interno/Casos de Uso - Aplicativo Interno.md
+++ /dev/null
@@ -1,291 +0,0 @@
-# Casos de Uso do Aplicativo GarçomApp
-
-Este documento descreve os principais casos de uso do aplicativo GarçomApp, detalhando as interações entre os atores (garçons) e o sistema.
-
-## Atores
-
-- **Garçom:** Funcionário do bar que utiliza o aplicativo.
-
-- **Cliente (BarApp):** Usuário do aplicativo do cliente que interage com o garçom via QR Codes.
-
-- **Sistema de Cozinha:** Sistema responsável pelo gerenciamento de pedidos na cozinha.
-
-- **Sistema de Pagamento:** Serviço externo para processamento de pagamentos.
-
-
-## Casos de Uso
-
-### 1. Autenticação
-
-#### CUG001: Realizar Login
-
-- **Nome:** Realizar Login
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom acesse o aplicativo com suas credenciais.
-
-- **Fluxo Principal:**
-
- 1. Garçom acessa a tela de login.
-
- 2. Garçom insere usuário e senha.
-
- 3. Sistema valida as credenciais.
-
- 4. Sistema autentica o garçom e o redireciona para a tela principal.
-
-
-### 2. Gerenciamento de Tickets e Ingressos
-
-#### CUG002: Validar Ticket de Produto
-
-- **Nome:** Validar Ticket de Produto
-
-- **Ator:** Garçom, Cliente (BarApp)
-
-- **Descrição:** Permite que o garçom valide um ticket de produto apresentado pelo cliente.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona a opção "Validar Ticket".
-
- 2. Sistema ativa a câmera para leitura de QR Code.
-
- 3. Garçom escaneia o QR Code do ticket no BarApp do cliente.
-
- 4. Sistema valida o ticket (existência, validade, não utilizado).
-
- 5. Sistema exibe confirmação de validação e marca o ticket como utilizado.
-
-
-#### CUG003: Validar Ingresso de Evento
-
-- **Nome:** Validar Ingresso de Evento
-
-- **Ator:** Garçom, Cliente (BarApp)
-
-- **Descrição:** Permite que o garçom valide um ingresso de evento apresentado pelo cliente.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona a opção "Validar Ingresso".
-
- 2. Sistema ativa a câmera para leitura de QR Code.
-
- 3. Garçom escaneia o QR Code do ingresso no BarApp do cliente.
-
- 4. Sistema valida o ingresso (existência, validade, não utilizado).
-
- 5. Sistema exibe confirmação de validação e marca o ingresso como utilizado.
-
-
-### 3. Gerenciamento da Fila do Karaokê
-
-#### CUG004: Visualizar Fila do Karaokê
-
-- **Nome:** Visualizar Fila do Karaokê
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom veja a ordem das pessoas para cantar.
-
-- **Fluxo Principal:**
-
- 1. Garçom acessa a tela do Karaokê.
-
- 2. Sistema exibe a lista de pessoas na fila em tempo real.
-
-
-#### CUG005: Gerenciar Fila do Karaokê
-
-- **Nome:** Gerenciar Fila do Karaokê
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom adicione, edite ou remova pessoas da fila do karaokê.
-
-- **Fluxo Principal - Adicionar:**
-
- 1. Garçom seleciona "Adicionar à Fila".
-
- 2. Garçom insere nome da pessoa e, opcionalmente, música.
-
- 3. Sistema adiciona a pessoa ao final da fila.
-
-- **Fluxo Principal - Editar/Mover:**
-
- 1. Garçom seleciona uma pessoa na fila.
-
- 2. Garçom arrasta para mudar a posição ou edita os detalhes.
-
- 3. Sistema atualiza a fila.
-
-- **Fluxo Principal - Remover:**
-
- 1. Garçom seleciona uma pessoa na fila.
-
- 2. Garçom confirma a remoção.
-
- 3. Sistema remove a pessoa da fila.
-
-
-### 4. Gerenciamento de Comandas
-
-#### CUG006: Visualizar Comandas
-
-- **Nome:** Visualizar Comandas
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom veja o status de todas as comandas.
-
-- **Fluxo Principal:**
-
- 1. Garçom acessa a tela de Comandas.
-
- 2. Sistema exibe listas separadas de "Comandas Abertas" e "Comandas Aguardando Pagamento".
-
-
-#### CUG007: Abrir Nova Comanda
-
-- **Nome:** Abrir Nova Comanda
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom crie uma nova comanda para um cliente/mesa.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona "Abrir Nova Comanda".
-
- 2. Garçom insere nome do cliente (opcional) e/ou número da mesa.
-
- 3. Sistema cria e exibe a nova comanda.
-
-
-#### CUG008: Adicionar Produto à Comanda
-
-- **Nome:** Adicionar Produto à Comanda
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom adicione itens do cardápio a uma comanda existente.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona uma comanda aberta.
-
- 2. Garçom navega pelo cardápio e seleciona produtos e quantidades.
-
- 3. Sistema adiciona os produtos à comanda e atualiza o total.
-
- 4. Sistema envia o pedido para a cozinha (se aplicável).
-
-
-#### CUG009: Editar Informações da Comanda
-
-- **Nome:** Editar Informações da Comanda
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom atualize o nome do cliente ou a mesa associada a uma comanda.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona uma comanda.
-
- 2. Garçom edita o nome do cliente ou o número da mesa.
-
- 3. Sistema atualiza as informações da comanda.
-
-
-#### CUG010: Gerar QR Code para Pagamento da Comanda
-
-- **Nome:** Gerar QR Code para Pagamento da Comanda
-
-- **Ator:** Garçom, Cliente (BarApp), Sistema de Pagamento
-
-- **Descrição:** Permite que o garçom gere um QR Code para o cliente pagar a comanda via Pix.
-
-- **Fluxo Principal:**
-
- 1. Garçom seleciona uma comanda.
-
- 2. Garçom seleciona a opção "Gerar QR Code para Pagamento".
-
- 3. Garçom pode escolher pagamento total ou parcial (informando o valor).
-
- 4. Sistema gera um QR Code (e.g., Pix) e o exibe para o cliente.
-
- 5. Cliente escaneia o QR Code e efetua o pagamento via BarApp.
-
- 6. Sistema de Pagamento notifica o GarçomApp sobre o pagamento.
-
-
-#### CUG011: Fechar Comanda
-
-- **Nome:** Fechar Comanda
-
-- **Ator:** Garçom
-
-- **Descrição:** Permite que o garçom marque uma comanda como paga e fechada.
-
-- **Fluxo Principal:**
-
- 1. Garçom verifica que a comanda foi totalmente paga.
-
- 2. Garçom seleciona a comanda e a opção "Fechar Comanda".
-
- 3. Sistema marca a comanda como fechada e a remove da lista de comandas abertas.
-
-
-### 5. Acompanhamento de Pedidos e Notificações
-
-#### CUG012: Visualizar Andamento de Pedidos da Cozinha
-
-- **Nome:** Visualizar Andamento de Pedidos da Cozinha
-
-- **Ator:** Garçom, Sistema de Cozinha
-
-- **Descrição:** Permite que o garçom acompanhe o status dos pedidos enviados para a cozinha.
-
-- **Fluxo Principal:**
-
- 1. Garçom acessa a tela de "Pedidos da Cozinha".
-
- 2. Sistema exibe a lista de pedidos com seus status ("na fila", "preparando", "pronto").
-
-
-#### CUG013: Receber Notificação de Pagamento de Comanda
-
-- **Nome:** Receber Notificação de Pagamento de Comanda
-
-- **Ator:** Garçom, Sistema de Pagamento
-
-- **Descrição:** O sistema notifica o garçom quando uma comanda sob sua responsabilidade é paga pelo cliente.
-
-- **Fluxo Principal:**
-
- 1. Pagamento da comanda é efetuado pelo cliente via BarApp.
-
- 2. Sistema de Pagamento envia notificação ao GarçomApp.
-
- 3. GarçomApp exibe uma notificação (e.g., push notification, alerta no app) informando sobre o pagamento.
-
-
-#### CUG014: Receber Notificação de Pedido Pronto
-
-- **Nome:** Receber Notificação de Pedido Pronto
-
-- **Ator:** Garçom, Sistema de Cozinha
-
-- **Descrição:** O sistema notifica o garçom quando um pedido da cozinha está pronto para ser entregue.
-
-- **Fluxo Principal:**
-
- 1. Sistema de Cozinha marca um pedido como "pronto".
-
- 2. Sistema de Cozinha envia notificação ao GarçomApp.
-
- 3. GarçomApp exibe uma notificação informando que o pedido está pronto.
\ No newline at end of file
diff --git a/doc/App Interno/Histórias de Usuário - Aplicativo Interno.md b/doc/App Interno/Histórias de Usuário - Aplicativo Interno.md
deleted file mode 100644
index 1c10137..0000000
--- a/doc/App Interno/Histórias de Usuário - Aplicativo Interno.md
+++ /dev/null
@@ -1,217 +0,0 @@
-# Histórias de Usuário do Aplicativo GarçomApp
-
-Este documento apresenta as histórias de usuário para o aplicativo GarçomApp, focando na perspectiva do garçom e no valor que cada funcionalidade entrega para a operação do bar.
-
-## 1. Autenticação
-
-- **HUG001 - Login:**
-
- - **Como um** garçom,
-
- - **Eu quero** fazer login no aplicativo,
-
- - **Para que** eu possa acessar minhas ferramentas de trabalho.
-
- - **Critérios de Aceitação:**
-
- - Garçom insere usuário e senha.
-
- - Sistema valida as credenciais.
-
- - Garçom é redirecionado para a tela principal do aplicativo.
-
-
-## 2. Gerenciamento de Tickets e Ingressos
-
-- **HUG002 - Validação de Ticket:**
-
- - **Como um** garçom,
-
- - **Eu quero** ler o QR Code de um ticket de produto do cliente,
-
- - **Para que** eu possa validar a compra e entregar o produto.
-
- - **Critérios de Aceitação:**
-
- - Câmera é ativada para leitura do QR Code.
-
- - Sistema valida o ticket (existência, validade, não utilizado).
-
- - Sistema exibe mensagem de sucesso ou erro na validação.
-
- - Ticket é marcado como utilizado no sistema.
-
-- **HUG003 - Validação de Ingresso:**
-
- - **Como um** garçom,
-
- - **Eu quero** ler o QR Code de um ingresso de evento do cliente,
-
- - **Para que** eu possa validar a entrada do cliente no evento.
-
- - **Critérios de Aceitação:**
-
- - Câmera é ativada para leitura do QR Code.
-
- - Sistema valida o ingresso (existência, validade, não utilizado).
-
- - Sistema exibe mensagem de sucesso ou erro na validação.
-
- - Ingresso é marcado como utilizado no sistema.
-
-
-## 3. Gerenciamento da Fila do Karaokê
-
-- **HUG004 - Visualização da Fila do Karaokê:**
-
- - **Como um** garçom,
-
- - **Eu quero** visualizar a fila de pessoas para o karaokê,
-
- - **Para que** eu possa gerenciar a ordem das apresentações.
-
- - **Critérios de Aceitação:**
-
- - Fila é exibida em tempo real.
-
- - Nomes das pessoas na fila são visíveis.
-
-- **HUG005 - Gerenciamento da Fila do Karaokê:**
-
- - **Como um** garçom,
-
- - **Eu quero** adicionar, editar e remover pessoas da fila do karaokê,
-
- - **Para que** eu possa manter a fila organizada e justa.
-
- - **Critérios de Aceitação:**
-
- - É possível adicionar um novo nome à fila.
-
- - É possível arrastar e soltar nomes para mudar a posição na fila.
-
- - É possível remover um nome da fila.
-
- - A fila é atualizada instantaneamente para todos os usuários.
-
-
-## 4. Gerenciamento de Comandas
-
-- **HUG006 - Visualização de Comandas:**
-
- - **Como um** garçom,
-
- - **Eu quero** visualizar todas as comandas abertas e as aguardando pagamento,
-
- - **Para que** eu tenha controle sobre o consumo das mesas e pagamentos pendentes.
-
- - **Critérios de Aceitação:**
-
- - Listas de comandas abertas e aguardando pagamento são exibidas.
-
- - Informações básicas da comanda (mesa, nome do cliente, valor total) são visíveis.
-
-- **HUG007 - Abrir Nova Comanda:**
-
- - **Como um** garçom,
-
- - **Eu quero** abrir uma nova comanda,
-
- - **Para que** eu possa registrar o consumo de um novo cliente/mesa.
-
- - **Critérios de Aceitação:**
-
- - É possível associar a comanda a uma mesa e/ou nome de cliente.
-
- - A nova comanda é criada e aparece na lista de comandas abertas.
-
-- **HUG008 - Adicionar Produto à Comanda:**
-
- - **Como um** garçom,
-
- - **Eu quero** adicionar produtos à comanda de um cliente,
-
- - **Para que** o consumo seja registrado e o pedido enviado para a cozinha/bar.
-
- - **Critérios de Aceitação:**
-
- - É possível selecionar produtos do cardápio e suas quantidades.
-
- - O valor da comanda é atualizado automaticamente.
-
- - Pedidos são enviados para a cozinha/bar.
-
-- **HUG009 - Gerar QR Code para Pagamento da Comanda:**
-
- - **Como um** garçom,
-
- - **Eu quero** gerar um QR Code para o cliente pagar a comanda via Pix,
-
- - **Para que** o cliente possa pagar de forma autônoma e rápida.
-
- - **Critérios de Aceitação:**
-
- - É possível selecionar a comanda e a opção de gerar QR Code.
-
- - É possível definir se o pagamento é total ou parcial.
-
- - Um QR Code Pix válido é exibido na tela.
-
-- **HUG010 - Fechar Comanda:**
-
- - **Como um** garçom,
-
- - **Eu quero** fechar uma comanda,
-
- - **Para que** eu possa indicar que o consumo foi pago e a mesa está liberada.
-
- - **Critérios de Aceitação:**
-
- - A comanda só pode ser fechada se o valor total estiver pago.
-
- - A comanda é removida da lista de comandas abertas.
-
-
-## 5. Acompanhamento de Pedidos e Notificações
-
-- **HUG011 - Visualização do Andamento de Pedidos da Cozinha:**
-
- - **Como um** garçom,
-
- - **Eu quero** ver o status dos pedidos que enviei para a cozinha,
-
- - **Para que** eu saiba quando posso buscar os produtos para entregar aos clientes.
-
- - **Critérios de Aceitação:**
-
- - Lista de pedidos exibe o status ("na fila", "preparando", "pronto").
-
- - Informações da comanda associada ao pedido são visíveis.
-
-- **HUG012 - Receber Notificação de Pagamento de Comanda:**
-
- - **Como um** garçom,
-
- - **Eu quero** ser notificado quando uma comanda sob minha responsabilidade for paga pelo cliente,
-
- - **Para que** eu possa agilizar o fechamento da mesa ou verificar o pagamento.
-
- - **Critérios de Aceitação:**
-
- - Uma notificação (e.g., push, sonora) é exibida no aplicativo.
-
- - A notificação indica qual comanda foi paga.
-
-- **HUG013 - Receber Notificação de Pedido Pronto:**
-
- - **Como um** garçom,
-
- - **Eu quero** ser notificado quando um pedido da cozinha estiver pronto,
-
- - **Para que** eu possa buscá-lo e entregar ao cliente sem demora.
-
- - **Critérios de Aceitação:**
-
- - Uma notificação (e.g., push, sonora) é exibida no aplicativo.
-
- - A notificação indica qual pedido está pronto e a qual comanda pertence.
\ No newline at end of file
diff --git a/doc/App Interno/Requisitos - Aplicativo Interno.md b/doc/App Interno/Requisitos - Aplicativo Interno.md
deleted file mode 100644
index 4eaebb8..0000000
--- a/doc/App Interno/Requisitos - Aplicativo Interno.md
+++ /dev/null
@@ -1,178 +0,0 @@
-# Documento de Requisitos do Aplicativo GarçomApp
-
-## 1. Introdução
-
-### 1.1. Propósito
-
-Este documento tem como objetivo detalhar os requisitos funcionais, não funcionais, regras de negócio e requisitos de sistema para o desenvolvimento do aplicativo mobile "GarçomApp". O aplicativo visa otimizar as operações internas do bar, permitindo que os garçons gerenciem tickets, ingressos, a fila do karaokê, comandas de consumo e acompanhem o status dos pedidos da cozinha.
-
-### 1.2. Escopo
-
-O aplicativo GarçomApp será uma solução mobile disponível para as plataformas Android e iOS (ou uma única plataforma, a ser definida), de uso exclusivo da equipe do bar (garçons). Ele permitirá a interação com os clientes através de QR Codes e a gestão de processos internos.
-
-### 1.3. Público-alvo
-
-- **Garçons/Atendentes:** Profissionais do bar que utilizarão o aplicativo para gerenciar as operações diárias.
-
-
-## 2. Requisitos Funcionais (RF)
-
-Os requisitos funcionais descrevem as funcionalidades que o sistema deve oferecer aos garçons.
-
-### 2.1. Autenticação e Acesso
-
-- **RFG001 - Login de Garçom:** O sistema deve permitir que o garçom faça login utilizando suas credenciais de acesso (usuário e senha fornecidos pelo bar).
-
-
-### 2.2. Gerenciamento de Tickets e Ingressos
-
-- **RFG002 - Leitura e Validação de Ticket:** O sistema deve permitir que o garçom leia o QR Code de um ticket gerado pelo cliente (no BarApp) e valide seu uso.
-
-- **RFG003 - Leitura e Validação de Ingresso:** O sistema deve permitir que o garçom leia o QR Code de um ingresso gerado pelo cliente (no BarApp) e valide sua entrada no evento.
-
-- **RFG004 - Registro de Uso:** Após a validação, o sistema deve registrar o ticket/ingresso como utilizado, com data e hora.
-
-
-### 2.3. Gerenciamento da Fila do Karaokê
-
-- **RFG005 - Visualização da Fila do Karaokê:** O sistema deve exibir a fila atual de pessoas para o karaokê em tempo real.
-
-- **RFG006 - Adicionar Pessoa à Fila:** O sistema deve permitir que o garçom adicione uma pessoa à fila do karaokê (e.g., nome, música).
-
-- **RFG007 - Editar Posição na Fila:** O sistema deve permitir que o garçom altere a posição de uma pessoa na fila.
-
-- **RFG008 - Remover Pessoa da Fila:** O sistema deve permitir que o garçom remova uma pessoa da fila.
-
-- **RFG009 - Marcar Próximo a Cantar:** O sistema deve permitir que o garçom marque a próxima pessoa a cantar.
-
-
-### 2.4. Gerenciamento de Comandas
-
-- **RFG010 - Visualização de Comandas Abertas:** O sistema deve exibir uma lista de todas as comandas abertas no bar.
-
-- **RFG011 - Visualização de Comandas Aguardando Pagamento:** O sistema deve exibir uma lista de comandas que foram solicitadas para pagamento pelo cliente e estão aguardando confirmação.
-
-- **RFG012 - Abrir Nova Comanda:** O sistema deve permitir que o garçom abra uma nova comanda, associando-a a um cliente (opcional) e/ou mesa.
-
-- **RFG013 - Editar Informações da Comanda:** O sistema deve permitir que o garçom edite informações da comanda, como nome do cliente e número da mesa.
-
-- **RFG014 - Adicionar Produto à Comanda:** O sistema deve permitir que o garçom adicione produtos do cardápio a uma comanda aberta.
-
-- **RFG015 - Fechar Comanda:** O sistema deve permitir que o garçom marque uma comanda como fechada após o pagamento.
-
-- **RFG016 - Gerar QR Code para Pagamento (Comanda):** O sistema deve permitir que o garçom gere um QR Code para que o cliente pague a comanda (total ou parcial) via Pix através do BarApp.
-
-
-### 2.5. Acompanhamento de Pedidos da Cozinha
-
-- **RFG017 - Visualização do Andamento de Pedidos:** O sistema deve exibir o status dos pedidos enviados para a cozinha (e.g., "na fila", "preparando", "pronto").
-
-- **RFG018 - Detalhes do Pedido:** O garçom deve poder visualizar os detalhes de cada pedido (itens, comanda associada).
-
-
-### 2.6. Notificações
-
-- **RFG019 - Notificação de Pagamento de Comanda:** O sistema deve notificar o garçom quando o pagamento de uma comanda sob sua responsabilidade for efetuado pelo cliente via BarApp.
-
-- **RFG020 - Notificação de Pedido Pronto:** O sistema deve notificar o garçom quando um prato/pedido da cozinha estiver pronto para ser entregue.
-
-
-## 3. Requisitos Não Funcionais (RNF)
-
-Os requisitos não funcionais descrevem as qualidades do sistema.
-
-### 3.1. Usabilidade
-
-- **RNFG001 - Interface Otimizada para Garçons:** A interface deve ser projetada para uso rápido e eficiente em um ambiente de bar, com botões grandes e fluxo otimizado para as tarefas mais frequentes.
-
-- **RNFG002 - Tempo de Resposta:** O tempo de resposta do aplicativo para todas as interações do garçom não deve exceder 2 segundos.
-
-- **RNFG003 - Consistência Visual:** A interface deve seguir um padrão visual consistente.
-
-- **RNFG004 - Feedback Visual e Sonoro:** O sistema deve fornecer feedback claro (visual e/ou sonoro) para ações importantes, como validação de QR Code ou recebimento de notificações.
-
-
-### 3.2. Desempenho
-
-- **RNFG005 - Carregamento Rápido:** O aplicativo deve carregar em no máximo 3 segundos.
-
-- **RNFG006 - Sincronização em Tempo Real:** As informações de fila do karaokê, status de pedidos da cozinha e comandas devem ser atualizadas em tempo real.
-
-- **RNFG007 - Estabilidade:** O aplicativo deve ser estável e não apresentar travamentos ou falhas frequentes durante o uso contínuo.
-
-
-### 3.3. Segurança
-
-- **RNFG008 - Autenticação de Garçons:** O sistema deve garantir que apenas garçons autorizados possam acessar o aplicativo.
-
-- **RNFG009 - Controle de Acesso:** Diferentes níveis de permissão podem ser implementados para garçons, se necessário (e.g., apenas visualizar, ou também editar).
-
-- **RNFG010 - Integridade dos Dados:** Os dados de tickets, ingressos e comandas devem ser protegidos contra manipulação indevida.
-
-
-### 3.4. Confiabilidade
-
-- **RNFG011 - Disponibilidade:** O aplicativo deve estar disponível 99,9% do tempo durante o horário de funcionamento do bar.
-
-- **RNFG012 - Tratamento de Erros:** O sistema deve lidar com erros de forma robusta, exibindo mensagens claras e permitindo a recuperação.
-
-- **RNFG013 - Persistência de Dados:** Todas as informações de comandas, fila e status de pedidos devem ser armazenadas de forma persistente.
-
-
-### 3.5. Manutenibilidade
-
-- **RNFG014 - Código Limpo:** O código-fonte deve ser bem documentado, modular e fácil de entender para futuras manutenções e evoluções.
-
-- **RNFG015 - Atualizações:** O aplicativo deve permitir atualizações e novas funcionalidades de forma eficiente.
-
-
-### 3.6. Compatibilidade
-
-- **RNFG016 - Compatibilidade Mobile:** O aplicativo deve ser compatível com as versões mais recentes dos sistemas operacionais Android e iOS (ou a plataforma escolhida).
-
-- **RNFG017 - Responsividade:** A interface do aplicativo deve se adaptar a diferentes tamanhos de tela de dispositivos móveis.
-
-
-## 4. Regras de Negócio (RN)
-
-As regras de negócio são as políticas e restrições que governam o funcionamento do bar e do aplicativo para garçons.
-
-### 4.1. Tickets e Ingressos
-
-- **RNG001 - Validação Única:** Cada QR Code de ticket ou ingresso só pode ser validado uma única vez.
-
-- **RNG002 - Validação de Prazo:** O sistema deve verificar o prazo de validade do ticket/ingresso antes de permitir a validação.
-
-
-### 4.2. Comandas
-
-- **RNG003 - Associação de Comanda:** Cada comanda deve estar associada a uma mesa ou cliente (se identificado).
-
-- **RNG004 - Fechamento de Comanda:** Uma comanda só pode ser fechada após o pagamento total.
-
-- **RNG005 - Pagamento Parcial:** O sistema deve permitir o registro de pagamentos parciais em uma comanda.
-
-
-### 4.3. Karaokê
-
-- **RNG006 - Ordem da Fila:** A fila do karaokê deve seguir a ordem de adição, a menos que seja explicitamente alterada pelo garçom.
-
-
-## 5. Requisitos de Sistema (RS)
-
-Os requisitos de sistema definem as necessidades de infraestrutura e tecnologia.
-
-### 5.1. Plataformas
-
-- **RSG001 - Desenvolvimento Mobile:** O aplicativo deve ser desenvolvido para dispositivos móveis (Android e/ou iOS).
-
-
-### 5.2. Integrações
-
-- **RSG002 - Integração com BarApp (Cliente):** O GarçomApp deve ser capaz de ler QR Codes gerados pelo BarApp do cliente (tickets, ingressos, comandas).
-
-- **RSG003 - Integração com Sistema de Cozinha:** O GarçomApp deve se comunicar com o sistema da cozinha para visualizar o status dos pedidos.
-
-- **RSG004 - Integração com Sistema de Pagamento:** O GarçomApp deve interagir com o gateway de pagamento para gerar QR Codes de Pix para comandas.
-
-- **RSG005 - Integração com Sistema de Gerenciamento do Bar:** O GarçomApp deve se integrar com o sistema de gerenciamento principal do bar para atualização de cardápio, registro de comandas e gerenciamento de usuários garçons.
\ No newline at end of file
diff --git a/doc/Banco de dados/Classes/Users.md b/doc/Banco de dados/Classes/Users.md
deleted file mode 100644
index 5721757..0000000
--- a/doc/Banco de dados/Classes/Users.md
+++ /dev/null
@@ -1,9 +0,0 @@
-
-| Key | Type | Name | Relacionamento |
-| ------- | ------ | ----------- | -------------- |
-| Primary | Int | Id | |
-| | String | Name | |
-| | String | Description | |
-| | String | Category | |
-| | Bool | Active | |
-| | Bool | Cuisine | |
diff --git a/doc/Banco de dados/Diagrama de relacionamento.canvas b/doc/Banco de dados/Diagrama de relacionamento.canvas
deleted file mode 100644
index d72e164..0000000
--- a/doc/Banco de dados/Diagrama de relacionamento.canvas
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "nodes":[
- {"id":"51b34003d02babfc","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Product.md","x":-1760,"y":-1800,"width":475,"height":340},
- {"id":"cfd2916b5847fd87","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/ProductComanda.md","x":-1760,"y":-1220,"width":475,"height":360},
- {"id":"4d7f06a28a8a7057","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Category.md","x":-2440,"y":-1800,"width":460,"height":340},
- {"id":"374cb381ea448aa0","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Orders.md","x":-2440,"y":-1220,"width":460,"height":360},
- {"id":"8fce51b4dd94dcec","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Payments.md","x":-1040,"y":-1800,"width":520,"height":340},
- {"id":"28728857b04ab577","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/TypePay.md","x":-240,"y":-1800,"width":480,"height":340},
- {"id":"0921648553d53818","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Client.md","x":-240,"y":-1220,"width":480,"height":360},
- {"id":"21e9a170de244d60","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Comanda.md","x":-1040,"y":-1220,"width":520,"height":360},
- {"id":"e91a1fe3b7eb8aae","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Users.md","x":-1040,"y":-640,"width":520,"height":360},
- {"id":"4c481d9434b816c3","type":"file","file":"Projeto_RRBEC/Banco de dados/Tabelas/Mesas.md","x":-240,"y":-640,"width":480,"height":360}
- ],
- "edges":[
- {"id":"a4e5113b603c3e36","fromNode":"21e9a170de244d60","fromSide":"right","toNode":"4c481d9434b816c3","toSide":"left"},
- {"id":"b5c5875d1d735f4f","fromNode":"8fce51b4dd94dcec","fromSide":"bottom","toNode":"21e9a170de244d60","toSide":"top"},
- {"id":"85a77721fe0ea358","fromNode":"8fce51b4dd94dcec","fromSide":"right","toNode":"28728857b04ab577","toSide":"left"},
- {"id":"815b116a7bfc0e10","fromNode":"51b34003d02babfc","fromSide":"left","toNode":"4d7f06a28a8a7057","toSide":"right"},
- {"id":"70432be0f116ce71","fromNode":"cfd2916b5847fd87","fromSide":"right","toNode":"21e9a170de244d60","toSide":"left"},
- {"id":"6ef30263dbfc831e","fromNode":"cfd2916b5847fd87","fromSide":"top","toNode":"51b34003d02babfc","toSide":"bottom"},
- {"id":"0f74530a3a3ed84d","fromNode":"374cb381ea448aa0","fromSide":"right","toNode":"cfd2916b5847fd87","toSide":"left"},
- {"id":"4bc60b99bf9db9e0","fromNode":"21e9a170de244d60","fromSide":"right","toNode":"0921648553d53818","toSide":"left"},
- {"id":"d7656439c4fe066a","fromNode":"8fce51b4dd94dcec","fromSide":"right","toNode":"0921648553d53818","toSide":"left"},
- {"id":"ef9e50c93a92c176","fromNode":"21e9a170de244d60","fromSide":"bottom","toNode":"e91a1fe3b7eb8aae","toSide":"top"}
- ]
-}
\ No newline at end of file
diff --git a/doc/Banco de dados/Modelagem de Banco de Dados.md b/doc/Banco de dados/Modelagem de Banco de Dados.md
deleted file mode 100644
index 5172870..0000000
--- a/doc/Banco de dados/Modelagem de Banco de Dados.md
+++ /dev/null
@@ -1,424 +0,0 @@
-# Modelagem de Banco de Dados para BarApp, GarçomApp e Gestão do Bar
-
-Este documento apresenta a modelagem de banco de dados proposta para suportar as funcionalidades dos aplicativos BarApp (cliente), GarçomApp (interno) e o novo Aplicativo de Gestão do Bar, incluindo as entidades, seus atributos e os relacionamentos entre elas.
-
-## 1. Visão Geral do Modelo
-
-O modelo de dados é projetado para ser relacional, utilizando chaves primárias (PK) e chaves estrangeiras (FK) para estabelecer os relacionamentos. Os tipos de dados são genéricos e devem ser adaptados ao SGBD (Sistema Gerenciador de Banco de Dados) escolhido (e.g., PostgreSQL, MySQL, SQL Server).
-
-## 2. Tabelas e Atributos
-
-### 2.1. `Usuarios` (Clientes do BarApp)
-
-Armazena as informações dos usuários que utilizam o aplicativo cliente.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_usuario`|UUID|PK (Chave Primária)|
-|`nome_completo`|VARCHAR(255)|NOT NULL|
-|`email`|VARCHAR(255)|NOT NULL, UNIQUE|
-|`senha_hash`|VARCHAR(255)|NOT NULL (Armazenar hash da senha)|
-|`id_google`|VARCHAR(255)|NULLABLE, UNIQUE (Para login social)|
-|`data_cadastro`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`ultimo_login`|TIMESTAMP|NULLABLE|
-|`limite_tickets_produto`|INTEGER|DEFAULT 10 (Regra de negócio: limite de tickets por produto)|
-
-### 2.2. `Garcons` (Usuários do GarçomApp)
-
-Armazena as informações dos funcionários do bar que utilizam o aplicativo interno.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_garcom`|UUID|PK|
-|`nome_completo`|VARCHAR(255)|NOT NULL|
-|`usuario`|VARCHAR(50)|NOT NULL, UNIQUE (Nome de usuário para login)|
-|`senha_hash`|VARCHAR(255)|NOT NULL (Armazenar hash da senha)|
-|`data_cadastro`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`ativo`|BOOLEAN|NOT NULL, DEFAULT TRUE|
-
-### 2.3. `Produtos`
-
-Armazena os itens do cardápio do bar.
-
-| Atributo | Tipo de Dado | Restrições/Observações |
-| ---------------- | -------------- | --------------------------------------------------------- |
-| `id_produto` | UUID | PK |
-| `nome` | VARCHAR(255) | NOT NULL |
-| `descricao` | TEXT | NULLABLE |
-| `preco` | DECIMAL(10, 2) | NOT NULL |
-| `custo_unitario` | DECIMAL(10, 2) | NULLABLE (Para cálculo de lucratividade) |
-| `estoque_atual` | INTEGER | NOT NULL, DEFAULT 0 |
-| `estoque_minimo` | INTEGER | DEFAULT 0 (Para alertas de estoque baixo) |
-| `url_imagem` | VARCHAR(255) | NULLABLE |
-| `disponivel` | BOOLEAN | NOT NULL, DEFAULT TRUE (Indica se está no cardápio ativo) |
-| `id_categoria` | UUID | FK para `CategoriasProduto` |
-
-### 2.4. `CategoriasProduto`
-
-Armazena as categorias dos produtos do cardápio.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_categoria`|UUID|PK|
-|`nome_categoria`|VARCHAR(100)|NOT NULL, UNIQUE|
-
-### 2.5. `Tickets`
-
-Armazena os tickets comprados pelos clientes.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_ticket`|UUID|PK|
-|`id_usuario`|UUID|FK para `Usuarios` (Usuário que comprou o ticket)|
-|`id_produto`|UUID|FK para `Produtos`|
-|`data_compra`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`data_validade`|TIMESTAMP|NULLABLE (Prazo de validade do ticket)|
-|`status`|ENUM|NOT NULL ('comprado', 'utilizado', 'transferido')|
-|`data_uso`|TIMESTAMP|NULLABLE (Data e hora em que o ticket foi utilizado)|
-|`id_comanda_origem`|UUID|NULLABLE, FK para `Comandas` (Se o ticket foi gerado de uma comanda paga)|
-
-### 2.6. `HistoricoTickets`
-
-Registra o histórico de eventos de cada ticket (compra, uso, transferência).
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_historico`|UUID|PK|
-|`id_ticket`|UUID|FK para `Tickets`|
-|`tipo_evento`|ENUM|NOT NULL ('compra', 'uso', 'transferencia_enviada', 'transferencia_recebida')|
-|`data_evento`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`id_usuario_origem`|UUID|NULLABLE, FK para `Usuarios` (Usuário que enviou/usou)|
-|`id_usuario_destino`|UUID|NULLABLE, FK para `Usuarios` (Usuário que recebeu)|
-|`observacoes`|TEXT|NULLABLE|
-
-### 2.7. `CestasCompras`
-
-Representa a cesta de compras temporária de um usuário.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_cesta`|UUID|PK|
-|`id_usuario`|UUID|FK para `Usuarios`|
-|`data_criacao`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`status`|ENUM|NOT NULL ('ativa', 'finalizada', 'cancelada')|
-
-### 2.8. `ItensCesta`
-
-Armazena os produtos dentro de uma cesta de compras.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_item_cesta`|UUID|PK|
-|`id_cesta`|UUID|FK para `CestasCompras`|
-|`id_produto`|UUID|FK para `Produtos`|
-|`quantidade`|INTEGER|NOT NULL, > 0|
-|`preco_unitario`|DECIMAL(10, 2)|NOT NULL|
-
-### 2.9. `MetodosPagamento`
-
-Tabela de lookup para os métodos de pagamento aceitos.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_metodo`|INTEGER|PK|
-|`nome_metodo`|VARCHAR(50)|NOT NULL, UNIQUE ('Pix', 'Credito', 'Debito')|
-
-### 2.10. `CartoesCadastrados`
-
-Armazena os tokens de cartões de crédito/débito para pagamentos futuros. **Importante: Nunca armazenar dados sensíveis do cartão diretamente.**
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_cartao`|UUID|PK|
-|`id_usuario`|UUID|FK para `Usuarios`|
-|`ultimos_digitos`|VARCHAR(4)|NULLABLE (Para exibição ao usuário)|
-|`bandeira`|VARCHAR(50)|NULLABLE|
-|`token_pagamento`|VARCHAR(255)|NOT NULL (Token gerado pelo gateway de pagamento)|
-|`data_cadastro`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`ativo`|BOOLEAN|NOT NULL, DEFAULT TRUE|
-
-### 2.11. `Eventos`
-
-Armazena as informações dos eventos do bar.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_evento`|UUID|PK|
-|`nome_evento`|VARCHAR(255)|NOT NULL|
-|`data_evento`|TIMESTAMP|NOT NULL|
-|`descricao`|TEXT|NULLABLE|
-|`preco_ingresso`|DECIMAL(10, 2)|NOT NULL|
-|`url_imagem`|VARCHAR(255)|NULLABLE|
-|`ativo`|BOOLEAN|NOT NULL, DEFAULT TRUE|
-
-### 2.12. `Ingressos`
-
-Armazena os ingressos comprados pelos clientes para eventos.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_ingresso`|UUID|PK|
-|`id_usuario`|UUID|FK para `Usuarios`|
-|`id_evento`|UUID|FK para `Eventos`|
-|`nome_ingresso`|VARCHAR(255)|NULLABLE (Ex: "Ingresso Pista", "Ingresso VIP")|
-|`data_compra`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`data_uso`|TIMESTAMP|NULLABLE (Data e hora em que o ingresso foi validado)|
-|`status`|ENUM|NOT NULL ('comprado', 'utilizado')|
-
-### 2.13. `FilaKaraoke`
-
-Gerencia a fila de pessoas para o karaokê.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_fila_karaoke`|UUID|PK|
-|`nome_cantor`|VARCHAR(255)|NOT NULL|
-|`nome_musica`|VARCHAR(255)|NULLABLE|
-|`posicao`|INTEGER|NOT NULL, UNIQUE (Ordem na fila)|
-|`data_entrada`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`status`|ENUM|NOT NULL ('na_fila', 'cantando', 'cantou')|
-
-### 2.14. `Comandas`
-
-Armazena as comandas de consumo dos clientes.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_comanda`|UUID|PK|
-|`id_garcom`|UUID|FK para `Garcons` (Garçom que abriu a comanda)|
-|`id_usuario_cliente`|UUID|NULLABLE, FK para `Usuarios` (Se o cliente for identificado no app)|
-|`numero_mesa`|VARCHAR(50)|NULLABLE|
-|`nome_cliente`|VARCHAR(255)|NULLABLE (Nome do cliente, se não for usuário do app)|
-|`data_abertura`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`data_fechamento`|TIMESTAMP|NULLABLE|
-|`status`|ENUM|NOT NULL ('aberta', 'aguardando_pagamento', 'paga', 'fechada')|
-|`valor_total`|DECIMAL(10, 2)|NOT NULL, DEFAULT 0.00|
-
-### 2.15. `ItensComanda`
-
-Armazena os produtos adicionados a cada comanda.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_item_comanda`|UUID|PK|
-|`id_comanda`|UUID|FK para `Comandas`|
-|`id_produto`|UUID|FK para `Produtos`|
-|`quantidade`|INTEGER|NOT NULL, > 0|
-|`preco_unitario`|DECIMAL(10, 2)|NOT NULL|
-|`status_cozinha`|ENUM|NOT NULL ('na_fila', 'preparando', 'pronto', 'entregue')|
-|`observacoes`|TEXT|NULLABLE|
-
-### 2.16. `PagamentosComanda`
-
-Registra os pagamentos efetuados para as comandas (total ou parcial).
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_pagamento_comanda`|UUID|PK|
-|`id_comanda`|UUID|FK para `Comandas`|
-|`id_usuario`|UUID|NULLABLE, FK para `Usuarios` (Se pago via BarApp)|
-|`valor_pago`|DECIMAL(10, 2)|NOT NULL|
-|`id_metodo_pagamento`|INTEGER|FK para `MetodosPagamento`|
-|`data_pagamento`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`tipo_pagamento`|ENUM|NOT NULL ('total', 'parcial')|
-|`id_transacao_gateway`|VARCHAR(255)|NULLABLE (ID da transação no gateway de pagamento)|
-
-### 2.17. `Notificacoes`
-
-Armazena as notificações para usuários (clientes ou garçons).
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_notificacao`|UUID|PK|
-|`id_usuario_destino`|UUID|NOT NULL (FK para `Usuarios` ou `Garcons` ou `Funcionarios`)|
-|`tipo_usuario_destino`|ENUM|NOT NULL ('cliente', 'garcom', 'gestao')|
-|`tipo_notificacao`|ENUM|NOT NULL ('pagamento_comanda', 'pedido_pronto', 'transferencia_ticket_recebida', 'estoque_baixo', 'novo_cadastro_cliente', 'novo_evento_criado')|
-|`mensagem`|TEXT|NOT NULL|
-|`data_envio`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`lida`|BOOLEAN|NOT NULL, DEFAULT FALSE|
-|`referencia_id`|UUID|NULLABLE (ID do ticket, comanda, etc. relacionado)|
-
-### 2.18. `Funcionarios` (Usuários do Aplicativo de Gestão)
-
-Armazena informações de todos os funcionários, incluindo aqueles que usam o GarçomApp e os administrativos.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_funcionario`|UUID|PK|
-|`nome_completo`|VARCHAR(255)|NOT NULL|
-|`cpf`|VARCHAR(14)|NOT NULL, UNIQUE|
-|`data_contratacao`|DATE|NOT NULL|
-|`salario_base`|DECIMAL(10, 2)|NOT NULL|
-|`cargo`|VARCHAR(100)|NOT NULL|
-|`dados_bancarios`|TEXT|NULLABLE (Informações para pagamento, criptografadas)|
-|`usuario_sistema`|VARCHAR(50)|NULLABLE, UNIQUE (Para login no app de gestão)|
-|`senha_hash_sistema`|VARCHAR(255)|NULLABLE (Hash da senha para login no app de gestão)|
-|`ativo`|BOOLEAN|NOT NULL, DEFAULT TRUE|
-|`id_garcom_associado`|UUID|NULLABLE, FK para `Garcons` (Se for também um garçom)|
-
-### 2.19. `PagamentosSalario`
-
-Registra os pagamentos de salário efetuados aos funcionários.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_pagamento`|UUID|PK|
-|`id_funcionario`|UUID|FK para `Funcionarios`|
-|`valor_bruto`|DECIMAL(10, 2)|NOT NULL|
-|`descontos`|DECIMAL(10, 2)|NOT NULL, DEFAULT 0.00|
-|`valor_liquido`|DECIMAL(10, 2)|NOT NULL|
-|`data_pagamento`|DATE|NOT NULL|
-|`periodo_referencia`|VARCHAR(20)|NOT NULL (Ex: "2025-05")|
-|`holerite_url`|VARCHAR(255)|NULLABLE (URL para PDF do holerite, se gerado)|
-
-### 2.20. `Fornecedores`
-
-Armazena informações dos fornecedores de mercadorias.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_fornecedor`|UUID|PK|
-|`nome_fantasia`|VARCHAR(255)|NOT NULL|
-|`razao_social`|VARCHAR(255)|NULLABLE|
-|`cnpj`|VARCHAR(18)|NULLABLE, UNIQUE|
-|`contato`|VARCHAR(255)|NULLABLE (Telefone, E-mail)|
-|`endereco`|TEXT|NULLABLE|
-
-### 2.21. `EntradasMercadoria`
-
-Registra as entradas de mercadorias no estoque.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_entrada`|UUID|PK|
-|`id_fornecedor`|UUID|FK para `Fornecedores`|
-|`data_entrada`|TIMESTAMP|NOT NULL, DEFAULT CURRENT_TIMESTAMP|
-|`numero_nota_fiscal`|VARCHAR(100)|NULLABLE|
-|`valor_total`|DECIMAL(10, 2)|NOT NULL|
-|`observacoes`|TEXT|NULLABLE|
-|`id_funcionario_responsavel`|UUID|FK para `Funcionarios` (Quem registrou a entrada)|
-
-### 2.22. `ItensEntradaMercadoria`
-
-Detalha os itens de cada entrada de mercadoria.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_item_entrada`|UUID|PK|
-|`id_entrada`|UUID|FK para `EntradasMercadoria`|
-|`id_produto`|UUID|FK para `Produtos`|
-|`quantidade`|INTEGER|NOT NULL, > 0|
-|`custo_unitario_compra`|DECIMAL(10, 2)|NOT NULL (Custo na data da compra)|
-
-### 2.23. `Permissoes`
-
-Define os tipos de permissão para os usuários do aplicativo de gestão.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_permissao`|UUID|PK|
-|`nome_permissao`|VARCHAR(100)|NOT NULL, UNIQUE (Ex: 'gerenciar_produtos', 'ver_dashboard_vendas')|
-|`descricao`|TEXT|NULLABLE|
-
-### 2.24. `FuncionarioPermissoes`
-
-Tabela de ligação para atribuir permissões a funcionários.
-
-|Atributo|Tipo de Dado|Restrições/Observações|
-|---|---|---|
-|`id_funcionario_permissao`|UUID|PK|
-|`id_funcionario`|UUID|FK para `Funcionarios`|
-|`id_permissao`|UUID|FK para `Permissoes`|
-
-## 3. Relacionamentos
-
-Abaixo estão os principais relacionamentos entre as tabelas, incluindo as novas adições:
-
-- **`Usuarios`**
-
- - `Usuarios.id_usuario` 1:N `Tickets.id_usuario`
-
- - `Usuarios.id_usuario` 1:N `CartoesCadastrados.id_usuario`
-
- - `Usuarios.id_usuario` 1:N `Ingressos.id_usuario`
-
- - `Usuarios.id_usuario` 1:N `HistoricoTickets.id_usuario_origem`
-
- - `Usuarios.id_usuario` 1:N `HistoricoTickets.id_usuario_destino`
-
- - `Usuarios.id_usuario` 1:N `CestasCompras.id_usuario`
-
- - `Usuarios.id_usuario` 1:N `Comandas.id_usuario_cliente` (Opcional)
-
- - `Usuarios.id_usuario` 1:N `PagamentosComanda.id_usuario` (Opcional)
-
- - `Usuarios.id_usuario` 1:N `Notificacoes.id_usuario_destino` (quando `tipo_usuario_destino` é 'cliente')
-
-- **`Garcons`**
-
- - `Garcons.id_garcom` 1:N `Comandas.id_garcom`
-
- - `Garcons.id_garcom` 1:N `Notificacoes.id_usuario_destino` (quando `tipo_usuario_destino` é 'garcom')
-
- - `Garcons.id_garcom` 1:1 `Funcionarios.id_garcom_associado` (Opcional, se um garçom também for um funcionário de gestão)
-
-- **`Produtos`**
-
- - `Produtos.id_produto` 1:N `Tickets.id_produto`
-
- - `Produtos.id_produto` 1:N `ItensCesta.id_produto`
-
- - `Produtos.id_produto` 1:N `ItensComanda.id_produto`
-
- - `Produtos.id_produto` 1:N `ItensEntradaMercadoria.id_produto`
-
- - `Produtos.id_categoria` N:1 `CategoriasProduto.id_categoria`
-
-- **`Tickets`**
-
- - `Tickets.id_ticket` 1:N `HistoricoTickets.id_ticket`
-
-- **`CestasCompras`**
-
- - `CestasCompras.id_cesta` 1:N `ItensCesta.id_cesta`
-
-- **`Eventos`**
-
- - `Eventos.id_evento` 1:N `Ingressos.id_evento`
-
-- **`Comandas`**
-
- - `Comandas.id_comanda` 1:N `ItensComanda.id_comanda`
-
- - `Comandas.id_comanda` 1:N `PagamentosComanda.id_comanda`
-
- - `Comandas.id_comanda` 1:N `Tickets.id_comanda_origem` (Opcional)
-
-- **`MetodosPagamento`**
-
- - `MetodosPagamento.id_metodo` 1:N `PagamentosComanda.id_metodo_pagamento`
-
-- **`Funcionarios`**
-
- - `Funcionarios.id_funcionario` 1:N `PagamentosSalario.id_funcionario`
-
- - `Funcionarios.id_funcionario` 1:N `EntradasMercadoria.id_funcionario_responsavel`
-
- - `Funcionarios.id_funcionario` 1:N `FuncionarioPermissoes.id_funcionario`
-
- - `Funcionarios.id_funcionario` 1:N `Notificacoes.id_usuario_destino` (quando `tipo_usuario_destino` é 'gestao')
-
-- **`Fornecedores`**
-
- - `Fornecedores.id_fornecedor` 1:N `EntradasMercadoria.id_fornecedor`
-
-- **`EntradasMercadoria`**
-
- - `EntradasMercadoria.id_entrada` 1:N `ItensEntradaMercadoria.id_entrada`
-
-- **`Permissoes`**
-
- - `Permissoes.id_permissao` 1:N `FuncionarioPermissoes.id_permissao`
-
-
-Esta modelagem expandida fornece uma base robusta para o desenvolvimento de todos os três aplicativos, garantindo a integridade, a organização e a escalabilidade dos dados para as operações do bar.
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Category.md b/doc/Banco de dados/Tabelas/Category.md
deleted file mode 100644
index 26387b5..0000000
--- a/doc/Banco de dados/Tabelas/Category.md
+++ /dev/null
@@ -1,16 +0,0 @@
-| Atributo | Tipo | Modificadores |
-| -------- | --------- | ---------------- |
-| id | AutoField | primary_key=True |
-| name | CharField | max_length=255 |
-
-
-**Modelo: `Category`**
-
-Este modelo representa uma categoria de produto. Cada categoria possui os seguintes atributos:
-
-* `id`: Um identificador único para cada categoria (chave primária). Este campo é preenchido automaticamente.
-* `name`: O nome da categoria (texto curto, máximo de 255 caracteres).
-
-**Relacionamento:**
-
-Os modelos `Product` e `Category` estão relacionados por meio de uma chave estrangeira. Cada produto pertence a uma categoria, e uma categoria pode ter vários produtos associados a ela.
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Client.md b/doc/Banco de dados/Tabelas/Client.md
deleted file mode 100644
index 88e08ca..0000000
--- a/doc/Banco de dados/Tabelas/Client.md
+++ /dev/null
@@ -1,19 +0,0 @@
-
-| Atributo | Tipo | Modificadores |
-| ---------- | ------------- | ------------------------------------- |
-| id | AutoField | primary_key=True |
-| name | CharField | max_length=255 |
-| debt | DecimalField | max_digits=10, decimal_places=2 |
-| created_at | DateTimeField | auto_now_add=True |
-| active | BooleanField | default=True |
-| contact | CharField | max_length=255, null=True, blank=True |
-
-
-A classe [[Client]] define um modelo de dados para representar um cliente no sistema. Ela contém os seguintes atributos:
-
-* **id**: Um campo AutoField que serve como chave primária, identificando unicamente cada cliente. O Django gerencia esse campo automaticamente.
-* **name**: Um campo CharField que armazena o nome do cliente, com um limite máximo de 255 caracteres.
-* **debt**: Um campo DecimalField que representa o débito do cliente. Ele permite armazenar números decimais com precisão de até 10 dígitos, com 2 casas decimais.
-* **created\_at**: Um campo DateTimeField que registra a data e hora de criação do cliente. O valor é definido automaticamente quando o cliente é criado (auto\_now\_add=True).
-* **active**: Um campo BooleanField que indica se o cliente está ativo ou não. Por padrão, o valor é True.
-* **contact**: Um campo CharField para armazenar informações de contato do cliente, como telefone ou e-mail. Pode ser nulo (null=True) e em branco (blank=True) no banco de dados.
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Comanda.md b/doc/Banco de dados/Tabelas/Comanda.md
deleted file mode 100644
index cfd5c87..0000000
--- a/doc/Banco de dados/Tabelas/Comanda.md
+++ /dev/null
@@ -1,27 +0,0 @@
-
-| Atributo | Tipo | Modificadores |
-| -------- | ------------- | ------------------------------------------------------------- |
-| id | AutoField | primary_key=True |
-| mesa | ForeignKey | on_delete=models.CASCADE ([[Mesas]]) |
-| user | ForeignKey | on_delete=models.CASCADE ([[Projeto_RRBEC/Banco de dados/Tabelas/Users]]), null=False, blank=True |
-| type_pay | ForeignKey | on_delete=models.SET_NULL (TypePay), null=True |
-| dt_open | DateTimeField | auto_now_add=True |
-| dt_close | DateTimeField | null=True, blank=True |
-| client | ForeignKey | on_delete=models.SET_NULL ([[Client]]), null=True, blank=True |
-| name | CharField | max_length=255 |
-| status | CharField | max_length=255, default="OPEN" |
-
-
-A classe [[Comanda]] representa um pedido ou conta em um restaurante. Ela contém informações sobre a mesa em que o pedido foi feito, o usuário (garçom) responsável, a forma de pagamento, horários de abertura e fechamento, o cliente associado (se houver), um nome para a comanda e seu status.
-
-**Atributos:**
-
-* `id`: Identificador único da comanda (chave primária).
-* `mesa`: Mesa à qual a comanda está associada (chave estrangeira para a classe [[Mesas]]). Se a mesa for excluída, a comanda também será excluída (on\_delete=models.CASCADE).
-* `user`: Usuário (garçom) que abriu a comanda (chave estrangeira para a classe [[Projeto_RRBEC/Banco de dados/Tabelas/Users]]). Se o usuário for excluído, a comanda também será excluída (on\_delete=models.CASCADE). Pode ser nulo e em branco.
-* `type_pay`: Forma de pagamento utilizada na comanda (chave estrangeira para a classe TypePay ). Se a forma de pagamento for excluída, o campo `type_pay` da comanda será definido como `NULL` (on_delete=models.SET_NULL).
-* `dt_open`: Data e hora em que a comanda foi aberta. O valor é definido automaticamente ao criar a comanda (auto\_now\_add=True).
-* `dt_close`: Data e hora em que a comanda foi fechada. Pode ser nulo e em branco.
-* `client`: Cliente associado à comanda (chave estrangeira para a classe [[Client]]). Se o cliente for excluído, o campo `client` da comanda será definido como `NULL` (on\_delete=models.SET\_NULL). Pode ser nulo e em branco.
-* `name`: Nome da comanda (por exemplo, "Comanda da Mesa 5").
-* `status`: Status da comanda (por exemplo, "ABERTA", "FECHADA"). O valor padrão é "OPEN".
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Mesas.md b/doc/Banco de dados/Tabelas/Mesas.md
deleted file mode 100644
index b14cfc4..0000000
--- a/doc/Banco de dados/Tabelas/Mesas.md
+++ /dev/null
@@ -1,14 +0,0 @@
-| Atributo | Tipo | Modificadores |
-| -------- | ------------ | ------------------------------------- |
-| id | AutoField | primary_key=True |
-| name | CharField | max_length=100 |
-| location | CharField | max_length=255, null=True, blank=True |
-| active | BooleanField | default=False |
-
-
-A classe [[Mesas]] representa uma mesa dentro do sistema. Cada mesa possui os seguintes atributos:
-
-* `id`: Um identificador único para cada mesa, gerado automaticamente. Este campo é a chave primária da tabela.
-* `name`: O nome da mesa. Este campo é do tipo texto, com um limite de 100 caracteres.
-* `location`: A localização da mesa. Este campo é do tipo texto, com um limite de 255 caracteres. Pode ser nulo ou vazio.
-* `active`: Um indicador booleano que indica se a mesa está ativa ou não. Por padrão, é definido como `False`.
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Orders.md b/doc/Banco de dados/Tabelas/Orders.md
deleted file mode 100644
index 0dfc096..0000000
--- a/doc/Banco de dados/Tabelas/Orders.md
+++ /dev/null
@@ -1,40 +0,0 @@
-| Atributo | Tipo | Modificadores |
-| -------------- | ------------- | --------------------------------------------------------- |
-| id | AutoField | primary_key=True |
-| productComanda | ForeignKey | on_delete=models.SET_NULL ([[ProductComanda]]), null=True |
-| id_product | ForeignKey | on_delete=models.CASCADE ([[Product]]) |
-| id_comanda | ForeignKey | on_delete=models.CASCADE ([[Comanda]]) |
-| obs | TextField | blank=True, null=True |
-| queue | DateTimeField | auto_now_add=True |
-| preparing | DateTimeField | null=True, blank=True |
-| finished | DateTimeField | null=True, blank=True |
-| delivered | DateTimeField | null=True, blank=True |
-| canceled | DateTimeField | null=True, blank=True |
-
-**Modelo: `Orders`**
-
-A classe apresentada no arquivo [[Orders]] representa um modelo para rastrear o status de um pedido ao longo do tempo.
-
-**Atributos:**
-
-* `id`: Um identificador único para cada atualização de status do pedido (chave primária).
-* `productComanda`: Uma chave estrangeira que referencia o modelo [[ProductComanda]]. Se o `ProductComanda` for excluído, este campo será definido como `NULL`.
-* `id_product`: Uma chave estrangeira que referencia o modelo [[Product]]. Se o produto for excluído, o `ProductComanda` e, portanto, este pedido serão excluídos.
-* `id_comanda`: Uma chave estrangeira que referencia o modelo [[Comanda]]. Se a comanda for excluída, este pedido será excluído.
-* `obs`: Campo de texto para observações sobre o pedido.
-* `queue`: Data e hora em que o pedido foi colocado na fila.
-* `preparing`: Data e hora em que o pedido começou a ser preparado.
-* `finished`: Data e hora em que o pedido foi finalizado.
-* `delivered`: Data e hora em que o pedido foi entregue.
-* `canceled`: Data e hora se o pedido for cancelado. Campo pode ser nulo
-
-**Relacionamentos:**
-
-* `Orders` possui um relacionamento ForeignKey com [[ProductComanda]].
-* `Orders` possui um relacionamento ForeignKey com [[Product]].
-* `Orders` possui um relacionamento ForeignKey com [[Comanda]].
-
-**Uso:**
-
-Este modelo permite rastrear o progresso de um pedido desde o momento em que é colocado na fila até a entrega ou cancelamento. Ele fornece informações valiosas para análise de tempo de preparo, gargalos no processo e eficiência da equipe.
-
diff --git a/doc/Banco de dados/Tabelas/Payments.md b/doc/Banco de dados/Tabelas/Payments.md
deleted file mode 100644
index 271dd21..0000000
--- a/doc/Banco de dados/Tabelas/Payments.md
+++ /dev/null
@@ -1,22 +0,0 @@
-| Atributo | Tipo | Modificadores |
-| ----------- | ------------- | ------------------------------------------------ |
-| id | AutoField | primary_key=True |
-| value | DecimalField | max_digits=10, decimal_places=2 |
-| type_pay | ForeignKey | on_delete=models.PROTECT ([[TypePay]]) |
-| comanda | ForeignKey | on_delete=models.PROTECT ([[Comanda]]) |
-| client | ForeignKey | null=True, on_delete=models.PROTECT ([[Client]]) |
-| description | CharField | max_length=255 |
-| datetime | DateTimeField | auto_now_add=True |
-
-
-A classe `Payments` é um modelo Django que representa os pagamentos realizados no sistema.
-
-**Atributos:**
-
-* `id`: Campo de identificação único para cada pagamento. É um `AutoField`, o que significa que é um campo que se incrementa automaticamente, definido como chave primária (`primary_key=True`).
-* `value`: Campo que armazena o valor do pagamento. É um `DecimalField` com um máximo de 10 dígitos, sendo 2 casas decimais (`max_digits=10, decimal_places=2`).
-* `type_pay`: Campo que armazena o tipo de pagamento. É um `ForeignKey` que se relaciona com o modelo [[TypePay]]. Quando um tipo de pagamento é excluído, o campo `type_pay` é protegido, impedindo a exclusão do tipo de pagamento se houver pagamentos associados a ele (`on_delete=models.PROTECT (TypePay)`).
-* `comanda`: Campo que armazena a comanda relacionada ao pagamento. É um `ForeignKey` que se relaciona com o modelo [[Comanda]]. Quando uma comanda é excluída, o campo `comanda` é protegido, impedindo a exclusão da comanda se houver pagamentos associados a ela (`on_delete=models.PROTECT (Comanda)`).
-* `client`: Campo que armazena o cliente relacionado ao pagamento. É um `ForeignKey` que se relaciona com o modelo [[Client]]. Pode ser nulo e, quando um cliente é excluído, o campo `client` é protegido, definindo o campo como `NULL` (`null=True, on_delete=models.PROTECT (Client)`).
-* `description`: Campo que armazena uma descrição do pagamento. É um `CharField` com um comprimento máximo de 255 caracteres (`max_length=255`).
-* `datetime`: Campo que armazena a data e hora em que o pagamento foi realizado. O valor é definido automaticamente ao criar o pagamento (`auto_now_add=True`).
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Product.md b/doc/Banco de dados/Tabelas/Product.md
deleted file mode 100644
index 1f4024a..0000000
--- a/doc/Banco de dados/Tabelas/Product.md
+++ /dev/null
@@ -1,55 +0,0 @@
-
-| Atributo | Tipo de Dado | Restrições/Observações |
-| ---------------- | -------------- | --------------------------------------------------------- |
-| `id_produto` | UUID | PK |
-| `nome` | VARCHAR(255) | NOT NULL |
-| `descricao` | TEXT | NULLABLE |
-| `preco` | DECIMAL(10, 2) | NOT NULL |
-| `custo_unitario` | DECIMAL(10, 2) | NULLABLE (Para cálculo de lucratividade) |
-| `estoque_atual` | INTEGER | NOT NULL, DEFAULT 0 |
-| `estoque_minimo` | INTEGER | DEFAULT 0 (Para alertas de estoque baixo) |
-| `url_imagem` | VARCHAR(255) | NULLABLE |
-| `disponivel` | BOOLEAN | NOT NULL, DEFAULT TRUE (Indica se está no cardápio ativo) |
-| `id_categoria` | UUID | FK para `CategoriasProduto` |
-
-| Atributo | Tipo | Modificadores |
-| ----------- | ------------ | --------------------------------------- |
-| id | AutoField | primary_key=True |
-| name | CharField | max_length=100 |
-| description | TextField | null=True, blank=True |
-| image | ImageField | null=True, blank=True |
-| price | DecimalField | max_digits=10, decimal_places=2 |
-| quantity | IntegerField | null=False, default=0 |
-| category | ForeignKey | on_delete=models.CASCADE ([[Category]]) |
-| cuisine | BooleanField | default=False |
-| active | BooleanField | default=True |
-
-
-**Modelo: `Product`**
-
-Este modelo representa um produto no sistema. Cada produto possui os seguintes atributos:
-
-* `id`: Um identificador único para cada produto (chave primária). Este campo é preenchido automaticamente.
-* `name`: O nome do produto (texto curto, máximo de 100 caracteres).
-* `description`: Uma descrição detalhada do produto (texto longo). Pode ser deixada em branco.
-* `image`: Uma imagem associada ao produto. Pode ser deixada em branco.
-* `price`: O preço do produto (valor decimal com um total de 10 dígitos, incluindo 2 casas decimais).
-* `quantity`: A quantidade disponível em estoque (número inteiro). Por padrão, é 0.
-* `category`: A categoria à qual o produto pertence. É uma chave estrangeira que se relaciona ao modelo [[Category]]. Se uma categoria for excluída, todos os produtos associados a essa categoria também serão excluídos (`on_delete=models.CASCADE`).
-* `cuisine`: Um campo booleano que indica se o produto é preparado na cozinha. O valor padrão é `False`.
-* `active`: Um campo booleano que indica se o produto está ativo e disponível para venda. O valor padrão é `True`.
-
-**Modelo: `Category`**
-
-Este modelo representa uma categoria de produto. Cada categoria possui os seguintes atributos:
-
-* `id`: Um identificador único para cada categoria (chave primária). Este campo é preenchido automaticamente.
-* `name`: O nome da categoria (texto curto, máximo de 255 caracteres).
-
-**Relacionamento:**
-
-Os modelos `Product` e `Category` estão relacionados por meio de uma chave estrangeira. Cada produto pertence a uma categoria, e uma categoria pode ter vários produtos associados a ela.
-
-**Uso:**
-
-Esses modelos são usados para definir a estrutura do banco de dados e facilitar a criação, leitura, atualização e exclusão (CRUD) de produtos e categorias no sistema. Eles são componentes essenciais para gerenciar o catálogo de produtos.
diff --git a/doc/Banco de dados/Tabelas/ProductComanda.md b/doc/Banco de dados/Tabelas/ProductComanda.md
deleted file mode 100644
index 1813698..0000000
--- a/doc/Banco de dados/Tabelas/ProductComanda.md
+++ /dev/null
@@ -1,31 +0,0 @@
-
-| Atributo | Tipo | Modificadores |
-| --------- | ------------- | -------------------------------------- |
-| id | AutoField | primary_key=True |
-| comanda | ForeignKey | on_delete=models.CASCADE ([[Comanda]]) |
-| data_time | DateTimeField | auto_now_add=True |
-| product | ForeignKey | on_delete=models.PROTECT ([[Product]]) |
-| applicant | CharField | max_length=255, null=True, blank=True |
-
-
-
-**Modelo: `ProductComanda`**
-
-Este modelo representa um item individual dentro de um pedido (comanda). Ele atua como uma tabela de junção entre os modelos `Product` e `Comanda`, permitindo que uma comanda contenha múltiplos produtos e que um produto possa aparecer em múltiplas comandas.
-
-**Atributos:**
-
-* `id`: Um identificador único para cada entrada de produto em um pedido (chave primária). Este campo é preenchido automaticamente.
-* `comanda`: Uma chave estrangeira que referencia o modelo [[Comanda]]. Define a qual comanda este produto está associado. Se a comanda relacionada for excluída, todos os `ProductComanda` associados a ela também serão excluídos (`on_delete=models.CASCADE`).
-* `data_time`: A data e hora em que o produto foi adicionado à comanda. Este campo é preenchido automaticamente no momento da criação (`auto_now_add=True`).
-* `product`: Uma chave estrangeira que referencia o modelo [[Product]]. Define qual produto está sendo incluído na comanda. Se o produto relacionado for excluído, o `ProductComanda` permanecerá, mas o produto será protegido contra exclusão (`on_delete=models.PROTECT`).
-* `applicant`: Um campo de texto (CharField) que armazena o nome de quem solicitou o produto. Pode ser nulo ou em branco.
-
-**Relacionamentos:**
-
-* `ProductComanda` possui um relacionamento ForeignKey com [[Comanda]] (uma comanda pode ter vários produtos).
-* `ProductComanda` possui um relacionamento ForeignKey com [[Product]] (um produto pode estar em vários pedidos).
-
-**Uso:**
-
-Este modelo é crucial para rastrear quais produtos foram incluídos em cada pedido, bem como quando cada produto foi adicionado. Ele permite gerar relatórios de vendas por produto, analisar quais produtos são mais populares em determinados horários e gerenciar o estoque de forma eficiente. Através do campo `applicant` é possível saber quem solicitou o produto dentro da comanda.
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/TypePay.md b/doc/Banco de dados/Tabelas/TypePay.md
deleted file mode 100644
index 3d7ad3c..0000000
--- a/doc/Banco de dados/Tabelas/TypePay.md
+++ /dev/null
@@ -1,10 +0,0 @@
-| Atributo | Tipo | Modificadores |
-| -------- | --------- | ---------------- |
-| id | AutoField | primary_key=True |
-| name | CharField | max_length=255 |
-
-
-A classe [[TypePay]] (TipoPagamento) é um modelo Django que representa as formas de pagamento aceitas no sistema.
-
-* **`id`**: Campo de identificação único para cada forma de pagamento. É um `AutoField`, o que significa que é um campo que se incrementa automaticamente, definido como chave primária (`primary_key=True`).
-* **`name`**: Campo que armazena o nome da forma de pagamento (ex: "Cartão de Crédito", "Boleto Bancário", "Pix"). É um `CharField` com um comprimento máximo de 255 caracteres (`max_length=255`).
\ No newline at end of file
diff --git a/doc/Banco de dados/Tabelas/Users.md b/doc/Banco de dados/Tabelas/Users.md
deleted file mode 100644
index 5721757..0000000
--- a/doc/Banco de dados/Tabelas/Users.md
+++ /dev/null
@@ -1,9 +0,0 @@
-
-| Key | Type | Name | Relacionamento |
-| ------- | ------ | ----------- | -------------- |
-| Primary | Int | Id | |
-| | String | Name | |
-| | String | Description | |
-| | String | Category | |
-| | Bool | Active | |
-| | Bool | Cuisine | |
diff --git a/doc/Infraestrutura/Infra.canvas b/doc/Infraestrutura/Infra.canvas
deleted file mode 100644
index b4266b1..0000000
--- a/doc/Infraestrutura/Infra.canvas
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "nodes":[
- {"id":"f070a6042894264f","type":"group","x":-420,"y":440,"width":1560,"height":600,"label":"Rede Local"},
- {"id":"2e478a5617ee1373","type":"group","x":-200,"y":-400,"width":740,"height":547,"label":"VPS"},
- {"id":"b361d7f4e687df1a","type":"group","x":330,"y":507,"width":670,"height":493,"label":"SERVER"},
- {"id":"59d24657234b7fe1","type":"group","x":-280,"y":-1080,"width":400,"height":400,"label":"Gatway de Pagamento"},
- {"id":"180e2c68c69d47d0","type":"group","x":340,"y":-1080,"width":400,"height":400,"label":"Google Drive"},
- {"id":"6e48d897c550bf39","type":"group","x":-300,"y":600,"width":305,"height":360,"label":"Dispositivo"},
- {"id":"a1a5aa8846094293","type":"text","text":"NginX","x":-140,"y":40,"width":640,"height":60},
- {"id":"4f8a9cfb945675c2","type":"text","text":"Backend","x":-140,"y":-210,"width":140,"height":100},
- {"id":"0dfaf61f472cda82","type":"text","text":"App de backup db","x":170,"y":-360,"width":160,"height":110},
- {"id":"78ca5bf8073a03e1","type":"text","text":"TicketBar - App Cliente","x":-820,"y":-190,"width":250,"height":60},
- {"id":"2a2df4345147f6b7","type":"text","text":"NginX","x":360,"y":540,"width":50,"height":420},
- {"id":"7cb7b6de3ef0025d","type":"text","text":"App de sync","x":758,"y":600,"width":195,"height":100},
- {"id":"b384f36edca5d401","type":"text","text":"TicketBar - App Interno","x":-265,"y":650,"width":250,"height":60},
- {"id":"2aaa0b16e4b1fbae","type":"text","text":"RRBEC - Web Page","x":-265,"y":740,"width":250,"height":60},
- {"id":"4c2ba60d1183adb8","type":"text","text":"Backend","x":500,"y":800,"width":140,"height":100},
- {"id":"68713d8d97d055d4","type":"text","text":"Data Base","x":800,"y":810,"width":110,"height":80},
- {"id":"99ad714c3dc84a33","type":"text","text":"Data Base\n![[Diagrama de relacionamento.canvas|Diagrama de classes]]","x":220,"y":-190,"width":280,"height":190}
- ],
- "edges":[
- {"id":"d2ea1046b7e6d5b3","fromNode":"78ca5bf8073a03e1","fromSide":"right","toNode":"a1a5aa8846094293","toSide":"left"},
- {"id":"9e9b93717d1234ab","fromNode":"4f8a9cfb945675c2","fromSide":"right","toNode":"99ad714c3dc84a33","toSide":"left"},
- {"id":"852a3f782350a6fe","fromNode":"0dfaf61f472cda82","fromSide":"bottom","toNode":"99ad714c3dc84a33","toSide":"top"},
- {"id":"42b3f76de8c037a4","fromNode":"6e48d897c550bf39","fromSide":"top","toNode":"a1a5aa8846094293","toSide":"bottom"},
- {"id":"fba8dc99a3ca9ffc","fromNode":"4c2ba60d1183adb8","fromSide":"right","toNode":"68713d8d97d055d4","toSide":"left"},
- {"id":"8cad9ad9422360a8","fromNode":"68713d8d97d055d4","fromSide":"top","toNode":"7cb7b6de3ef0025d","toSide":"bottom"},
- {"id":"743d5cdcb29a1971","fromNode":"7cb7b6de3ef0025d","fromSide":"top","toNode":"99ad714c3dc84a33","toSide":"right"},
- {"id":"b8e6c407baa7497a","fromNode":"6e48d897c550bf39","fromSide":"right","toNode":"2a2df4345147f6b7","toSide":"left"},
- {"id":"50e185355d6da817","fromNode":"2a2df4345147f6b7","fromSide":"right","toNode":"4c2ba60d1183adb8","toSide":"left"},
- {"id":"634bd04bb885c07d","fromNode":"a1a5aa8846094293","fromSide":"top","toNode":"4f8a9cfb945675c2","toSide":"bottom"},
- {"id":"128e592181b4c28c","fromNode":"4f8a9cfb945675c2","fromSide":"top","toNode":"59d24657234b7fe1","toSide":"bottom"},
- {"id":"13567ba7893ad3c6","fromNode":"0dfaf61f472cda82","fromSide":"top","toNode":"180e2c68c69d47d0","toSide":"bottom"}
- ]
-}
\ No newline at end of file
diff --git a/doc/Visão Geral do Projeto.md b/doc/Visão Geral do Projeto.md
deleted file mode 100644
index e806cc2..0000000
--- a/doc/Visão Geral do Projeto.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# Resumo Geral do Projeto Bar Digital
-
-Este documento serve como um resumo consolidado de todo o projeto de digitalização e gestão do bar, abrangendo os três aplicativos principais e a modelagem de banco de dados que os interliga. O objetivo é fornecer uma visão de alto nível das soluções propostas e facilitar a navegação pelos documentos detalhados.
-
-## 1. Visão Geral do Projeto
-
-O projeto "Bar Digital" visa transformar a experiência de clientes e a eficiência operacional de um bar através de um ecossistema de três aplicativos integrados:
-
-1. **BarApp ([[App Cliente - Visão Geral|Aplicativo Cliente]]):** Destinado aos clientes finais, focado em autoatendimento e facilidade de consumo.
-
-2. **GarçomApp ([[App Interno - Visão Geral|Aplicativo Interno]]):** Ferramenta para os garçons, otimizando o atendimento e a gestão de mesas.
-
-3. **Aplicativo de Gestão do Bar (Web):** Plataforma central para administradores e gerentes, abrangendo todas as operações do negócio.
-
-
-A integração entre esses aplicativos é fundamental, permitindo um fluxo de informações contínuo e uma gestão unificada.
-
-## 2. Componentes do Ecossistema
-
-### 2.1. BarApp ([[App Cliente - Visão Geral|Aplicativo Cliente]])
-
-### 2.2. GarçomApp ([[App Interno - Visão Geral|Aplicativo Interno]])
-
-### 2.3. Aplicativo de Gestão do Bar ([[App Gestão - Visão Geral|Aplicativo de Gestão do Bar]])
-
-
-
-## 3. Modelagem de Banco de Dados
-
-A base de dados unificada é o coração do sistema, garantindo a consistência e a integridade dos dados entre os três aplicativos. Ela inclui tabelas para usuários, produtos, tickets, eventos, comandas, funcionários, estoque e muito mais, com relacionamentos bem definidos para suportar todas as funcionalidades.
-
-**Documento Detalhado:**
-
-- [[Modelagem de Banco de Dados]]
-- [Modelagem de Banco de Dados](https://raw.githubusercontent.com/welton89/RRBEC/refs/heads/master/doc/Banco%20de%20dados/Modelagem%20de%20Banco%20de%20Dados.md)
-
-
-
-
-## 4. Conclusão
-
-Este conjunto de documentos fornece uma visão abrangente e detalhada do projeto "Bar Digital", desde a perspectiva do usuário final até a gestão interna e a estrutura de dados. Eles servirão como guia essencial para as fases de desenvolvimento, teste e implantação dos aplicativos, garantindo que todas as necessidades e expectativas sejam atendidas.
diff --git a/docker-compose.yml b/docker-compose.yml
deleted file mode 100644
index df29ff3..0000000
--- a/docker-compose.yml
+++ /dev/null
@@ -1,92 +0,0 @@
-
-services:
- db:
- image: postgres:15
- environment:
- POSTGRES_DB: "${DB_NAME}"
- POSTGRES_USER: "${DB_USER}"
- POSTGRES_PASSWORD: "${DB_PASSWORD}"
- volumes:
- - db_data:/var/lib/postgresql/data/
- ports:
- - "5432:5432"
- networks:
- - app_network
-
- duplicati:
- image: duplicati/duplicati:2.1.0.119
-
- ports:
- - "8200:8200"
-
- environment:
- - DUPLICATI__WEBSERVICE_PASSWORD:"${DUPLICATI_PASSWORD}"
-
-
- volumes:
- - ./duplicati_config:/config
- - ./duplicati_backups:/backups
- - db_data:/source_postgres_data
-
-
- django_app:
- build:
- context: ./
- dockerfile: Dockerfile
- ports:
- - "8000:8000"
- depends_on:
- - db
-
- healthcheck:
- test: ["CMD", "curl", "-f", "http://0.0.0.0:8000/"]
- interval: 5m
- timeout: 3s
- retries: 3
- restart: on-failure
-
- volumes:
- - static_volume:/app/gestaoRaul/static
- environment:
- DB_ENGINE: "${DB_ENGINE}"
- DB_HOST: "${DB_HOST}"
- DB_PORT: "${DB_PORT}"
- DB_NAME: "${DB_NAME}"
- DB_USER: "${DB_USER}"
- DB_PASSWORD: "${DB_PASSWORD}"
- DEBUG: "False"
- ALLOWED_HOSTS: "rrbec.local.com, 0.0.0.0, django_app"
-
- networks:
- - app_network
-
- nginx_server:
- build:
- context: ./NginxServer
- dockerfile: Dockerfile
- volumes:
- - static_volume:/app/gestaoRaul/static
- ports:
- - "80:80"
- depends_on:
- - django_app
- networks:
- - app_network
-
- websocket_server:
- build:
- context: ./WebSocketServer
- dockerfile: Dockerfile
- ports:
- - "8765:8765"
- restart: on-failure
- networks:
- - app_network
-
-volumes:
- static_volume:
- db_data:
-
-networks:
- app_network:
- driver: bridge
\ No newline at end of file
diff --git a/duplicati_backups/duplicati-20250619T182622Z.dlist.zip.aes b/duplicati_backups/duplicati-20250619T182622Z.dlist.zip.aes
deleted file mode 100644
index f410305..0000000
Binary files a/duplicati_backups/duplicati-20250619T182622Z.dlist.zip.aes and /dev/null differ
diff --git a/duplicati_backups/duplicati-b4c724367f87a4d38ac90766f8e58403e.dblock.zip.aes b/duplicati_backups/duplicati-b4c724367f87a4d38ac90766f8e58403e.dblock.zip.aes
deleted file mode 100644
index b4f4149..0000000
Binary files a/duplicati_backups/duplicati-b4c724367f87a4d38ac90766f8e58403e.dblock.zip.aes and /dev/null differ
diff --git a/duplicati_backups/duplicati-if137e0776ce8437ab88ea45ff96845fc.dindex.zip.aes b/duplicati_backups/duplicati-if137e0776ce8437ab88ea45ff96845fc.dindex.zip.aes
deleted file mode 100644
index e5c0b58..0000000
Binary files a/duplicati_backups/duplicati-if137e0776ce8437ab88ea45ff96845fc.dindex.zip.aes and /dev/null differ
diff --git a/execu.bat b/execu.bat
deleted file mode 100644
index ada73b3..0000000
--- a/execu.bat
+++ /dev/null
@@ -1,4 +0,0 @@
-@echo off
-cd C:\Users\%USERPROFILE%\Documents\RRBEC\gestaoRaul
-c:\Users\%USERPROFILE%\Documents\RRBEC\dev\Scripts\Activate.ps1
-python manage.py runserver
\ No newline at end of file
diff --git a/gestaoRaul.zip b/gestaoRaul.zip
deleted file mode 100644
index b898050..0000000
Binary files a/gestaoRaul.zip and /dev/null differ
diff --git a/gestaoRaul/.gitignore b/gestaoRaul/.gitignore
deleted file mode 100644
index a4e8f0a..0000000
--- a/gestaoRaul/.gitignore
+++ /dev/null
@@ -1,18 +0,0 @@
-.venv/
-__pycache__/
-*.py[cod]
-*$py.class
-.env
-db.sqlite3
-media/
-static/
-.python-version
-uv.lock
-pyproject.toml
-GUIA_POSTMAN_API.md
-brain/
-logs/
-walkthrough.md
-task.md
-implementation_plan*.md
-*.webp
diff --git a/gestaoRaul/README.md b/gestaoRaul/README.md
deleted file mode 100644
index e69de29..0000000
diff --git a/gestaoRaul/gestaoRaul/__init__.py b/gestaoRaul/__init__.py
similarity index 100%
rename from gestaoRaul/gestaoRaul/__init__.py
rename to gestaoRaul/__init__.py
diff --git a/gestaoRaul/__pycache__/config_manager.cpython-312.pyc b/gestaoRaul/__pycache__/config_manager.cpython-312.pyc
deleted file mode 100644
index b883cc4..0000000
Binary files a/gestaoRaul/__pycache__/config_manager.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/__pycache__/manage.cpython-310.pyc b/gestaoRaul/__pycache__/manage.cpython-310.pyc
deleted file mode 100644
index fe2b536..0000000
Binary files a/gestaoRaul/__pycache__/manage.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/__pycache__/manage.cpython-313.pyc b/gestaoRaul/__pycache__/manage.cpython-313.pyc
deleted file mode 100644
index 5f1a477..0000000
Binary files a/gestaoRaul/__pycache__/manage.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/api_urls.py b/gestaoRaul/api_urls.py
similarity index 100%
rename from gestaoRaul/gestaoRaul/api_urls.py
rename to gestaoRaul/api_urls.py
diff --git a/gestaoRaul/gestaoRaul/asgi.py b/gestaoRaul/asgi.py
similarity index 100%
rename from gestaoRaul/gestaoRaul/asgi.py
rename to gestaoRaul/asgi.py
diff --git a/gestaoRaul/balcao/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 6cc069d..0000000
Binary files a/gestaoRaul/balcao/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index b2cd5e3..0000000
Binary files a/gestaoRaul/balcao/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 61c894f..0000000
Binary files a/gestaoRaul/balcao/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/admin.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index 84b1566..0000000
Binary files a/gestaoRaul/balcao/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/admin.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index d71fabf..0000000
Binary files a/gestaoRaul/balcao/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/admin.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 707b6c6..0000000
Binary files a/gestaoRaul/balcao/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/apps.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index e358e75..0000000
Binary files a/gestaoRaul/balcao/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/apps.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index a1f532e..0000000
Binary files a/gestaoRaul/balcao/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/apps.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 521821c..0000000
Binary files a/gestaoRaul/balcao/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/htmx_views.cpython-310.pyc
deleted file mode 100644
index c462304..0000000
Binary files a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/htmx_views.cpython-312.pyc
deleted file mode 100644
index 06e76aa..0000000
Binary files a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/htmx_views.cpython-313.pyc
deleted file mode 100644
index 0271363..0000000
Binary files a/gestaoRaul/balcao/__pycache__/htmx_views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/models.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 24d892a..0000000
Binary files a/gestaoRaul/balcao/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/models.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 8a10e8c..0000000
Binary files a/gestaoRaul/balcao/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/models.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index c90846e..0000000
Binary files a/gestaoRaul/balcao/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/tests.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/tests.cpython-313.pyc
deleted file mode 100644
index 2f9f279..0000000
Binary files a/gestaoRaul/balcao/__pycache__/tests.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/urls.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 7a57d00..0000000
Binary files a/gestaoRaul/balcao/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/urls.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index da07072..0000000
Binary files a/gestaoRaul/balcao/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/urls.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index e0a1e73..0000000
Binary files a/gestaoRaul/balcao/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/views.cpython-310.pyc b/gestaoRaul/balcao/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 1553fbe..0000000
Binary files a/gestaoRaul/balcao/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/views.cpython-312.pyc b/gestaoRaul/balcao/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 33ed526..0000000
Binary files a/gestaoRaul/balcao/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/balcao/__pycache__/views.cpython-313.pyc b/gestaoRaul/balcao/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index 69149e4..0000000
Binary files a/gestaoRaul/balcao/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/categories/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index ebde1f4..0000000
Binary files a/gestaoRaul/categories/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/categories/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index d75c5df..0000000
Binary files a/gestaoRaul/categories/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/categories/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 5d1fd8f..0000000
Binary files a/gestaoRaul/categories/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/admin.cpython-310.pyc b/gestaoRaul/categories/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index c93574d..0000000
Binary files a/gestaoRaul/categories/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/admin.cpython-312.pyc b/gestaoRaul/categories/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index b649e50..0000000
Binary files a/gestaoRaul/categories/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/admin.cpython-313.pyc b/gestaoRaul/categories/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 7f3f2c5..0000000
Binary files a/gestaoRaul/categories/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/apps.cpython-310.pyc b/gestaoRaul/categories/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index c6db92e..0000000
Binary files a/gestaoRaul/categories/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/apps.cpython-312.pyc b/gestaoRaul/categories/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index cf7d127..0000000
Binary files a/gestaoRaul/categories/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/apps.cpython-313.pyc b/gestaoRaul/categories/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 80a8870..0000000
Binary files a/gestaoRaul/categories/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/models.cpython-310.pyc b/gestaoRaul/categories/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 45908ea..0000000
Binary files a/gestaoRaul/categories/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/models.cpython-312.pyc b/gestaoRaul/categories/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 064abba..0000000
Binary files a/gestaoRaul/categories/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/models.cpython-313.pyc b/gestaoRaul/categories/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index 167d0ec..0000000
Binary files a/gestaoRaul/categories/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/tests.cpython-313.pyc b/gestaoRaul/categories/__pycache__/tests.cpython-313.pyc
deleted file mode 100644
index 5439e05..0000000
Binary files a/gestaoRaul/categories/__pycache__/tests.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/urls.cpython-310.pyc b/gestaoRaul/categories/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index a5007e8..0000000
Binary files a/gestaoRaul/categories/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/urls.cpython-312.pyc b/gestaoRaul/categories/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index f370b9d..0000000
Binary files a/gestaoRaul/categories/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/urls.cpython-313.pyc b/gestaoRaul/categories/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 551f932..0000000
Binary files a/gestaoRaul/categories/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/views.cpython-310.pyc b/gestaoRaul/categories/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index f9cf18c..0000000
Binary files a/gestaoRaul/categories/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/views.cpython-312.pyc b/gestaoRaul/categories/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 1a1b0b4..0000000
Binary files a/gestaoRaul/categories/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/__pycache__/views.cpython-313.pyc b/gestaoRaul/categories/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index 3107098..0000000
Binary files a/gestaoRaul/categories/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index c6b5534..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index 32c09ca..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index 11cbdbb..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-310.pyc b/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-310.pyc
deleted file mode 100644
index 64a2dab..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-312.pyc b/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-312.pyc
deleted file mode 100644
index 36ce5f4..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-313.pyc b/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-313.pyc
deleted file mode 100644
index 4e0c927..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/0002_rename_category_categories.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 5e28a46..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 51c6da4..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 0974db0..0000000
Binary files a/gestaoRaul/categories/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/clients/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 8e355f5..0000000
Binary files a/gestaoRaul/clients/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/clients/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index c6e983e..0000000
Binary files a/gestaoRaul/clients/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/clients/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 5b648d8..0000000
Binary files a/gestaoRaul/clients/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/admin.cpython-310.pyc b/gestaoRaul/clients/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index f5b1a09..0000000
Binary files a/gestaoRaul/clients/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/admin.cpython-312.pyc b/gestaoRaul/clients/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index 0559609..0000000
Binary files a/gestaoRaul/clients/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/admin.cpython-313.pyc b/gestaoRaul/clients/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 845caf1..0000000
Binary files a/gestaoRaul/clients/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/apps.cpython-310.pyc b/gestaoRaul/clients/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index b059f3b..0000000
Binary files a/gestaoRaul/clients/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/apps.cpython-312.pyc b/gestaoRaul/clients/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index c8504fd..0000000
Binary files a/gestaoRaul/clients/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/apps.cpython-313.pyc b/gestaoRaul/clients/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index f7a8bb6..0000000
Binary files a/gestaoRaul/clients/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/models.cpython-310.pyc b/gestaoRaul/clients/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 715072d..0000000
Binary files a/gestaoRaul/clients/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/models.cpython-312.pyc b/gestaoRaul/clients/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 0194644..0000000
Binary files a/gestaoRaul/clients/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/models.cpython-313.pyc b/gestaoRaul/clients/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index f08dd46..0000000
Binary files a/gestaoRaul/clients/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/tests.cpython-313.pyc b/gestaoRaul/clients/__pycache__/tests.cpython-313.pyc
deleted file mode 100644
index b250d46..0000000
Binary files a/gestaoRaul/clients/__pycache__/tests.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/urls.cpython-310.pyc b/gestaoRaul/clients/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index d1a2534..0000000
Binary files a/gestaoRaul/clients/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/urls.cpython-312.pyc b/gestaoRaul/clients/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 28de9e9..0000000
Binary files a/gestaoRaul/clients/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/urls.cpython-313.pyc b/gestaoRaul/clients/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index d1a44fa..0000000
Binary files a/gestaoRaul/clients/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/views.cpython-310.pyc b/gestaoRaul/clients/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 4aca971..0000000
Binary files a/gestaoRaul/clients/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/views.cpython-312.pyc b/gestaoRaul/clients/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 201b447..0000000
Binary files a/gestaoRaul/clients/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/__pycache__/views.cpython-313.pyc b/gestaoRaul/clients/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index 7d880e5..0000000
Binary files a/gestaoRaul/clients/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index c8f6594..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index f9e576e..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index d1754bf..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-310.pyc b/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-310.pyc
deleted file mode 100644
index ba69d93..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-312.pyc b/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-312.pyc
deleted file mode 100644
index ece5d3d..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-313.pyc b/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-313.pyc
deleted file mode 100644
index 36ff3fd..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/0002_client_created_at_client_debt.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 8d620fc..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 6d25ab2..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 8c9f9f0..0000000
Binary files a/gestaoRaul/clients/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 6cc069d..0000000
Binary files a/gestaoRaul/comandas/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 7cdcf48..0000000
Binary files a/gestaoRaul/comandas/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index e2446e1..0000000
Binary files a/gestaoRaul/comandas/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/admin.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index 4094585..0000000
Binary files a/gestaoRaul/comandas/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/admin.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index 4700468..0000000
Binary files a/gestaoRaul/comandas/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/admin.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 303cf1d..0000000
Binary files a/gestaoRaul/comandas/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/apps.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index 83599b4..0000000
Binary files a/gestaoRaul/comandas/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/apps.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index 1aaae39..0000000
Binary files a/gestaoRaul/comandas/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/apps.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 362c70a..0000000
Binary files a/gestaoRaul/comandas/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/htmx_views.cpython-310.pyc
deleted file mode 100644
index 5ae061b..0000000
Binary files a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/htmx_views.cpython-312.pyc
deleted file mode 100644
index 2a6eae0..0000000
Binary files a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/htmx_views.cpython-313.pyc
deleted file mode 100644
index 94e8bbd..0000000
Binary files a/gestaoRaul/comandas/__pycache__/htmx_views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/models.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 0bc7c4a..0000000
Binary files a/gestaoRaul/comandas/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/models.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 644be7a..0000000
Binary files a/gestaoRaul/comandas/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/models.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index 818018d..0000000
Binary files a/gestaoRaul/comandas/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/urls.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index dd2bf1b..0000000
Binary files a/gestaoRaul/comandas/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/urls.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index ed24ff4..0000000
Binary files a/gestaoRaul/comandas/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/urls.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index e119cfb..0000000
Binary files a/gestaoRaul/comandas/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/views.cpython-310.pyc b/gestaoRaul/comandas/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 03ba283..0000000
Binary files a/gestaoRaul/comandas/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/views.cpython-312.pyc b/gestaoRaul/comandas/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 3c55aac..0000000
Binary files a/gestaoRaul/comandas/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/__pycache__/views.cpython-313.pyc b/gestaoRaul/comandas/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index a856336..0000000
Binary files a/gestaoRaul/comandas/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index 6e2bf15..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index 9067a66..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index d0fb409..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-310.pyc b/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-310.pyc
deleted file mode 100644
index 0c99ec0..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-312.pyc
deleted file mode 100644
index b23eb8a..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-313.pyc b/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-313.pyc
deleted file mode 100644
index 6e8772c..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0002_productcomanda.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-310.pyc b/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-310.pyc
deleted file mode 100644
index c44a31a..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-312.pyc
deleted file mode 100644
index 6494876..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-313.pyc b/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-313.pyc
deleted file mode 100644
index 14940c1..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0003_comanda_status_alter_productcomanda_product.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-310.pyc b/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-310.pyc
deleted file mode 100644
index c238195..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-312.pyc
deleted file mode 100644
index d770665..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-313.pyc b/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-313.pyc
deleted file mode 100644
index b0668e5..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0004_comanda_user.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/0005_stockmovementtype_stockmovement.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/0005_stockmovementtype_stockmovement.cpython-312.pyc
deleted file mode 100644
index b96f5cd..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/0005_stockmovementtype_stockmovement.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 74ce7ad..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 17d7080..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index cf059df..0000000
Binary files a/gestaoRaul/comandas/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index f6241ef..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 0c1e4eb..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 69e06ad..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-310.pyc b/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-310.pyc
deleted file mode 100644
index 3222700..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-312.pyc b/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-312.pyc
deleted file mode 100644
index 557f43c..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-313.pyc b/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-313.pyc
deleted file mode 100644
index 6cf9ae2..0000000
Binary files a/gestaoRaul/comandas/templatetags/__pycache__/custom_filter_tag.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/tests/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/comandas/tests/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 9f28f8d..0000000
Binary files a/gestaoRaul/comandas/tests/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/tests/__pycache__/test_models.cpython-313.pyc b/gestaoRaul/comandas/tests/__pycache__/test_models.cpython-313.pyc
deleted file mode 100644
index 40a2a30..0000000
Binary files a/gestaoRaul/comandas/tests/__pycache__/test_models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/comandas/tests/__pycache__/test_views.cpython-313.pyc b/gestaoRaul/comandas/tests/__pycache__/test_views.cpython-313.pyc
deleted file mode 100644
index 1352199..0000000
Binary files a/gestaoRaul/comandas/tests/__pycache__/test_views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/db.sqlite3 b/gestaoRaul/db.sqlite3
deleted file mode 100644
index d1d95e2..0000000
Binary files a/gestaoRaul/db.sqlite3 and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/decorators.py b/gestaoRaul/decorators.py
similarity index 100%
rename from gestaoRaul/gestaoRaul/decorators.py
rename to gestaoRaul/decorators.py
diff --git a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index e103304..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index e617dcc..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index c53d7ba..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-310.pyc b/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-310.pyc
deleted file mode 100644
index eb6308a..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-312.pyc
deleted file mode 100644
index d85e7d3..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-313.pyc b/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-313.pyc
deleted file mode 100644
index 0dbe6c9..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/decorators.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-310.pyc b/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-310.pyc
deleted file mode 100644
index 6b34dd1..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc
deleted file mode 100644
index 08595a1..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-313.pyc b/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-313.pyc
deleted file mode 100644
index d2c11bf..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/settings.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-310.pyc b/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 086e19f..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 5757a92..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-313.pyc b/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 670b5e7..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-310.pyc b/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-310.pyc
deleted file mode 100644
index 660af0a..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-312.pyc b/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-312.pyc
deleted file mode 100644
index e727182..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-313.pyc b/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-313.pyc
deleted file mode 100644
index 387b821..0000000
Binary files a/gestaoRaul/gestaoRaul/__pycache__/wsgi.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/home/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 4efa6d6..0000000
Binary files a/gestaoRaul/home/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/home/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 5c49d87..0000000
Binary files a/gestaoRaul/home/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/home/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 01b80cc..0000000
Binary files a/gestaoRaul/home/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/admin.cpython-310.pyc b/gestaoRaul/home/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index 269d83a..0000000
Binary files a/gestaoRaul/home/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/admin.cpython-312.pyc b/gestaoRaul/home/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index 12d4f80..0000000
Binary files a/gestaoRaul/home/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/admin.cpython-313.pyc b/gestaoRaul/home/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 2c52e22..0000000
Binary files a/gestaoRaul/home/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/apps.cpython-310.pyc b/gestaoRaul/home/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index 3e61757..0000000
Binary files a/gestaoRaul/home/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/apps.cpython-312.pyc b/gestaoRaul/home/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index f443073..0000000
Binary files a/gestaoRaul/home/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/apps.cpython-313.pyc b/gestaoRaul/home/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 22c820b..0000000
Binary files a/gestaoRaul/home/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/models.cpython-310.pyc b/gestaoRaul/home/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 1a7f14e..0000000
Binary files a/gestaoRaul/home/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/models.cpython-312.pyc b/gestaoRaul/home/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 77d6cc5..0000000
Binary files a/gestaoRaul/home/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/models.cpython-313.pyc b/gestaoRaul/home/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index f4e503b..0000000
Binary files a/gestaoRaul/home/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/urls.cpython-310.pyc b/gestaoRaul/home/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 07cccac..0000000
Binary files a/gestaoRaul/home/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/urls.cpython-312.pyc b/gestaoRaul/home/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 35b1b57..0000000
Binary files a/gestaoRaul/home/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/urls.cpython-313.pyc b/gestaoRaul/home/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 48363d0..0000000
Binary files a/gestaoRaul/home/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/views.cpython-310.pyc b/gestaoRaul/home/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 19e3955..0000000
Binary files a/gestaoRaul/home/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/views.cpython-312.pyc b/gestaoRaul/home/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 8b8ffb4..0000000
Binary files a/gestaoRaul/home/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/__pycache__/views.cpython-313.pyc b/gestaoRaul/home/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index d3efee8..0000000
Binary files a/gestaoRaul/home/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/home/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 7ad7b09..0000000
Binary files a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/home/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 768dbe5..0000000
Binary files a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/home/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 50aa47a..0000000
Binary files a/gestaoRaul/home/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/urls.cpython-310.pyc b/gestaoRaul/login/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 9b73da6..0000000
Binary files a/gestaoRaul/login/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/urls.cpython-312.pyc b/gestaoRaul/login/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 54723f7..0000000
Binary files a/gestaoRaul/login/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/urls.cpython-313.pyc b/gestaoRaul/login/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 66de9af..0000000
Binary files a/gestaoRaul/login/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/views.cpython-310.pyc b/gestaoRaul/login/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 9071d8d..0000000
Binary files a/gestaoRaul/login/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/views.cpython-312.pyc b/gestaoRaul/login/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 86f65ca..0000000
Binary files a/gestaoRaul/login/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/login/__pycache__/views.cpython-313.pyc b/gestaoRaul/login/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index 57bc2bd..0000000
Binary files a/gestaoRaul/login/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 86747e5..0000000
Binary files a/gestaoRaul/mesas/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 422902c..0000000
Binary files a/gestaoRaul/mesas/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index f21da1e..0000000
Binary files a/gestaoRaul/mesas/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/admin.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index f80f6fa..0000000
Binary files a/gestaoRaul/mesas/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/admin.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index b4ef18c..0000000
Binary files a/gestaoRaul/mesas/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/admin.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 17eefa2..0000000
Binary files a/gestaoRaul/mesas/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/apps.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index 99422b1..0000000
Binary files a/gestaoRaul/mesas/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/apps.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index 7166dc5..0000000
Binary files a/gestaoRaul/mesas/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/apps.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 8d681dc..0000000
Binary files a/gestaoRaul/mesas/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/models.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 04403e5..0000000
Binary files a/gestaoRaul/mesas/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/models.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index c8e80f5..0000000
Binary files a/gestaoRaul/mesas/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/models.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index f38956d..0000000
Binary files a/gestaoRaul/mesas/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/urls.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 25113ba..0000000
Binary files a/gestaoRaul/mesas/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/urls.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 289a3a2..0000000
Binary files a/gestaoRaul/mesas/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/urls.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 8f1ae3d..0000000
Binary files a/gestaoRaul/mesas/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/views.cpython-310.pyc b/gestaoRaul/mesas/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index 8ae363e..0000000
Binary files a/gestaoRaul/mesas/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/views.cpython-312.pyc b/gestaoRaul/mesas/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 2bb846d..0000000
Binary files a/gestaoRaul/mesas/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/__pycache__/views.cpython-313.pyc b/gestaoRaul/mesas/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index 939d0e9..0000000
Binary files a/gestaoRaul/mesas/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index c305016..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index 01a60b5..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index b487576..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index b402862..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 5b94486..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 7176606..0000000
Binary files a/gestaoRaul/mesas/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/orders/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 438e9fa..0000000
Binary files a/gestaoRaul/orders/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/orders/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 6482db6..0000000
Binary files a/gestaoRaul/orders/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/orders/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 1f283de..0000000
Binary files a/gestaoRaul/orders/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/admin.cpython-310.pyc b/gestaoRaul/orders/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index ba47721..0000000
Binary files a/gestaoRaul/orders/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/admin.cpython-312.pyc b/gestaoRaul/orders/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index 11f28ac..0000000
Binary files a/gestaoRaul/orders/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/admin.cpython-313.pyc b/gestaoRaul/orders/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index a3e6c47..0000000
Binary files a/gestaoRaul/orders/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/apps.cpython-310.pyc b/gestaoRaul/orders/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index f81099d..0000000
Binary files a/gestaoRaul/orders/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/apps.cpython-312.pyc b/gestaoRaul/orders/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index f3490ef..0000000
Binary files a/gestaoRaul/orders/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/apps.cpython-313.pyc b/gestaoRaul/orders/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 6ce116e..0000000
Binary files a/gestaoRaul/orders/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/models.cpython-310.pyc b/gestaoRaul/orders/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index cdb1c36..0000000
Binary files a/gestaoRaul/orders/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/models.cpython-312.pyc b/gestaoRaul/orders/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 6f10b3f..0000000
Binary files a/gestaoRaul/orders/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/models.cpython-313.pyc b/gestaoRaul/orders/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index a86494c..0000000
Binary files a/gestaoRaul/orders/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/urls.cpython-310.pyc b/gestaoRaul/orders/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index f6b2e6c..0000000
Binary files a/gestaoRaul/orders/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/urls.cpython-312.pyc b/gestaoRaul/orders/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index 2e9c222..0000000
Binary files a/gestaoRaul/orders/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/urls.cpython-313.pyc b/gestaoRaul/orders/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index f38ef97..0000000
Binary files a/gestaoRaul/orders/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/views.cpython-310.pyc b/gestaoRaul/orders/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index b01e963..0000000
Binary files a/gestaoRaul/orders/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/views.cpython-312.pyc b/gestaoRaul/orders/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index 844f546..0000000
Binary files a/gestaoRaul/orders/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/__pycache__/views.cpython-313.pyc b/gestaoRaul/orders/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index debb416..0000000
Binary files a/gestaoRaul/orders/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index a3e66b1..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index 67d7982..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index d59e0ed..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-310.pyc b/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-310.pyc
deleted file mode 100644
index b57a8dc..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-312.pyc b/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-312.pyc
deleted file mode 100644
index d177e82..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-313.pyc b/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-313.pyc
deleted file mode 100644
index d72e32b..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/0002_order_productcomanda.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 8008505..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index c0db084..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 7021686..0000000
Binary files a/gestaoRaul/orders/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/payments/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 5a40fc7..0000000
Binary files a/gestaoRaul/payments/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/payments/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index bbb2275..0000000
Binary files a/gestaoRaul/payments/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/payments/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 51c00e9..0000000
Binary files a/gestaoRaul/payments/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/admin.cpython-310.pyc b/gestaoRaul/payments/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index a1a0a51..0000000
Binary files a/gestaoRaul/payments/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/admin.cpython-312.pyc b/gestaoRaul/payments/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index c115f6f..0000000
Binary files a/gestaoRaul/payments/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/admin.cpython-313.pyc b/gestaoRaul/payments/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 94e9be4..0000000
Binary files a/gestaoRaul/payments/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/apps.cpython-310.pyc b/gestaoRaul/payments/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index 8681dce..0000000
Binary files a/gestaoRaul/payments/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/apps.cpython-312.pyc b/gestaoRaul/payments/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index fb07b0b..0000000
Binary files a/gestaoRaul/payments/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/apps.cpython-313.pyc b/gestaoRaul/payments/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 4f6f335..0000000
Binary files a/gestaoRaul/payments/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/models.cpython-310.pyc b/gestaoRaul/payments/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index d7901bd..0000000
Binary files a/gestaoRaul/payments/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/models.cpython-312.pyc b/gestaoRaul/payments/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index d70fc62..0000000
Binary files a/gestaoRaul/payments/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/__pycache__/models.cpython-313.pyc b/gestaoRaul/payments/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index 041edbc..0000000
Binary files a/gestaoRaul/payments/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index e418d19..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index 0b36c67..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index 321a161..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 8b5f988..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index c8f0431..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index a6e8988..0000000
Binary files a/gestaoRaul/payments/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/products/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index f8daedd..0000000
Binary files a/gestaoRaul/products/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/products/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index 19f88a1..0000000
Binary files a/gestaoRaul/products/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/products/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 9b5494e..0000000
Binary files a/gestaoRaul/products/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/admin.cpython-310.pyc b/gestaoRaul/products/__pycache__/admin.cpython-310.pyc
deleted file mode 100644
index c9bf6ca..0000000
Binary files a/gestaoRaul/products/__pycache__/admin.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/admin.cpython-312.pyc b/gestaoRaul/products/__pycache__/admin.cpython-312.pyc
deleted file mode 100644
index 4c67474..0000000
Binary files a/gestaoRaul/products/__pycache__/admin.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/admin.cpython-313.pyc b/gestaoRaul/products/__pycache__/admin.cpython-313.pyc
deleted file mode 100644
index 014a5d8..0000000
Binary files a/gestaoRaul/products/__pycache__/admin.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/apps.cpython-310.pyc b/gestaoRaul/products/__pycache__/apps.cpython-310.pyc
deleted file mode 100644
index b71dae5..0000000
Binary files a/gestaoRaul/products/__pycache__/apps.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/apps.cpython-312.pyc b/gestaoRaul/products/__pycache__/apps.cpython-312.pyc
deleted file mode 100644
index 748b245..0000000
Binary files a/gestaoRaul/products/__pycache__/apps.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/apps.cpython-313.pyc b/gestaoRaul/products/__pycache__/apps.cpython-313.pyc
deleted file mode 100644
index 0229290..0000000
Binary files a/gestaoRaul/products/__pycache__/apps.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/models.cpython-310.pyc b/gestaoRaul/products/__pycache__/models.cpython-310.pyc
deleted file mode 100644
index 6515a55..0000000
Binary files a/gestaoRaul/products/__pycache__/models.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/models.cpython-312.pyc b/gestaoRaul/products/__pycache__/models.cpython-312.pyc
deleted file mode 100644
index 3ff7775..0000000
Binary files a/gestaoRaul/products/__pycache__/models.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/models.cpython-313.pyc b/gestaoRaul/products/__pycache__/models.cpython-313.pyc
deleted file mode 100644
index e4c6a13..0000000
Binary files a/gestaoRaul/products/__pycache__/models.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/urls.cpython-310.pyc b/gestaoRaul/products/__pycache__/urls.cpython-310.pyc
deleted file mode 100644
index 97ed013..0000000
Binary files a/gestaoRaul/products/__pycache__/urls.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/urls.cpython-312.pyc b/gestaoRaul/products/__pycache__/urls.cpython-312.pyc
deleted file mode 100644
index a7da0ce..0000000
Binary files a/gestaoRaul/products/__pycache__/urls.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/urls.cpython-313.pyc b/gestaoRaul/products/__pycache__/urls.cpython-313.pyc
deleted file mode 100644
index 02c2431..0000000
Binary files a/gestaoRaul/products/__pycache__/urls.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/views.cpython-310.pyc b/gestaoRaul/products/__pycache__/views.cpython-310.pyc
deleted file mode 100644
index f3201e1..0000000
Binary files a/gestaoRaul/products/__pycache__/views.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/views.cpython-312.pyc b/gestaoRaul/products/__pycache__/views.cpython-312.pyc
deleted file mode 100644
index b1eae30..0000000
Binary files a/gestaoRaul/products/__pycache__/views.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/__pycache__/views.cpython-313.pyc b/gestaoRaul/products/__pycache__/views.cpython-313.pyc
deleted file mode 100644
index da57d99..0000000
Binary files a/gestaoRaul/products/__pycache__/views.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-310.pyc b/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-310.pyc
deleted file mode 100644
index 74431d8..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-312.pyc b/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-312.pyc
deleted file mode 100644
index f77564a..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-313.pyc b/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-313.pyc
deleted file mode 100644
index 3fb0764..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0001_initial.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-310.pyc b/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-310.pyc
deleted file mode 100644
index 1981da8..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-312.pyc b/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-312.pyc
deleted file mode 100644
index 21dc7a1..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-313.pyc b/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-313.pyc
deleted file mode 100644
index 70d05a7..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0002_product_image_product_quantity.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-310.pyc b/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-310.pyc
deleted file mode 100644
index 8f5ec73..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-312.pyc b/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-312.pyc
deleted file mode 100644
index 36ca8cf..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-313.pyc b/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-313.pyc
deleted file mode 100644
index b6a3119..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0003_product_cuisine.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/0004_unitofmeasure_productcomponent_product_components_and_more.cpython-312.pyc b/gestaoRaul/products/migrations/__pycache__/0004_unitofmeasure_productcomponent_product_components_and_more.cpython-312.pyc
deleted file mode 100644
index 8e8ae12..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/0004_unitofmeasure_productcomponent_product_components_and_more.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-310.pyc b/gestaoRaul/products/migrations/__pycache__/__init__.cpython-310.pyc
deleted file mode 100644
index 4c14e8f..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-310.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-312.pyc b/gestaoRaul/products/migrations/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index a312f80..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-313.pyc b/gestaoRaul/products/migrations/__pycache__/__init__.cpython-313.pyc
deleted file mode 100644
index 1245cc7..0000000
Binary files a/gestaoRaul/products/migrations/__pycache__/__init__.cpython-313.pyc and /dev/null differ
diff --git a/gestaoRaul/gestaoRaul/settings.py b/gestaoRaul/settings.py
similarity index 100%
rename from gestaoRaul/gestaoRaul/settings.py
rename to gestaoRaul/settings.py
diff --git a/gestaoRaul/templates/static/base.css b/gestaoRaul/templates/static/base.css
deleted file mode 100644
index 20f51c7..0000000
--- a/gestaoRaul/templates/static/base.css
+++ /dev/null
@@ -1,472 +0,0 @@
-@import url('https://fonts.googleapis.com/css2?family=Inter:wght@200;300;400;500&display=swap');
-
-:root {
- --main-gradient: linear-gradient(145deg, #1E2A3B, #2C3E50);
- --pico-modal-overlay-background-color: rgba(8, 9, 10, 0.75);
- --pico-font-family-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
- --pico-font-family-sans-serif: system-ui, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, Helvetica, Arial, "Helvetica Neue", sans-serif, var(--pico-font-family-emoji);
- --pico-font-family-monospace: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace, var(--pico-font-family-emoji);
- --pico-font-family: var(--pico-font-family-sans-serif);
- --pico-line-height: 1.5;
- --pico-font-weight: 400;
- --pico-font-size: 100%;
- --pico-text-underline-offset: 0.1rem;
- --pico-border-radius: 0.25rem;
- --pico-border-width: 0.0625rem;
- --pico-outline-width: 0.125rem;
- --pico-transition: 0.2s ease-in-out;
- --pico-spacing: 1rem;
- --pico-typography-spacing-vertical: 1rem;
- --pico-block-spacing-vertical: var(--pico-spacing);
- --pico-block-spacing-horizontal: var(--pico-spacing);
- --pico-grid-column-gap: var(--pico-spacing);
- --pico-grid-row-gap: var(--pico-spacing);
- --pico-form-element-spacing-vertical: 0.75rem;
- --pico-form-element-spacing-horizontal: 1rem;
- --pico-group-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
- --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
- --pico-group-box-shadow-focus-with-input: 0 0 0 0.0625rem var(--pico-form-element-border-color);
- --pico-modal-overlay-backdrop-filter: blur(0.375rem);
- --pico-nav-element-spacing-vertical: 1rem;
- --pico-nav-element-spacing-horizontal: 0.5rem;
- --pico-nav-link-spacing-vertical: 0.5rem;
- --pico-nav-link-spacing-horizontal: 0.5rem;
- --pico-nav-breadcrumb-divider: ">";
- --pico-icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
- --pico-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
- --pico-icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
- --pico-icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
- --pico-icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
- --pico-icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
- --pico-icon-loading: url("data:image/svg+xml,%3Csvg fill='none' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E g %7B animation: rotate 2s linear infinite; transform-origin: center center; %7D circle %7B stroke-dasharray: 75,100; stroke-dashoffset: -5; animation: dash 1.5s ease-in-out infinite; stroke-linecap: round; %7D @keyframes rotate %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D @keyframes dash %7B 0%25 %7B stroke-dasharray: 1,100; stroke-dashoffset: 0; %7D 50%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -17.5; %7D 100%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -62; %7D %7D %3C/style%3E%3Cg%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='rgb(136, 145, 164)' stroke-width='4' /%3E%3C/g%3E%3C/svg%3E");
-
- }
-
-@keyframes jump {
- 0% {
- transform: scale(0.0);
- }
- 70% {
- transform: scale(1);
- }
- 100% {
- transform: scale(1);
- }
-}
-
-
-
-body {
- margin-top: 70px;
-}
-
-h1{
-text-align: center;
-}
-
-
-form {
- display: flex;
- flex-direction: column;
- gap: 10px;
-}
-
-input, textarea, select {
- width: 95%;
- max-width: 95%;
- max-height: 300px;
- margin-top: 5px;
- border-radius: 8px;
- border: 1px solid #cccccc52;
-}
-
-
-.btn-primary {
- align-items: center;
- background: var(--main-gradient);
- border-color: rgba(86, 187, 255, 0.192);
- border-radius: 8px;
- box-shadow: 0px 0px 10px rgba(12, 12, 12, 0.973);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
- transition: box-shadow 0.4s;
-}
-
-.btn-primary:hover {
- box-shadow: 0px 0px 15px rgba(86, 187, 255, 0.815);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
-}
-
-.btn-secondary {
- align-items: center;
- background: var(--main-gradient);
- border-color: rgba(53, 241, 62, 0.425);
- border-radius: 8px;
- box-shadow: 0px 0px 10px rgba(12, 12, 12, 0.973);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
- transition: box-shadow 0.4s;
-}
-
-.btn-secondary:hover {
- box-shadow: 0px 0px 15px rgb(53, 241, 62);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
-}
-
-.btn-cancel {
- align-items: center;
- background: linear-gradient(145deg, #dd3d3d8e, #9b4d4dbd);
- border-color: rgba(250, 62, 62, 0.404);
- border-radius: 8px;
- box-shadow: 0px 0px 10px rgba(12, 12, 12, 0.973);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
- transition: box-shadow 0.4s;
-}
-
-.btn-cancel:hover {
- box-shadow: 0px 0px 15px rgba(255, 86, 86, 0.815);
- text-align: left;
- line-height: 20px;
- padding: 15px 30px 15px 30px;
-}
-
-* {
- padding: 0;
- margin: 0;
- font-family: 'Inter', sans-serif;
-}
-
-
-.card-product {
- position: relative;
- height: 130px;
- width: 150px;
- padding: 10px;
- align-items: center;
- align-content: center;
- text-align: center;
- line-height: 1.5;
- /* background: var(--main-gradient); */
- /* box-shadow: 3px 3px 10px rgba(2, 2, 2, 0.678); */
- border-radius: 5px;
- transition: transform 0.4s, box-shadow 0.4s;
- background-size: cover;
- background-position: center;
- background-repeat: no-repeat;
- }
-
-.card-product::before {
- content: "";
- position: absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- background-color: rgba(0, 0, 0, 0.595);
-}
-
-.card-product-p {
- position: relative;
- z-index: 0;
- color: #ffffff;
- font-size: 14px;
-}
-
-.card-product:hover {
- transform: scale(1.05);
- transition: transform 0.4s, box-shadow 0.4s;
- box-shadow: 0px 0px 10px rgba(86, 187, 255, 0.815);
-}
-
-
-@media screen and (max-width: 1028px) {
- .card-product {
- background-size: cover !important;
- }
-
-}
-
-.p-header {
- background-color: #24252a;
- box-shadow: 0px 3px 10px #464646;
- position: fixed;
- top: 0;
- min-width: 100%;
- height: 60px;
- align-items: center;
- align-content: center;
- z-index: 100;
-}
-
-.nav-bar {
- display: flex;
- justify-content: space-between;
- padding: 0.1rem 1rem;
- align-self: center;
-
-}
-
-.logo {
- display: flex;
- margin-top: 5px;
- align-items: center;
- height: 60px;
-}
-
-
-.nav-list {
- display: flex;
- align-items: center;
-}
-
-.nav-list ul {
- display: flex;
- justify-content: space-between;
- list-style: none;
-}
-
-.nav-item {
- margin: 0 15px;
-}
-
-.nav-link {
- text-decoration: none;
- font-size: 1.15rem;
- color: #fff;
- font-weight: 400;
-}
-
-.logout-button{
- display: grid;
- align-items: center;
- grid-template-columns: repeat(2, 0.5fr);
- border: none;
- border-radius: 5px;
- margin-top: 0px;
- height: 60px;
- width: 180px;
- gap: 10px;}
-
-#user-info {
-width: 120px;
-overflow: hidden;
-text-overflow: ellipsis;
-white-space: nowrap;
-}
-
-.logout-button button a {
- text-decoration: none;
- color: #fff;
- font-weight: 500;
- font-size: 1.1rem;
- margin-bottom: 10px;
-}
-
-.mobile-menu-icon {
- display: none;
-}
-
-.mobile-menu {
- display: none;
-}
-
-
-.dropdown {
- position: relative;
- display: inline-block;
- color: #fff;
- cursor: pointer;
- transition: display 0.9s, animation 0.9s;
-}
-
-.dropdown-content {
- display: none;
- position: absolute;
- border-radius: 5px;
- background-color: #313238;
- min-width: 160px;
- box-shadow: 0px 3px 10px #464646;
-}
-
-.dropdown-content a {
- color: rgb(255, 255, 255);
- padding: 12px 16px;
- text-decoration: none;
- display: block;
- animation: jump 0.7s;
-
-}
-
-.dropdown-content a:hover {
- background-color: #7a7a7a;
- border-radius: 5px;
- display: block;
-
-}
-
-.img-drop {
- width: 35px;
- transition: transform 0.3s ease-in-out;
-}
-
-.dropdown:hover .img-drop {
- transform: rotate(180deg);
-}
-
-.dropdown:hover .dropdown-content {
- display: block;
- animation: jump 0.7s;
-
-}
-
-
-.toast {
- position: fixed;
- top: 4px;
- width: 30%;
- left: 30%;
- justify-items: center;
- align-items: center;
- transform: translateX(-50%);
- background-color: #599100;
- color: #000000;
- font-weight: bold;
- padding: 20px 1px 1px 1px;
- border-radius: 10px;
- opacity: 0;
- visibility: hidden;
- transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
- z-index: 999999999999 !important;
-}
-
-.toast p {
- color: #000000;
-}
-
-.toast.show {
- opacity: 1;
- visibility: visible;
-}
-
-
-
-.header-mobile {
- display: none;
- justify-content: flex-start;
- align-items: center;
- background-color:rgba(86, 187, 255, 0.192);
- box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
- border-radius: 25px;;
- position: fixed;
-
- top: 50%;
- right: -10px;
-
- width: 55px;
- height: 55px;
- z-index: 9999;
-}
-
-
-
-.header-mobile .nav-toggle {
- display: block;
- cursor: pointer;
- background: none;
- border: none;
- padding-right: 0;
- margin-right: 10;
-}
-
-.header-mobile .nav-toggle i {
- color: white;
- font-size: 1.5rem;
-}
-
-.header-mobile .nav-links {
- max-width: 70%;
- position: fixed;
- top: 0px;
- left: -100%;
- width: 100%;
- height: 100%;
- background-color: #222033b9;
- box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5);
- backdrop-filter: blur(5px);
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- transition: left 0.3s ease-in-out;
- z-index: 9998;
-}
-
-.header-mobile .nav-links .nav-component{
- width: 100%;
- justify-items: center;
- justify-content: space-between;
-}
-
-
-.header-mobile .nav-links.active {
- left: 15%;
-}
-
-.header-mobile .nav-links a {
- color: #a0aec0;
- text-decoration: none;
- font-size: 1.2rem;
- margin: 1rem 0;
- display: block;
- width: 100%;
- text-align: center;
- padding: 1rem;
- transition: all 0.3s;
-}
-
-.header-mobile .nav-links a:hover {
- color: white;
- scale: 1.3;
- transition: all 0.3s ;
-}
-
-
-@media screen and (max-width: 1028px) {
- .toast-add {
- width: 90%;
- }
-
- .dropdown-content {
- display: none;
- }
-
- .header-mobile {
- display: flex;
- }
-
- .nav-bar {
- display:none;
- }
- header .p-header {
- display: none;
- }
-
- body {
- margin: 8px 0px 0px 0px;
- }
-
- .toast {
- position: fixed;
- top: 5px;
- width: 70%;
- left: 40%;
-}
-}
diff --git a/gestaoRaul/templates/static/base.js b/gestaoRaul/templates/static/base.js
deleted file mode 100644
index 3f2441a..0000000
--- a/gestaoRaul/templates/static/base.js
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-document.addEventListener('DOMContentLoaded', function() {
- const navToggle = document.querySelector('.nav-toggle');
- const navLinks = document.querySelector('.nav-links');
-
- if (navToggle) {
- navToggle.addEventListener('click', function() {
- navLinks.classList.toggle('active');
- });
- }
- document.addEventListener('click', function(event) {
- if (navLinks.classList.contains('active') && !navLinks.contains(event.target) && !navToggle.contains(event.target)) {
- navLinks.classList.remove('active');
- }
- });
-});
-
-
-
-
-
-
-
-// const websocket = new WebSocket('ws://192.168.0.150:8765');
-// const nomeUsuario = document.getElementById('user-info').textContent;
-
-// websocket.addEventListener('open', (event) => {
-// console.log('Conectado ao servidor WebSocket');
-// });
-
-// websocket.addEventListener('message', (event) => {
-// const data = JSON.parse(event.data);
-
-// switch (data.local) {
-// case 'cozinha':
-
-// if (document.getElementById('Fila') !== null && data.tipo === 'add'){
-
-
-// var novoElemento = document.createElement('div');
-// novoElemento.innerHTML = data.message;
-// document.getElementById('Fila').appendChild(novoElemento);
-// let valorAtual = document.cookie.replace(/(?:(?:^|.*;\s*)notificacao\s*\=\s*([^;]*).*$)|^.*$/, "$1");
-// if (valorAtual === 'true') {
-// texto = new SpeechSynthesisUtterance(data.speak);
-// window.speechSynthesis.speak(texto);
-// // setTimeout(function() {
-// // location.reload();
-// // }, 6000);
-// }
-// }
-// else if (document.getElementById('obs-'+data.id) !== null && data.tipo === 'edit'){
-// const obs = document.getElementById('obs-'+data.id)
-// const card = obs.parentNode;
-// card.style.backgroundColor = 'rgb(243, 165, 75)';
-// obs.innerHTML = data.message;
-// let valorAtual = document.cookie.replace(/(?:(?:^|.*;\s*)notificacao\s*\=\s*([^;]*).*$)|^.*$/, "$1");
-
-// if (valorAtual === 'true') {
-// texto = new SpeechSynthesisUtterance(data.speak);
-// window.speechSynthesis.speak(texto);
-// // setTimeout(function() {
-// // location.reload();
-// // }, 6000);
-// }
-// }
-// else if (document.getElementById('m-card-'+data.id) !== null && data.tipo === 'delete'){
-// // const card = document.getElementById('m-card-'+data.id)
-// // card.style.backgroundColor = 'rgb(253, 69, 69)';
-// let valorAtual = document.cookie.replace(/(?:(?:^|.*;\s*)notificacao\s*\=\s*([^;]*).*$)|^.*$/, "$1");
-// if (valorAtual === 'true') {
-// texto = new SpeechSynthesisUtterance(data.speak);
-// window.speechSynthesis.speak(texto);
-// setTimeout(function() {
-// location.reload();
-// }, 6000);
-// }
-// }
-
-// break;
-// case 'praca':
-// console.log('Mensagem para a praca:', data);
-// break;
-// case 'guarita':
-// console.log('Mensagem para a guarita:', data);
-// break;
-// case 'balcao':
-// console.log('Mensagem para a balcao:', data);
-// break;
-// default:
-// console.log('Local desconhecido:', data);
-// }
-
-// });
-// websocket.addEventListener('error', (event) => {
-// console.error('Erro no WebSocket:', event);
-// });
-// websocket.addEventListener('close', (event) => {
-// console.log("conexão fechada");
-// });
-
-
-
-function menuShow() {
- let menuMobile = document.querySelector('.mobile-menu');
- if (menuMobile.classList.contains('open')) {
- menuMobile.classList.remove('open');
- document.querySelector('.icon').src = "https://raw.githubusercontent.com/Larissakich/menu_responsivo/6e3b09504434628c1b01f65b7d8ccf6ace3225cb/menu%20responsivo/assets/img/menu_white_36dp.svg";
- } else {
- menuMobile.classList.add('open');
- document.querySelector('.icon').src = "https://raw.githubusercontent.com/Larissakich/menu_responsivo/6e3b09504434628c1b01f65b7d8ccf6ace3225cb/menu%20responsivo/assets/img/close_white_36dp.svg";
- }
-}
-
-
-var elem = document.getElementById("all");
-function openFullscreen() {
- if (elem.requestFullscreen) {
- elem.requestFullscreen();
- } else if (elem.webkitRequestFullscreen) {
- elem.webkitRequestFullscreen();
- } else if (elem.msRequestFullscreen) {
- elem.msRequestFullscreen();
- }
- }
-
- function showToast(message, type ,duration = 2500) {
- const toast = document.getElementById('toast');
-
- if (type === 'success') {
- toast.style.backgroundColor = '#28a745';
- } else if (type === 'error') {
- toast.style.backgroundColor = '#dc3545';
- } else if (type === 'info') {
- toast.style.backgroundColor = '#ffc107';
- }
-
-
- const toastMessage = document.getElementById('toast-message');
-
- toastMessage.textContent = message;
- toast.classList.add('show');
-
- setTimeout(() => {
- toast.classList.remove('show');
- }, duration);
- }
-
-
- function feedback(message, icon, subMessage) {
- var feedbackMsg = Swal.fire({
- color: 'white',
- title: message,
- text: subMessage || '',
- icon: icon || 'info',
- background: 'rgb(23, 38, 54)',
- confirmButtonColor: 'linear-gradient(145deg, #1E2A3B, #2C3E50)',
- });
-
-
-}
-function toast(){
-
- const Toast = Swal.mixin({
- toast: true,
- theme:"dark",
- position: "top",
- showConfirmButton: false,
- background: 'rgb(30, 42, 58)',
- color: 'white',
- showCloseButton: true,
- timer: 2500,
- timerProgressBar: true,
- didOpen: (toast) => {
- toast.onmouseenter = Swal.stopTimer;
- toast.onmouseleave = Swal.resumeTimer;
- }
- });
- return Toast;
- }
\ No newline at end of file
diff --git a/gestaoRaul/templates/static/categories/css/categories.css b/gestaoRaul/templates/static/categories/css/categories.css
deleted file mode 100644
index e69de29..0000000
diff --git a/gestaoRaul/templates/static/categories/js/categories.js b/gestaoRaul/templates/static/categories/js/categories.js
deleted file mode 100644
index e69de29..0000000
diff --git a/gestaoRaul/templates/static/clients/css/clients.css b/gestaoRaul/templates/static/clients/css/clients.css
deleted file mode 100644
index 1caf927..0000000
--- a/gestaoRaul/templates/static/clients/css/clients.css
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-.grid-buttons {
- grid-template-columns: 1fr 1fr;
- display: flex;
- gap: 10px;
- }
-
-.grid-container {
- display: grid;
- grid-template-columns: repeat(1, 1fr);
- gap: 20px;
- max-width: 1300px;
- margin: 0 auto;
- }
-
-.grid-top {
- display: flex;
- width: 100%;
- }
-
-
- @media (max-width: 768px) {
- .hide-on-mobile {
- display: none;
- }
- }
\ No newline at end of file
diff --git a/gestaoRaul/templates/static/clients/js/clients.js b/gestaoRaul/templates/static/clients/js/clients.js
deleted file mode 100644
index 0a03214..0000000
--- a/gestaoRaul/templates/static/clients/js/clients.js
+++ /dev/null
@@ -1,221 +0,0 @@
-function openModal() {
- document.getElementById('Modal-create-client').style.display = 'block';
- var clientId = document.getElementById('clientId');
- var clientName = document.getElementById('clientName');
- var clientDebt = document.getElementById('clientDebt');
- var clientContact = document.getElementById('clientContact');
- var clientActive = document.getElementById('active');
-
- var buttonEdit = document.getElementById('edit');
- var buttonSave = document.getElementById('save');
- buttonEdit.style.display = 'none';
- buttonSave.style.display = 'block';
-
- clientId.value = '';
- clientName.value = '';
- // clientDebt.value = '';
- clientContact.value ='';
- clientActive.checked = false
-}
-
-function reloadPage(){
- setTimeout(function() {
- location.reload();}, 100);
- }
-
-function closeModal() {
- reloadPage()
- // document.getElementById('Modal-create-client').style.display = 'none';
-}
-
-function editclient(id) {
- openModal();
- var buttonSave = document.getElementById('save');
- var buttonEdit = document.getElementById('edit');
- var titleWindow = document.getElementById('title-window')
- buttonSave.style.display = 'none';
- buttonEdit.style.display = 'block';
- titleWindow.innerText = 'Editar '
- var clientId = document.getElementById('clientId');
- var clientName = document.getElementById('clientName');
- var clientContact = document.getElementById('clientContact');
- var clientActive = document.getElementById('active');
-
- clientId.value = id;
- clientName.value = document.getElementById('name-'+id).innerHTML;
-
- console.log(document.getElementById('contact-'+id).innerText)
- clientContact.value = document.getElementById('contact-'+id).innerText;
- clientActive.checked = document.getElementById('active-'+id).innerText == 'True' ? true : false;
-
-
-}
-
-
-
-
-
-
-function calcularTotalSelecionado() {
- const btn = document.getElementById('btn-fechar-comandas');
-
- let total = 0;
- // Seleciona todos os checkboxes marcados (exceto o "selectAll")
- const checkboxes = document.querySelectorAll('input[type="checkbox"]:checked:not(#selectAll)');
-
- checkboxes.forEach(checkbox => {
- const row = checkbox.closest('tr');
- const valorCell = row.querySelector('td:nth-child(7)'); // 7ª coluna é o valor
- if (valorCell) {
- const valorText = valorCell.textContent.trim();
- // Remove possíveis formatações de moeda e converte para número
- const valor = parseFloat(
- valorText
- .replace('.',',')
- .replace(/[^\d,]/g, '')
- .replace(',', '.')
-
- );
- if (!isNaN(valor)) {
- total += valor;
- }
- }
- });
-
- // Exibe o total no botão de receber
- if (btn) {
- btn.innerHTML = 'Receber '+total.toLocaleString('pt-BR', {style: 'currency', currency: 'BRL'});
- } else {
- // Cria um elemento para mostrar o total se não existir
- const display = document.createElement('div');
- display.id = 'total-selecionado';
- display.style.margin = '10px';
- display.style.fontWeight = 'bold';
- display.textContent = `Total selecionado: ${total.toLocaleString()}`;
- document.querySelector('table').insertAdjacentElement('afterend', display);
- }
-
- return total;
-}
-
-// Adiciona evento de change a todos os checkboxes
-document.addEventListener('DOMContentLoaded', function() {
-
- const checkboxes = document.querySelectorAll('input[type="checkbox"]');
- checkboxes.forEach(checkbox => {
- checkbox.addEventListener('change', calcularTotalSelecionado);
- });
-});
-
-
-
-
-
-document.addEventListener('DOMContentLoaded', function() {
- const selectAll = document.getElementById('selectAll');
- if (selectAll) {
- selectAll.addEventListener('change', function() {
- const isChecked = this.checked;
- const checkboxes = document.querySelectorAll('input[type="checkbox"]:not(#selectAll)');
-
- checkboxes.forEach(checkbox => {
- checkbox.checked = isChecked;
- });
-
- // Dispara o evento para calcular o total
- calcularTotalSelecionado();
- });
- }
-
- // Adiciona evento para desmarcar "selectAll" se algum checkbox for desmarcado
- const checkboxes = document.querySelectorAll('input[type="checkbox"]:not(#selectAll)');
- checkboxes.forEach(checkbox => {
- checkbox.addEventListener('change', function() {
- if (!this.checked && selectAll.checked) {
- selectAll.checked = false;
- }
- });
- });
-});
-
-
-
-
-
-async function enviarComandasSelecionadas() {
- const btn = document.getElementById('btn-fechar-comandas');
-
- btn.disabled = true;
- btn.innerHTML = '⏳ Processando...';
-
- try {
- const checkboxes = document.querySelectorAll('input[type="checkbox"]:checked:not(#selectAll)');
- const ids = [];
-
- checkboxes.forEach(checkbox => {
- const id = checkbox.id;
- if (/^\d+$/.test(id)) {
- ids.push(parseInt(id));
- }
- });
-
- if (ids.length === 0) {
- feedback('Nenhuma comanda selecionada.', 'error', 'Selecione uma comanda e tente novamente.');
-
- return;
- }
- const response = await fetch('/clients/payDebt', {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/json',
- 'X-Requested-With': 'XMLHttpRequest',
- 'X-CSRFToken': getCookie('csrftoken'),
- },
- body: JSON.stringify({ ids: ids })
- });
-
- // Verifica se a resposta é JSON válido
- const text = await response.text();
- let data;
- try {
- data = JSON.parse(text);
- } catch (e) {
- throw new Error(`Resposta inválida do servidor: ${text.substring(0, 100)}...`);
- }
-
- if (!response.ok) {
- throw new Error(data.error || `Erro HTTP: ${response.status}`);
- }
-
- feedback(`${ids.length} comandas pagas com sucesso!`, 'success');
-
-
- setTimeout(() => {
- window.location.reload();
- }, 2000);
-
- } catch (error) {
- console.error('Erro:', error);
- feedback('Erro', 'error', error);
-
- } finally {
- btn.disabled = false;
- btn.innerHTML = 'Receber';
- }
-}
-
-function getCookie(name) {
- let cookieValue = null;
- if (document.cookie && document.cookie !== '') {
- const cookies = document.cookie.split(';');
- for (let i = 0; i < cookies.length; i++) {
- const cookie = cookies[i].trim();
- if (cookie.substring(0, name.length + 1) === (name + '=')) {
- cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
- break;
- }
- }
- }
- return cookieValue;
-}
-
diff --git a/gestaoRaul/templates/static/comandas/css/comandas.css b/gestaoRaul/templates/static/comandas/css/comandas.css
deleted file mode 100644
index b060963..0000000
--- a/gestaoRaul/templates/static/comandas/css/comandas.css
+++ /dev/null
@@ -1,64 +0,0 @@
-.grid-container {
- justify-self: center;
- display: grid;
- grid-template-columns: repeat(6, 2fr);
- gap: 10px;
- max-width: 95%;
- margin-top: 15px;
-}
-
-
-.card-comanda {
- width:200px;
- max-width: 200px;
- gap: 3px;
- background: var(--main-gradient);
- border-radius: 5px;
- box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
- text-align: center;
- line-height: 20px;
- font-size: 20px;
- font-weight: bold;
- transition: transform 0.2s ease-in ;
-}
-
-p {
- color: rgb(194, 201, 207);
- white-space: nowrap;
- overflow: hidden;
- text-overflow: ellipsis;
-
-}
-
-.card-comanda:hover {
- transform: scale(1.05);
- box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.3);
- }
-
-
-@media (max-width: 768px) {
- .grid-container {
- display: flex;
- flex-wrap: wrap;
- justify-content: center;
- min-width: 100%;
- }
-
- .card-comanda {
- width: 31%;
- gap: 3px;
- flex-wrap: wrap;
- font-size: 15px;
- font-weight: bold;
- color: #333;
- transition: transform 0.2s;
- }
-
- .card-comanda:hover {
- transform: scale(1);
- box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.3);
- }
-
-}
-
-
diff --git a/gestaoRaul/templates/static/comandas/css/viewbalcao.css b/gestaoRaul/templates/static/comandas/css/viewbalcao.css
deleted file mode 100644
index f7120a6..0000000
--- a/gestaoRaul/templates/static/comandas/css/viewbalcao.css
+++ /dev/null
@@ -1,32 +0,0 @@
-
-.grid-container {
- display: grid;
- grid-template-columns: repeat(2, 2fr);
- gap: 20px;
- max-width: 1300px;
- margin: 0 auto;
- }
-
- .grid-list-products {
- display: grid;
- grid-template-columns: repeat(3, 2fr);
- gap: 10px;
- max-width: 800px;
- margin: 0 auto;
- }
-
-/* .card-product {
- background: var(--main-gradient);
- box-shadow: 3px 3px 10px rgba(2, 2, 2, 0.678);
-
- }
-
-.card-product:hover {
- transform: scale(1.05);
- box-shadow: 0px 0px 10px rgba(86, 187, 255, 0.815);
- } */
-
-table td th {
- text-align: center;
- }
-
diff --git a/gestaoRaul/templates/static/comandas/css/viewcomanda.css b/gestaoRaul/templates/static/comandas/css/viewcomanda.css
deleted file mode 100644
index 347d853..0000000
--- a/gestaoRaul/templates/static/comandas/css/viewcomanda.css
+++ /dev/null
@@ -1,39 +0,0 @@
-.grid-container {
- display: grid;
- grid-template-columns: repeat(1, 2fr);
- gap: 10px;
- max-width: 800px;
- margin: 0 auto;
- }
-
- body {
- z-index: 0;
- }
-
- .grid-list-products {
- justify-items: center;
- display: grid;
- grid-template-columns: repeat(3, 1fr);
- gap: 8px;
- max-width: 800px;
- }
-
-
- table td th {
- text-align: center;
- }
-
-
-
- @media screen and (max-width: 730px) {
-
- .card-product {
- height: 100%;
- width: 100%;
- max-width: 100%;
- text-align: center;
- background: var(--main-gradient);
- box-shadow: 3px 3px 10px rgba(2, 2, 2, 0.678);
- font-size: 14px;
- }
- }
\ No newline at end of file
diff --git a/gestaoRaul/templates/static/comandas/js/comandas.js b/gestaoRaul/templates/static/comandas/js/comandas.js
deleted file mode 100644
index bff295a..0000000
--- a/gestaoRaul/templates/static/comandas/js/comandas.js
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-function openModal() {
- document.getElementById('Modal-create-comanda').style.display = 'block';
- textField = document.getElementById('name-comanda')
- textField.focus()
-
-}
-
-function closeModal() {
- document.getElementById('Modal-create-comanda').style.display = 'none';
-}
-
-document.getElementById('openModal').addEventListener('click', openModal);
-
-// document.getElementById('form-comanda').addEventListener('submit', function(event) {
-// event.preventDefault();
-
- // const productName = document.getElementById('productName').value;
- // const productPrice = document.getElementById('productPrice').value;
- // const productDescription = document.getElementById('productDescription').value;
-
- // closeModal();
-// }
-// );
-
-
-
-function mostrarNotificacao(titulo,corpo,grupo) {
- if (Notification.permission != 'granted') {
- Notification.requestPermission().then(function(permission) {
- if (permission == 'granted') {
- var notification = new Notification(titulo, {
- body: corpo,
- icon: 'https://example.com/icon.png'
- });
- }
- });
- } else {
- var notification = new Notification(titulo, {
- body: corpo,
- icon: 'https://imagecolorpicker.com/imagecolorpicker-preview_b.avif',
- image: 'https://imagecolorpicker.com/imagecolorpicker-preview_b.avif',
-
- });
- }
-}
-
diff --git a/gestaoRaul/templates/static/comandas/js/viewbalcao.js b/gestaoRaul/templates/static/comandas/js/viewbalcao.js
deleted file mode 100644
index 6003aa5..0000000
--- a/gestaoRaul/templates/static/comandas/js/viewbalcao.js
+++ /dev/null
@@ -1,196 +0,0 @@
-
-
-function modal_payment_comanda() {
- document.getElementById('payment-comanda').style.display = 'block';
- recebido = document.getElementById('recebido')
- recebido.focus()
-}
-
-function troco(){
- recebido = document.getElementById('recebido').value
- total = document.getElementById('first-total').innerHTML
- resultado = document.getElementById('troco')
- total = total.replace('R$ ','')
- total = total.replace(',','.')
- result = recebido - total
- resultado.innerHTML = 'Troco: R$ '+result
-}
-
-function close_modal_payment_comanda() {
- document.getElementById('payment-comanda').style.display = 'none';
- document.getElementById('search-product').focus()
-}
-
-
-function imprimirFichas() {
- const element = document.getElementById("list-products-balcao");
- const style = ``;
- const agora = new Date();
- var dateString = agora.getDate() + '/' +( agora.getMonth() + 1 )+ '/' + agora.getFullYear() + ' - ' + agora.getHours() + ':' + agora.getMinutes()+' - Raul Rock Bar & Café';
-
- if (element) {
- var content = element.innerHTML;
- content = content.replace(/