Subversion Repositories Integrator Subversion

Rev

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