-
Notifications
You must be signed in to change notification settings - Fork 0
/
Empresa.hpp
73 lines (61 loc) · 1.92 KB
/
Empresa.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#ifndef EMPRESA_H
#define EMPRESA_H
#include <string>
#include <stdbool.h>
#include <list>
#include "Departamento.hpp"
#include "Cargo.hpp"
#include "Funcionario.hpp"
#include "Cliente.hpp"
#include "Categoria.hpp"
#include "Estoque.hpp"
#include "Produto.hpp"
#include "Vendas.hpp"
#include "Orcamento.hpp"
#include "Veiculo.hpp"
using namespace std;
class Empresa {
protected:
Empresa() = default;
list<Departamento> Departamentos;
list<Cargo> Cargos;
list<Funcionario> Funcionarios;
list<Cliente> Clientes;
list<Categoria> Categorias;
list<Estoque> Estoques;
list<Produto> Produtos;
list<Orcamento> listaVendas;
list<Orcamento> Compras; //colocar informações de compras de materiais?
list<Veiculo> Veiculos;
public:
static Empresa& getInstancia()
{
static Empresa EmpresaCriada;
return EmpresaCriada;
};
Empresa(const Empresa&) = delete;
Empresa(Empresa&&) = delete;
Empresa& operator=(const Empresa&) = delete;
Empresa& operator=(Empresa&&) = delete;
list<Departamento> GetDepartamentos();
list<Cargo> GetCargos();
list<Funcionario> GetFuncionarios();
list<Cliente> GetClientes();
list<Categoria> GetCategorias();
list<Estoque> GetEstoques();
list<Produto> GetProdutos();
list<Orcamento> GetVendas();
list<Veiculo> GetVeiculos();
void SetDepartamentos(Departamento Departamentos);
void SetCargos(Cargo Cargos);
void SetFuncionarios(Funcionario Funcionarios);
void SetClientes(Cliente Clientes);
void SetCategorias(Categoria Categorias);
void SetEstoques(Estoque Estoques);
void SetProdutos(list<Produto> *Produtos);
void SetVendas(Orcamento Compras);
void SetCompras(Orcamento Compras);
void SetVeiculos(Veiculo Veiculos);
Produto AtualizaProdutos();
};
#endif