Subversion Repositories Integrator Subversion

Rev

Rev 353 | Rev 412 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
259 espaco 1
package br.com.ec.domain.dto;
2
 
409 espaco 3
import java.util.Calendar;
4
import java.util.Date;
279 espaco 5
import java.util.List;
6
 
259 espaco 7
import org.primefaces.model.charts.bar.BarChartModel;
8
import org.primefaces.model.charts.pie.PieChartModel;
9
 
409 espaco 10
import br.com.ec.core.util.DataUtils;
11
import br.com.ec.core.util.StringUtil;
12
import br.com.ec.core.util.VerificadorUtil;
279 espaco 13
import br.com.ec.domain.dto.grafico.GraficoBarraDTO;
409 espaco 14
import br.com.ec.domain.model.tipos.TipoFuncionarioEvento;
279 espaco 15
 
259 espaco 16
public class FuncionarioDTO {
17
 
18
        private Long sequencialFuncionario;
19
        private Long sequencialPessoa;
20
        private String nome;
21
 
325 espaco 22
        private UsuarioDTO usuarioDTO;
23
        private List<PessoaPapelDTO> papeisDTO;
24
        private List<EnderecoDTO> enderecosDTO;
25
        private VendedorDTO vendedorDTO;
26
 
27
        private Boolean funcionarioAdmitido;
353 espaco 28
        private List<FuncionarioFeriasDTO> feriasDTO;
325 espaco 29
 
353 espaco 30
        private VigenciaDTO vigenciaEscalaDTO;
31
        private List<FuncionarioEscalaDTO> listaFuncionarioEscalaDTO;
409 espaco 32
        private List<FuncionarioEventoDTO> lisaFuncionarioEventoDTO;
353 espaco 33
 
325 espaco 34
        public FuncionarioDTO() {}
35
 
36
        public static String CONSULTA_DTO_COMPLETA = "e.sequencial, e.pessoa.sequencial, e.pessoa.nome";
37
        public FuncionarioDTO(Long sequencialFuncionario, Long sequencialPessoa, String nome) {
38
                super();
39
                this.sequencialFuncionario = sequencialFuncionario;
40
                this.sequencialPessoa = sequencialPessoa;
41
                this.nome = nome;
42
        }
43
 
44
        public FuncionarioDTO(Long sequencialFuncionario) {
45
                super();
46
                this.sequencialFuncionario = sequencialFuncionario;
47
        }
48
 
259 espaco 49
        private Long sequencialUsuario;
50
 
279 espaco 51
        private List<AvaliacaoFuncionarioDTO> avaliacoesDTO;
52
        private List<ExameFuncionarioDTO> examesDTO;
53
        private List<AtestadoFuncionarioDTO> atestadosDTO;
54
        private List<PontoDTO> pontosDTO;
55
 
259 espaco 56
        private FuncionarioCustosDTO custosDTO;
57
 
279 espaco 58
        private GraficoBarraDTO graficoCustos;
59
 
259 espaco 60
        private PieChartModel graficoTiposProdutos;
61
        private PieChartModel graficoFormasPagamento;
62
        private BarChartModel graficoComparativoCustosLucro;
63
 
64
        public Long getSequencialFuncionario() {
65
                return sequencialFuncionario;
66
        }
67
        public void setSequencialFuncionario(Long sequencialFuncionario) {
68
                this.sequencialFuncionario = sequencialFuncionario;
69
        }
70
 
71
        public Long getSequencialPessoa() {
72
                return sequencialPessoa;
73
        }
74
        public void setSequencialPessoa(Long sequencialPessoa) {
75
                this.sequencialPessoa = sequencialPessoa;
76
        }
77
 
78
        public String getNome() {
79
                return nome;
80
        }
81
        public void setNome(String nome) {
82
                this.nome = nome;
83
        }
84
 
325 espaco 85
        public UsuarioDTO getUsuarioDTO() {
86
                return usuarioDTO;
259 espaco 87
        }
325 espaco 88
        public void setUsuarioDTO(UsuarioDTO usuarioDTO) {
89
                this.usuarioDTO = usuarioDTO;
259 espaco 90
        }
91
 
325 espaco 92
        public List<PessoaPapelDTO> getPapeisDTO() {
93
                return papeisDTO;
94
        }
95
        public void setPapeisDTO(List<PessoaPapelDTO> papeisDTO) {
96
                this.papeisDTO = papeisDTO;
97
        }
98
 
99
        public List<EnderecoDTO> getEnderecosDTO() {
100
                return enderecosDTO;
101
        }
102
        public void setEnderecosDTO(List<EnderecoDTO> enderecosDTO) {
103
                this.enderecosDTO = enderecosDTO;
104
        }
105
 
259 espaco 106
        public VendedorDTO getVendedorDTO() {
107
                return vendedorDTO;
108
        }
109
        public void setVendedorDTO(VendedorDTO vendedorDTO) {
110
                this.vendedorDTO = vendedorDTO;
111
        }
112
 
325 espaco 113
        /***************************************************/
114
 
115
        public Boolean getFuncionarioAdmitido() {
116
                return funcionarioAdmitido;
117
        }
118
        public void setFuncionarioAdmitido(Boolean funcionarioAdmitido) {
119
                this.funcionarioAdmitido = funcionarioAdmitido;
120
        }
121
 
353 espaco 122
        public List<FuncionarioFeriasDTO> getFeriasDTO() {
123
                return feriasDTO;
124
        }
125
        public void setFeriasDTO(List<FuncionarioFeriasDTO> feriasDTO) {
126
                this.feriasDTO = feriasDTO;
127
        }
128
 
129
        public VigenciaDTO getVigenciaEscalaDTO() {
130
                return vigenciaEscalaDTO;
131
        }
132
        public void setVigenciaEscalaDTO(VigenciaDTO vigenciaEscalaDTO) {
133
                this.vigenciaEscalaDTO = vigenciaEscalaDTO;
134
        }
135
 
136
        public List<FuncionarioEscalaDTO> getListaFuncionarioEscalaDTO() {
137
                return listaFuncionarioEscalaDTO;
138
        }
139
        public void setListaFuncionarioEscalaDTO(List<FuncionarioEscalaDTO> listaFuncionarioEscalaDTO) {
140
                this.listaFuncionarioEscalaDTO = listaFuncionarioEscalaDTO;
141
        }
142
 
409 espaco 143
        public List<FuncionarioEventoDTO> getLisaFuncionarioEventoDTO() {
144
                return lisaFuncionarioEventoDTO;
145
        }
146
        public void setLisaFuncionarioEventoDTO(List<FuncionarioEventoDTO> lisaFuncionarioEventoDTO) {
147
                this.lisaFuncionarioEventoDTO = lisaFuncionarioEventoDTO;
148
        }
149
 
325 espaco 150
        public Long getSequencialUsuario() {
151
                return sequencialUsuario;
152
        }
153
        public void setSequencialUsuario(Long sequencialUsuario) {
154
                this.sequencialUsuario = sequencialUsuario;
155
        }
156
 
279 espaco 157
        public List<AvaliacaoFuncionarioDTO> getAvaliacoesDTO() {
158
                return avaliacoesDTO;
159
        }
160
        public void setAvaliacoesDTO(List<AvaliacaoFuncionarioDTO> avaliacoesDTO) {
161
                this.avaliacoesDTO = avaliacoesDTO;
162
        }
163
 
164
        public List<ExameFuncionarioDTO> getExamesDTO() {
165
                return examesDTO;
166
        }
167
        public void setExamesDTO(List<ExameFuncionarioDTO> examesDTO) {
168
                this.examesDTO = examesDTO;
169
        }
170
 
171
        public List<AtestadoFuncionarioDTO> getAtestadosDTO() {
172
                return atestadosDTO;
173
        }
174
        public void setAtestadosDTO(List<AtestadoFuncionarioDTO> atestadosDTO) {
175
                this.atestadosDTO = atestadosDTO;
176
        }
177
 
178
        public List<PontoDTO> getPontosDTO() {
179
                return pontosDTO;
180
        }
181
        public void setPontosDTO(List<PontoDTO> pontosDTO) {
182
                this.pontosDTO = pontosDTO;
183
        }
184
 
259 espaco 185
        public FuncionarioCustosDTO getCustosDTO() {
186
                return custosDTO;
187
        }
188
        public void setCustosDTO(FuncionarioCustosDTO custosDTO) {
189
                this.custosDTO = custosDTO;
190
        }
191
 
279 espaco 192
        public GraficoBarraDTO getGraficoCustos() {
193
                return graficoCustos;
194
        }
195
        public void setGraficoCustos(GraficoBarraDTO graficoCustos) {
196
                this.graficoCustos = graficoCustos;
197
        }
198
 
259 espaco 199
        public PieChartModel getGraficoTiposProdutos() {
200
                return graficoTiposProdutos;
201
        }
202
        public void setGraficoTiposProdutos(PieChartModel graficoTiposProdutos) {
203
                this.graficoTiposProdutos = graficoTiposProdutos;
204
        }
205
 
206
        public PieChartModel getGraficoFormasPagamento() {
207
                return graficoFormasPagamento;
208
        }
209
        public void setGraficoFormasPagamento(PieChartModel graficoFormasPagamento) {
210
                this.graficoFormasPagamento = graficoFormasPagamento;
211
        }
212
 
213
        public BarChartModel getGraficoComparativoCustosLucro() {
214
                return graficoComparativoCustosLucro;
215
        }
216
        public void setGraficoComparativoCustosLucro(BarChartModel graficoComparativoCustosLucro) {
217
                this.graficoComparativoCustosLucro = graficoComparativoCustosLucro;
218
        }
325 espaco 219
 
259 espaco 220
        @Override
221
        public int hashCode() {
222
                final int prime = 31;
223
                int result = 1;
224
                result = prime * result + ((sequencialFuncionario == null) ? 0 : sequencialFuncionario.hashCode());
225
                return result;
226
        }
227
 
228
        @Override
229
        public boolean equals(Object obj) {
230
                if (this == obj)
231
                        return true;
232
                if (obj == null)
233
                        return false;
234
                if (getClass() != obj.getClass())
235
                        return false;
236
                FuncionarioDTO other = (FuncionarioDTO) obj;
237
                if (sequencialFuncionario == null) {
238
                        if (other.sequencialFuncionario != null)
239
                                return false;
240
                } else if (!sequencialFuncionario.equals(other.sequencialFuncionario))
241
                        return false;
242
                return true;
243
        }
244
 
409 espaco 245
        public Integer getQuantidadeDiasTrabalhados() {
246
                Integer quantidadeDiasTrabalhados = 0;
247
                if (VerificadorUtil.naoEstaNulo(getListaFuncionarioEscalaDTO())) {
248
                        for (FuncionarioEscalaDTO escalaDTO : getListaFuncionarioEscalaDTO()) {
249
                                if (escalaDTO.getPeriodo() != null) {
250
                                        quantidadeDiasTrabalhados++;
251
                                }
252
                        }
253
                }
254
                return quantidadeDiasTrabalhados;
255
        }
256
 
257
        public Integer getQuantidadeDiasNaoTrabalhados() {
258
                return DataUtils.obterCalendario(getVigenciaEscalaDTO().getDataFim()).get(Calendar.DAY_OF_MONTH) - getQuantidadeDiasTrabalhados();
259
        }
260
 
261
        public Integer getQuantidadeFaltas() {
262
                Integer quantidadeFaltas = 0;
263
                if (VerificadorUtil.naoEstaNulo(getListaFuncionarioEscalaDTO())) {
264
                        for (FuncionarioEscalaDTO escalaDTO : getListaFuncionarioEscalaDTO()) {
265
                                for (FuncionarioEventoDTO evento : escalaDTO.getEventosDTO()) {
266
                                        if (evento.getTipo().equals(TipoFuncionarioEvento.FALTA.getValor())) {
267
                                                quantidadeFaltas++;
268
                                        }
269
                                }
270
                        }
271
                }
272
                return quantidadeFaltas;
273
        }
274
 
259 espaco 275
}