Ideia de projeto em java, incluindo possibilidade de aplicação de todos os requisitos abaixo: Faça um projeto em Java que tenha a interação entre classes e implementa os conceitos abaixo:
- Encapsulamento
- Modificador de acesso
- Herança
- Polimorfismo
- Classes e métodos abstratos
- Interface
- Tratamento de exceção
- Package
O projeto deverá ser feito em equipe de mínimo 2 e máximo 4 alunos.
Entregar as classes e um relatório com os nomes dos alunos, a descrição das funcionalidades do projeto e onde utilizou os conceitos da Orientação a Objetos solicitados no projeto.
Sistema de LOJA de eletrônicos:
A ideia consiste em um sistema para gerenciamento de estoque e venda de uma loja de eletrônicos, onde a mesma irá gerenciar os produtos, gerenciar os produtos das vendas, fazer a ordem de compra para os produtos, além de gerenciar os funcionários responsáveis por tal, como: vendedor, funcionário do almoxarifado, gerente do almoxarifado. Usuários e seus usos:
Gerente O gerente é responsável por efetuar as ordens de compra e monitorar o estoque em si. Tendo total atuação no sistema.
Funcionário O funcionário do almoxarifado é responsável por verificar o estoque, contabilizar e identificar se há necessidade de compra, criando uma pré-compra para ser aprovada pelo gerente e se tornar uma ordem de compra.
Vendedor O vendedor é responsável por realizar a venda, o mesmo terá a função no sistema de visualizar a quantidade disponível e efetuar a venda, descontando do estoque. Também terá a função de agendar a venda(podendo cancelar ou não), a confirmação é necessária para que seja descontado do estoque.
Classes abstratas funcionário produto ordem de compra
Vamos criar um sistema com possibilidade do usuário:
- Cadastrar produtos (Classe Abstrata) - Cada produto deve receber um ID único que não pode ser repetido, e um código de barras que pode ser repetido entre produtos repetidos (eu, Caio, me disponho a criar o tratamento de exceção para isso);
-Marca do Produto; -Modelo; -Quantidade em estoque; -Preço de compra; -Preço de venda; -Lucro estimado; —necessário para poder gerar descontos e ter métricas
- Cadastrar funcionários; - Cada funcionário deve receber uma matrícula única, que não pode ser repetida; (eu, Caio, me disponho a criar o tratamento de exceção para isso); -Nome do funcionário; -Cargo; (gerente, funcionário do almoxarifado, vendedor) -Login; -Senha; -excluir funcionário;
Deve existir, integrado neste sistema, o menu de venda de produtos, que irá ter conversação com o sistema de produtos registrados.
Menu Venda (Interfaces)
Forma de pagamento
-Dinheiro;
Desconto de x% sobre o valor da compra.
-Cartão
-Debido
valor integral da compra
-Crédito
acrescenta juros ao valor da compra
-Pix
-Valor integral da compra
A função do sistema é ser um sistema de gerenciamento geral, onde apenas o gerente terá acesso. Podemos criar um método de “login” de exemplo para essa função;
Ideia de menu:
Menu principal:
“Seja bem vindo. Insina seu login:
Nome: XXXXX X XX Senha: ********
Bem vindo Gerente XXXXX X XX
Menu principal:
- ESTOQUE;
- FUNCIONÁRIOS;
- Sair
Opção principal 1 selecionada>>>>
| ESTOQUE> | | 1. Verificar estoque em sua totalidade; | | 2. Verificar tipos específicos de produto (A,B,C,D,E); | | 3. Procurar produto por ID; | | 4. Cadastrar produto; | | 5. Verificar ordem de compra | | 6. Criar ordem de compra | | 7. Voltar |
Opção 1 do SubMenu 1 selecionada>>>> Celulares: 18 Computadores desktop: 5 Notebooks: 10 Teclados: 23 Mouses: 86 Mousepads: 23491 Webcam: 66666 Pen drive
Opção 2 do SubMenu 1 selecionada>>>> Sub-Submenu: --------------------------------------------------------------------------------------------------------------------------- | Verificar tipos específicos de produto> | | 1. Lista de celulares; | | 2. Lista de computadores; | | 3. Lista de periféricos; | | 4. Voltar | ---------------------------------------------------------------------------------------------------------------------------
Opção principal 2 selecionada>>>>
| Funcionários> | | 1. Verificar total de funcionários (aparecerá em ordem alfabética); | | 2. Procurar funcionário por matrícula; | | 3. Cadastrar funcionário; | | 4. Voltar | ---------------------------------------------------------------------------------------------------------------------------