pdv-shell
pdv-shell copied to clipboard
Olá essa é uma tentativa de simular uma simples implementação de sistema de PDV inspirado no repositório do slackjeff - pdvShell
- Introdução
- Requisitos
- Binarios em Go lang (incluidos no repositório)
- Estrutura do Projeto
- Diretório Integration
- Diretório Resources
- Estrutura do Projeto
- Roadmap
- Pontos de melhorias
- Como iniciar?
- Usuario Administrador
- Usuario Vendedor
- FAQ
- Como configurar o Envio de Email?
- Como eu faço para mudar o nome do Mercadinho?
- DEMO
Introdução
Olá essa é uma tentativa de simular uma simples implementação de sistema de PDV inspirado no repositório do slackjeff - pdvShell
Devido em alguns momentos a complexidade de ser implementado algumas funcionalidades como por exemplo geração do invoice em pdf foi necessário o uso de CLI em go lang para apoio.
Projeto foi feito exclusivamente para testar meus conhecimentos em Shell Script, como deixarei no Github casao mais pessoas possam se interessar e ajudar em melhorias fiquem a vontade!
Lembrando que poderá ter alguns problemas ainda mais que é a primeira versão, mas qual software é 100% funcional e nunca dá problema?
:heavy_exclamation_mark: Linguagens utilziadas:heavy_exclamation_mark:
Requisitos
Será necessário a instalação dos sequites pacotes no Sistem Operacional.
Binarios em Go lang (incluidos no repositório)
Estrutura do Projeto
O projeto foi estruturado algo "parecido" que temos hoje em linguagens mais avançadas que lembra vagamente de Orientação a Objetos.
Diretório Integration
Responsável por guardar os arquivos dos relatórios e invoices.
Diretório Resources
Responsável por guardar os arquivos e ou binários que serão importados pelo script principal app, deixo uma documentação básica de cada módulo.
- Móduio Email
- Móduio PDV
- Móduio Report
- Móduio sqlite3
- Móduio Util

Roadmap
- [x] Banco de Dados
- [x] Tabela Produtos
- [x] Tabela Vendas
- [x] Tabela Usuários
- [x] Sistema Usuários
- [X] Criação Usuários c/ senha criptografada
- [x] Utils
- [X] Encriptar/Decriptar Senha Usuários
- [x] Sistema Login
- [X] Validação do usuário/senha
- [x] Validação de permissão admin
- [x] Sistema Produtos
- [x] Cadastro de Produtos
- [x] Remover Produtos
- [x] Consultar Estoque
- [ ] Sistema Vendas
- [x] Validar Existencia de Produtos
- [x] Realizar Venda
- [X] Gerar Invoice
- [X] Gerar Order JSON
- [x] Remover Estoque após a venda
- [x] Cadastrar a Venda na tabela Sales
- [ ] Envio por email ao finalizar venda ( a ser testado )
- [ ] Sistema Relatório
- [X] Relatório de Venda Diário
- [X] Relatório de Venda da Semana Atual
- [ ] Envio por email após geração do relatório ( a ser implementado )
Pontos de melhorias
- Aprimorar o Sistema de Relatório
- Aprimorar a geração do Invoice, no estado atual, ao gerar invoice com produtos onde o nome tem espaço por exemplo "Leite XPTO 5L", o nome do produto fica com aspas duplas no PDF
Como iniciar?
Para o funcionamento básico deixo dois usuários cadastrados, o que diferencia ambos é as opções que irão aparecer no menu.
basta executar o processo app
Usuario Administrador
Usuario admin
Senha admin
Usuario Vendedor
Usuario vendedor01
Senha 12345
FAQ
Como configurar o Envio de Email?
Basta editar o arquivo email-cfg.json, colocando as configurações da conta de e-mail que irá realizar o envio.
Como eu faço para mudar o nome do Mercadinho?
Basta editar o arquivo util, mudando o conteúdo da variável store_name
DEMO
