Skip to content

Desenvolver aplicativo profissional de caixa em Python com interface moderna e banco de dados robusto #396

@Urubax

Description

@Urubax

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

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions