-
Notifications
You must be signed in to change notification settings - Fork 1
/
SistemaImobiliaria.h
81 lines (66 loc) · 1.97 KB
/
SistemaImobiliaria.h
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
74
75
76
77
78
79
80
81
#ifndef SISTEMAIMOBILIARIA_H
#define SISTEMAIMOBILIARIA_H
//Comum a todos
#define DESCRICAO 0
#define VALOR 1
#define TIPO_OFERTA 2
#define TITULO_ANUNCIO 3
#define RUA 4
#define NUMERO 5
#define BAIRRO 6
#define CIDADE 7
#define CEP 8
//Apenas apartamento
#define POSICAO 9
#define VALOR_CONDOMINIO 10
#define A_AREA 11
#define A_NUM_QUARTOS 12
#define VAGAS_GARAGEM 13
//Apenas casa
#define NUM_PAVIMENTO 9
#define NUM_QUARTOS 10
#define AREA_TERRENO 11
#define AREA_CONSTRUIDA 12
//Apenas terreno
#define AREA 9
//Sistema Imobiliaria
#define SI_BAIRRO 1
#define SI_CIDADE 2
#define TITULOANUNCIO 3
#define SI_PRECO 4
#define MAIOR_QUE 1
#define MENOR_QUE 2
#include <iostream>
#include <stdio.h>
#include <string>
#include <sstream>
#include <fstream>
#include <list>
#include <bits/stdc++.h>
#include "GerenteDePersistencia.h"
#include "Imovel.h"
#include "Apartamento.h"
#include "Terreno.h"
#include "Casa.h"
class SistemaImobiliaria{
public:
SistemaImobiliaria();
void cadastraImovel(Imovel *tImovel);
void editaImovel(int id, std::string novaString, double novoValor, int tipoModificacao);
void removeImovel(int indice);
void printaLista(std::list<Imovel *> lista);
void setListaDeImoveis(std::list<Imovel *> lista);
GerenteDePersistencia getControlador();
std::list<Imovel *> buscaImovel(std::list<Imovel *> lista, std::string substring, int tipoSubstring);
std::list<Imovel *> buscaImovelValor(std::list<Imovel *> lista, double valor, int tipoBusca);
std::list<Imovel *> getImoveis();
std::list<std::string> getDescricaoImoveis(std::list<Imovel *> lista);
std::list<std::string> getDescricaoSalvarImoveis(std::list<Imovel *> lista);
std::list<std::string> getResumoImoveis(std::list<Imovel *> lista);
std::list<Imovel *> getImoveisPorTipo(std::list<Imovel *> lista, int tipo);
std::list<Imovel *> getImoveisPorTipoAnuncio(std::list<Imovel *> lista, int tipo);
private:
std::list<Imovel *> listaDeImoveis;
GerenteDePersistencia controlador;
};
#endif