-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathSeccion.h
57 lines (50 loc) · 1.88 KB
/
Seccion.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
#ifndef SECCION_H
#define SECCION_H
#include <string>
#include "Rango.h"
#include "Date.h"
#include "String.h"
#include "DataEmpresa.h"
#include "IObserver.h"
#include "Encargado.h"
#include "interfaces/ICollection.h"
#include "interfaces/ICollectible.h"
#include "interfaces/IDictionary.h"
using namespace std;
class Sucursal;
class OfertaLaboral;
class DataSeccion;
class Seccion: public ICollectible
{
public:
Seccion();
Seccion(string nombre, string interno, Sucursal *sucursal);
Seccion(const Seccion &s);
~Seccion();
string getNombre();
string getInterno();
Sucursal* getSucursal();
Encargado* getEncargado();
IDictionary *getOfertasLaborales();
void setNombre(string nombre);
void setInterno(string interno);
void setEncargado(Encargado* encargado);
void setSucursal(Sucursal *sucursal);
DataSeccion *getDataSeccion();
DataEmpresa *getDataEmpresa();
OfertaLaboral *addOferta(string numExpediente, string titulo, string descripcion, int cantidadHorasSemanales, Rango *rangoSalarial, Date *fechaComienzo, Date *fechaFin, int cantidadPuestosNecesarios, IDictionary *asignaturas);
void addObserver(IObserver *obs);
void removeObserver(IObserver *obs);
private:
string nombre;
string interno;
Sucursal * sucursal;//Pseudoatributo para representar la asociaci�n con una Sucursal
Encargado * encargado;//Pseudoatributo para representar la asociaci�n con un Encargado
ICollection * observers;//Pseudoatributo para representar la asociaci�n con una coleccion de IObserver
IDictionary *ofertasLaborales; //Pseudoatributo para representar la asociaci�n con un diccionario de ofertas laborales
};
#include "OfertaLaboral.h"
#include "Sucursal.h"
#include "OfertaLaboral.h"
#include "DataSeccion.h"
#endif // SECCION_H