Subversion Repositories Integrator Subversion

Rev

Rev 353 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
279 espaco 1
package br.com.ec.domain.dto;
2
 
3
import java.util.Date;
4
 
5
import br.com.ec.core.util.DataUtils;
297 espaco 6
import br.com.ec.core.util.StringUtil;
279 espaco 7
import br.com.ec.core.util.VerificadorUtil;
8
 
9
public class FuncionarioFeriasDTO {
10
 
11
        private Long sequencialFuncionarioFerias;
12
        private FuncionarioDTO funcionarioDTO;
297 espaco 13
        private Date dataInicial;
14
        private Date dataFinal;
353 espaco 15
        private Integer quantidadeDiasFerias = 30;
16
        private Integer quantidadeDiasAquisicaoFerias = 365;
297 espaco 17
        private Date dataInicialAquisicao;
18
        private Date dataFinalAquisicao;
279 espaco 19
        private Boolean confirmada;
20
        private String observacao;
297 espaco 21
        private Boolean executada;
279 espaco 22
 
23
        public FuncionarioFeriasDTO() {}
24
 
297 espaco 25
        public FuncionarioFeriasDTO(Long sequencialFuncionarioFerias, Long sequencialFuncionario, Long sequencialPessoa, String nomeFuncionario,
26
                        Date dataInicial, Date dataFinal, Date dataInicialAquisicao, Date dataFinalAquisicao, Boolean confirmada, String observacao,
27
                        Boolean executada) {
279 espaco 28
                this.sequencialFuncionarioFerias = sequencialFuncionarioFerias;
297 espaco 29
                this.funcionarioDTO = new FuncionarioDTO(sequencialFuncionario, sequencialPessoa, nomeFuncionario);
30
                this.dataInicial = dataInicial;
31
                this.dataFinal = dataFinal;
32
                this.dataInicialAquisicao = dataInicialAquisicao;
33
                this.dataFinalAquisicao = dataFinalAquisicao;
279 espaco 34
                this.confirmada = confirmada;
35
                this.observacao = observacao;
297 espaco 36
                this.executada = executada;
279 espaco 37
        }
38
 
39
        public Long getSequencialFuncionarioFerias() {
40
                return sequencialFuncionarioFerias;
41
        }
42
        public void setSequencialFuncionarioFerias(Long sequencialFuncionarioFerias) {
43
                this.sequencialFuncionarioFerias = sequencialFuncionarioFerias;
44
        }
45
 
46
        public FuncionarioDTO getFuncionarioDTO() {
47
                return funcionarioDTO;
48
        }
49
        public void setFuncionarioDTO(FuncionarioDTO funcionarioDTO) {
50
                this.funcionarioDTO = funcionarioDTO;
51
        }
297 espaco 52
 
53
        public Date getDataInicial() {
54
                return dataInicial;
279 espaco 55
        }
297 espaco 56
        public void setDataInicial(Date dataInicial) {
57
                this.dataInicial = dataInicial;
279 espaco 58
        }
59
 
297 espaco 60
        public Date getDataFinal() {
61
                return dataFinal;
279 espaco 62
        }
297 espaco 63
        public void setDataFinal(Date dataFinal) {
64
                this.dataFinal = dataFinal;
279 espaco 65
        }
353 espaco 66
 
67
        public Integer getQuantidadeDiasFerias() {
68
                return quantidadeDiasFerias;
69
        }
70
        public void setQuantidadeDiasFerias(Integer quantidadeDiasFerias) {
71
                this.quantidadeDiasFerias = quantidadeDiasFerias;
72
        }
73
 
74
        public Integer getQuantidadeDiasAquisicaoFerias() {
75
                return quantidadeDiasAquisicaoFerias;
76
        }
77
        public void setQuantidadeDiasAquisicaoFerias(Integer quantidadeDiasAquisicaoFerias) {
78
                this.quantidadeDiasAquisicaoFerias = quantidadeDiasAquisicaoFerias;
79
        }
279 espaco 80
 
297 espaco 81
        public Date getDataInicialAquisicao() {
82
                return dataInicialAquisicao;
279 espaco 83
        }
297 espaco 84
        public void setDataInicialAquisicao(Date dataInicialAquisicao) {
85
                this.dataInicialAquisicao = dataInicialAquisicao;
279 espaco 86
        }
297 espaco 87
 
88
        public Date getDataFinalAquisicao() {
89
                return dataFinalAquisicao;
279 espaco 90
        }
297 espaco 91
        public void setDataFinalAquisicao(Date dataFinalAquisicao) {
92
                this.dataFinalAquisicao = dataFinalAquisicao;
279 espaco 93
        }
94
 
95
        public Boolean getConfirmada() {
96
                return confirmada;
97
        }
98
        public void setConfirmada(Boolean confirmada) {
99
                this.confirmada = confirmada;
100
        }
101
 
102
        public String getObservacao() {
103
                return observacao;
104
        }
105
        public void setObservacao(String observacao) {
297 espaco 106
                this.observacao = StringUtil.setarUpperCaseComTrim(observacao);
279 espaco 107
        }
108
 
297 espaco 109
        public Boolean getExecutada() {
110
                return executada;
111
        }
112
        public void setExecutada(Boolean executada) {
113
                this.executada = executada;
114
        }
115
 
279 espaco 116
        public Boolean estaProvisionada() {
297 espaco 117
                if (VerificadorUtil.naoEstaNulo(getDataInicial())) {
118
                        return getDataInicial().after(DataUtils.getDataAtual());
279 espaco 119
                }
120
                return false;
121
        }
122
 
123
        public Boolean precisaProvisionar() {
297 espaco 124
                if (VerificadorUtil.naoEstaNulo(getDataFinalAquisicao()) && VerificadorUtil.estaNulo(getDataInicial())) {
125
                        return getDataFinalAquisicao().before(DataUtils.getDataAtual());
279 espaco 126
                }
297 espaco 127
                return (VerificadorUtil.estaNulo(getDataInicial()) && VerificadorUtil.estaNulo(getDataInicialAquisicao()));
279 espaco 128
        }
129
 
319 espaco 130
        public Integer diasVencido() {
131
                if (VerificadorUtil.naoEstaNulo(getDataFinalAquisicao())) {
132
                        Integer quantidadeDias = DataUtils.calcularDiferenceEmDiasEntreDuasDatas(DataUtils.getDataAtual(), getDataFinalAquisicao());
133
                        if (quantidadeDias > 0) {
134
                                return quantidadeDias;
135
                        }
136
                }
137
                return null;
138
        }
353 espaco 139
 
140
        public void provisionarDataFinal() {
141
                if (VerificadorUtil.naoEstaNulo(getDataInicial())) {
142
                        setDataFinal(DataUtils.acrescentarDias(getDataInicial(), getQuantidadeDiasFerias()-1));
143
                }
144
        }
145
 
146
        public void provisionarDataAquisicaoFinal() {
147
                if (VerificadorUtil.naoEstaNulo(getDataInicialAquisicao())) {
148
                        setDataFinalAquisicao(DataUtils.acrescentarDias(getDataInicialAquisicao(), getQuantidadeDiasAquisicaoFerias()-1));
149
                }
150
        }
409 espaco 151
 
279 espaco 152
}