-
Notifications
You must be signed in to change notification settings - Fork 768
Open
Description
Objetivo
Desenvolver um sistema completo de caixa em Python, com banco de dados SQLite "zx.db", interface gráfica moderna e amigável, e funcionalidades profissionais para gestão de vendas, estoque, cadastro de usuários, fornecedores, clientes, funcionários, despesas e operações de caixa.
Banco de Dados
- Utilizar SQLite com o arquivo "zx.db".
- Estruturas de tabelas:
- Fornecedores: ID, Fornecedor, Telefone, E-mail, Site, Observações
- Produtos: ID, Produto, Fornecedor, Imposto (%), Preço de Custo, Preço de Venda (fórmula: (Imposto + Preço de Custo)x2), Quantidade, Validade do Lote, Lote
- Clientes PF: Nome, CPF, Telefone, E-mail
- Clientes PJ: Razão Social, CNPJ, Telefone, E-mail, Outros
- Funcionários: Matrícula, Nome, Função, Salário, CPF, RG, Endereço, Dependentes, Data de Admissão, Histórico de Promoções
- Despesas: ID, Tipo (Água, Energia Elétrica, Internet, Telefone, Gás, Manutenção, Outros Serviços), Valor, Data de Vencimento, Data de Pagamento, Descrição/Observação
- Usuários: ID, Nome de usuário, Senha, Nível de acesso (básico, médio, avançado)
Funcionalidades
Autenticação
- Tela de login com cadastro de usuários, definição de senha e nível de acesso.
- Usuário "admin" padrão, senha "Iris;6624Nara" com acesso para gerenciar usuários e definir níveis de acesso.
- Níveis: básico, médio, avançado (restrição de funcionalidades conforme nível).
Cadastros (Consultar, Adicionar, Alterar, Excluir)
- Fornecedores
- Produtos (atualiza estoque automaticamente na venda)
- Clientes PF e PJ
- Funcionários
- Despesas (todas operações e tipos listados)
Caixa
- Abertura de caixa (valor inicial ou herdando do último fechamento)
- Fechamento de caixa
- Display grande com valor do último produto buscado
- Busca de produto por ID ou nome, com atualização automática do valor
- Adição de produto à sacola de compras
- Exclusão de item da sacola por seleção
- Finalizar compra (valor total no display, campo para valor recebido, cálculo automático de troco)
- Emissão de cupom/comprovante dos lançamentos
- Sangria (retirada de numerário), Receber numerário
- Display auxiliar inferior com log completo das operações e movimentações (funcionário responsável, horário)
- Opção de imprimir relatórios em .xml, .pdf, .txt
Interface
- Interface gráfica moderna, intuitiva, com botões grandes, bordas arredondadas, cores diferenciadas para cada ação.
- Listas filtráveis e ordenáveis.
- Edição de itens por botão direito do mouse.
- Otimização do espaço e usabilidade.
- Todas as tabelas interligadas (exemplo: venda no caixa diminui estoque e aumenta saldo do caixa).
Observações importantes
- Integração entre todas as operações do banco de dados.
- Segurança das informações de login e níveis de acesso.
- Facilidade de uso por operadores de caixa.
- Documentação do sistema e instruções de uso.
Sugestão de Tecnologias
- Python 3.x
- SQLite3
- Tkinter, PyQt ou outra biblioteca para interface gráfica moderna
- Relatórios: geração de PDFs/XML/TXT
Requisitos adicionais
- Código bem estruturado e documentado.
- Separação clara entre back-end e front-end.
- Testes básicos para as principais operações.
Metadata
Metadata
Assignees
Labels
No labels