Sistema de Gerência de Estabelecimentos
Equipe
- Professor orientador
- Estevan Brandt Braz Costa
- Alcione Benacchio
- Alunos
- João Paulo Mazega Pagani
- Lucas Gomes Guerra
Objetivo
Desenvolver um sistema WEB que vai funcionar na rede local para gerir o controle de entrada, saída de clientes, assim como a consumação, com ferramentas para gerenciar o estoque e o caixa.
Problema
Nem todo estabelecimento possuí uma forma de controlar a entrada e saída de clientes integrada com o sistema. Ou se possuí o sistema costuma ser uma solução dekstop, o que por muitas vezes acaba "engessando" o sistema, tornando muito complicado a adição de novos módulos, assim como ser dependente de determinado sistema operacional e versão.
Solução
O controle de entrada e saída dos clientes será efetuado através de um cartão com um código de barras que será lido pelo leitor específico ou o número digitado manualmente, dependendo da complexidade da implementação, é desejável que a câmera de um celular possa verificar esse código de barras, porém há problemas através do browser, como acesso a câmera do celular, biblioteca javascript para reconhecer os padrões da imagem. O sistema visa ser amplo e podendo ser usado em diversas situações diferentes, a parte de controle de usuário, pode ou não ser usada, tudo depende do usuário do sistema. A justificativa para o sistema ser desenvolvido para web é, para que o sistema seja executado em vários dispositivos, sem se preocupar com muito com sua portabilidade, dando a possibilidade de que seja executado em qualquer sistema que possua um navegador. Também facilitando a adição de novos módulos e funcionalidades ao sistema, por exemplo, se por algum motivo seja necessário o desenvolvimento de um aplicativo para o celular, isso pode ser mais facilmente executado, devido a proximidade da aplicação com o servidor criar um serviço Rest se torna menos penoso.
Público Alvo
O projeto pretende atingir o seguinte público:
- Casas noturnas;
- Bares e restaurantes, que necessitam controlar a entrada e saída de clientes, assim como o consumo.
Principais Funcionalidades
- Possibilidade de troca do tema, de acordo com o estabelecimento.
- O sistema poderá trocar cores e formas de botões e imagens de acordo com o tema
escolhido pelo hotel, podendo assim criar um sistema mais personalizado.
- Controle de entrada, saída de clientes.
- sistema terá uma forma de controlar a entrada e saída de clientes a fim de gerar
relatórios de ocupação por hora ou dia.
- Controle de consumo de clientes.
- O sistema proverá o controle do consumo do cliente através de uma mesa. Todos os
pedidos serão ligados a mesa que terá a lista dos itens e o valor total da conta.
- Controle de estoque
- sistema terá um cadastro de produtos que diretamente o jogará no estoque,
assim como uma atualização da quantidade que pode ser manual, quando o dono do estabelecimento lança uma entrada, ou automática, através da venda de produtos.
- Controle gerencial, lucro, quantidade de vendas.
- Através de relatórios, o sistema irá informar dados importantes para o
gerenciamento e manutenção do estabelecimento, como por exemplo: lucro diário ou mensal, produtos vendidos no dia ou mensal, quantidade total de ocupação, entre outros.
Tecnologias a serem Utilizadas
- Java
- Versão:
- JSF
- Versão:
- PrimeFace
- Versão:
- Hibernate
- Versão:
- Eclipse
- Versão:
- PostgreSQL
- Versão:
- Apache TomCat
- Versão:
- Apache Maven
- Versão:
Requisitos
CÓDIGO |
REQUISITOS FUNCIONAIS
|
RF 01 | O sistema deve manter usuário com as seguintes informações: nome, login, senha, cargo, tipo. |
RF 02 | O sistema deve armazenar o tipo do usuário, se tem acesso a área de gerencia,caixa, pdv e controle cliente. |
RF 03 | O sistema deve manter categoria do produto, somente o nome deve ser registrado. |
RF 04 | O sistema deve manter o tipo da unidade com as seguintes informações: nome do tipo e abreviação. |
RF 05 | O sistema deve manter produtos, cada produto deve conter uma lista de código de barra, nome, categoria ao qual pertence, tipo de unidade (grama, ml), tamanho da unidade(600), uma lista de produtos (ingredientes), quantidade no estoque, também deve ter o valor unitário de venda e se o mesmo é comercializável e se é para maiores de idade. |
RF 06 | O sistema deve permitir o cadastro de clientes mesmo não sendo obrigatório, esse cadastro deve conter: nome, número do documento (identidade, CPF, passaporte), data de nascimento, uma lista de telefones e e-mail. |
RF 07 | O sistema deve conter o tipo de documento. |
RF 08 | O sistema deve manter cartão com as seguintes informações: Chave, código do cartão, e disponibilidade. |
RF 09 | O sistema deve criar uma conta para gerenciar o consumo de cartão, nela deve estar o cartão, uma lista de itens vendidos, o total vendido, o valor pago e a data da venda, o usuário e o cliente. |
RF 10 | O sistema deve permitir registrar os itens comprados, registrando o produto comprado, o valor total da compra, a data de entrada e a quantidade. |
RF 11 | O sistema deve permitir o login do usuário, validando login e senha. |
RF 12 | O sistema deve permitir controlar o estoque, controlando entrada de produtos e saída de produtos de modo manual. |
RF 13 | O sistema deve permitir controlar a saída de itens do estoque, para o estorno ou outra razão. |
RF 14 | O sistema deve permitir controlar as vendas, permitindo gerar um item de venda que contém o produto, valor parcial e a quantidade do produto, ainda deve permitir estornar uma venda e baixar o produto do estoque automaticamente. |
RF 15 | O sistema deve gerar relatórios para o gerente, com dados, quantidade de vendas em um intervalo de data, estimar seu lucro, exibir o que saiu do estoque por motivos diferente de venda. |
CÓDIGO |
REQUISITO NÃO FUNCIONAL TECNOLÓGICO
|
RNFT 01 | Usar primefaces como framework java. |
RNFT 02 | Deverá existir um servidor físico para gerenciar o sistema e guardar o banco de dados. |
RNFT 03 | O sistema deverá ser desenvolvido em linguagem JAVA. |
RNFT 04 | Será usado o Maven para gerenciar os pacotes. |
RNFT 05 | Será utilizado o banco de dados PostgreSQL. |
RNFT 06 | Será utilizado o framework de acesso e persistência ao banco Hibernate. |
RNFT 07 | As respostas do servidor devem ser enviadas em JSON. |
RNFT 08 | Leitor de código de barras, para ser utilizado em conjunto ao sistema de cartões. |
RNFT 09 | Maven para a gerência de pacotes. |
CÓDIGO |
RF |
REQUISITO NÃO FUNCIONAL TECNOLÓGICO
|
RN 01 | RF01,RF02 | Deverão existir quatro tipos de login, um para venda, um administrativo, caixa, um para controle de clientes, um tipo de login pode ter mais de uma função. |
RN 02 | RF10 | O ponto de venda só poderá ser acessado pelo login de venda. |
RN 03 | RF01, RF02, RF11 | Cada usuário só pode acessar a área que está disponível para ele. |
RN 04 | RF007 | O estabelecimento deve disponibilizar cartões, previamente registrados no sistema com o código de barras. |
RN 05 | RF08 | Toda venda deverá ser associada a um cartão. |
RN 06 | RF07 | O cartão só poderá estar disponível se não houver conta vinculada a ele. |
RN 07 | RF11 | Apenas uma sessão para cada tipo de usuário. |
RN 08 | RF15 | Todo relatório deverá ser gerado em PDF ***** |
Layout
Caso de Uso
- Em breve, finalizando conteúdo.
Diagrama de Classe
Diagrama Entidade Relacional
Código Desenvolvido
Código no[github ||https://github.com/forcella/swge]
Referências