Subversion Repositories Integrator Subversion

Rev

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

Rev Author Line No. Line
261 espaco 1
package br.com.ec.domain.dto;
2
 
264 espaco 3
import java.util.ArrayList;
4
import java.util.List;
5
 
261 espaco 6
import br.com.ec.core.util.StringUtil;
7
 
8
public class FormaPagamentoDTO {
9
 
10
        private static final long FORMAPAGAMENTO_DINHEIRO = 1;
11
        private static final long FORMAPAGAMENTO_DEBITO = 2;
12
        private static final long FORMAPAGAMENTO_PAGSEGURO = 6;
13
        private static final long FORMAPAGAMENTO_OUTROS = 17;
14
        private static final long FORMAPAGAMENTO_1X = 3;
15
        private static final long FORMAPAGAMENTO_2X = 4;
16
        private static final long FORMAPAGAMENTO_3X = 5;
17
        private static final long FORMAPAGAMENTO_4X = 7;
18
        private static final long FORMAPAGAMENTO_5X = 8;
19
        private static final long FORMAPAGAMENTO_6X = 9;
20
        private static final long FORMAPAGAMENTO_7X = 10;
21
        private static final long FORMAPAGAMENTO_8X = 11;
22
        private static final long FORMAPAGAMENTO_9X = 12;
23
        private static final long FORMAPAGAMENTO_10X = 13;
24
        private static final long FORMAPAGAMENTO_11X = 14;
25
        private static final long FORMAPAGAMENTO_12X = 15;
26
        private static final long FORMAPAGAMENTO_PIX = 18;
27
 
28
        private static final long FORMAPAGAMENTO_CUPOM = 16;
29
 
30
        private Long codigo;
31
        private String descricao;
32
        private Integer numeroOrdem;
33
        private Boolean ativo;
34
 
35
        public FormaPagamentoDTO() {}
36
 
37
        public FormaPagamentoDTO(Long codigo) {
38
                this.codigo = codigo;
39
        }
40
 
264 espaco 41
        public FormaPagamentoDTO(Long codigo, String descricao) {
42
                this.codigo = codigo;
43
                this.descricao = descricao;
44
        }
45
 
261 espaco 46
        public Long getCodigo() {
47
                return codigo;
48
        }
49
        public void setCodigo(Long codigo) {
50
                this.codigo = codigo;
51
        }
52
 
53
        public String getDescricao() {
54
                return descricao;
55
        }
56
        public void setDescricao(String descricao) {
57
                this.descricao = StringUtil.setarUpperCaseComTrim(descricao);
58
        }
59
 
60
        public Integer getNumeroOrdem() {
61
                return numeroOrdem;
62
        }
63
        public void setNumeroOrdem(Integer numeroOrdem) {
64
                this.numeroOrdem = numeroOrdem;
65
        }
66
 
67
        public Boolean getAtivo() {
68
                return ativo;
69
        }
70
        public void setAtivo(Boolean ativo) {
71
                this.ativo = ativo;
72
        }
73
 
74
        public boolean formaPagamentoEhDinheiro() {
75
                return getCodigo().equals(FORMAPAGAMENTO_DINHEIRO);
76
        }
77
 
78
        public boolean formaPagamentoEhCartao() {
79
                return !(formaPagamentoEhDinheiro() || formaPagamentoEhCupom() || formaPagamentoEhOutros());
80
        }
81
 
82
        public boolean formaPagamentoEhDebito() {
83
                return getCodigo().equals(FORMAPAGAMENTO_DEBITO);
84
        }
85
 
86
        public boolean formaPagamentoEhPagseguro() {
87
                return getCodigo().equals(FORMAPAGAMENTO_PAGSEGURO);
88
        }
89
 
90
        public boolean formaPagamentoEhPix() {
91
                return getCodigo().equals(FORMAPAGAMENTO_PIX);
92
        }
93
 
94
        public boolean formaPagamentoEhCredito() {
95
                return !(formaPagamentoEhDinheiro() || formaPagamentoEhDebito() || formaPagamentoEhPagseguro() || formaPagamentoEhCupom() || formaPagamentoEhOutros() || formaPagamentoEhPix());
96
        }
97
 
98
        public boolean formaPagamentoEhCreditoDividido() {
99
                return formaPagamentoEhCredito() && !formaPagamentoEh1x();
100
        }
101
 
102
        public boolean formaPagamentoEh1x() {
103
                return getCodigo().equals(FORMAPAGAMENTO_1X);
104
        }
105
 
106
        public boolean formaPagamentoEh2x() {
107
                return getCodigo().equals(FORMAPAGAMENTO_2X);
108
        }
109
 
110
        public boolean formaPagamentoEh3x() {
111
                return getCodigo().equals(FORMAPAGAMENTO_3X);
112
        }
113
 
114
        public boolean formaPagamentoEh4x() {
115
                return getCodigo().equals(FORMAPAGAMENTO_4X);
116
        }
117
 
118
        public boolean formaPagamentoEh5x() {
119
                return getCodigo().equals(FORMAPAGAMENTO_5X);
120
        }
121
 
122
        public boolean formaPagamentoEh6x() {
123
                return getCodigo().equals(FORMAPAGAMENTO_6X);
124
        }
125
 
126
        public boolean formaPagamentoEh7x() {
127
                return getCodigo().equals(FORMAPAGAMENTO_7X);
128
        }
129
 
130
        public boolean formaPagamentoEh8x() {
131
                return getCodigo().equals(FORMAPAGAMENTO_8X);
132
        }
133
 
134
        public boolean formaPagamentoEh9x() {
135
                return getCodigo().equals(FORMAPAGAMENTO_9X);
136
        }
137
 
138
        public boolean formaPagamentoEh10x() {
139
                return getCodigo().equals(FORMAPAGAMENTO_10X);
140
        }
141
 
142
        public boolean formaPagamentoEh11x() {
143
                return getCodigo().equals(FORMAPAGAMENTO_11X);
144
        }
145
 
146
        public boolean formaPagamentoEh12x() {
147
                return getCodigo().equals(FORMAPAGAMENTO_12X);
148
        }
149
 
150
        public boolean formaPagamentoEhCupom() {
151
                return getCodigo().equals(FORMAPAGAMENTO_CUPOM);
152
        }
153
 
154
        public boolean formaPagamentoEhOutros() {
155
                return getCodigo().equals(FORMAPAGAMENTO_OUTROS);
156
        }
157
 
158
        public static Long recuperarCodigoDaFormaDePagamento(String parcela) {
159
                if (parcela.equals("1")) {
160
                        return FORMAPAGAMENTO_1X;
161
                } else if (parcela.equals("2")) {
162
                        return FORMAPAGAMENTO_2X;
163
                } else if (parcela.equals("3")) {
164
                        return FORMAPAGAMENTO_3X;
165
                } else if (parcela.equals("4")) {
166
                        return FORMAPAGAMENTO_4X;
167
                } else if (parcela.equals("5")) {
168
                        return FORMAPAGAMENTO_5X;
169
                } else if (parcela.equals("6")) {
170
                        return FORMAPAGAMENTO_6X;
171
                } else if (parcela.equals("7")) {
172
                        return FORMAPAGAMENTO_7X;
173
                } else if (parcela.equals("8")) {
174
                        return FORMAPAGAMENTO_8X;
175
                } else if (parcela.equals("9")) {
176
                        return FORMAPAGAMENTO_9X;
177
                } else if (parcela.equals("10")) {
178
                        return FORMAPAGAMENTO_10X;
179
                } else if (parcela.equals("11")) {
180
                        return FORMAPAGAMENTO_11X;
181
                } else if (parcela.equals("12")) {
182
                        return FORMAPAGAMENTO_12X;
183
                }
184
                return null;
185
        }
186
 
187
        @Override
188
        public int hashCode() {
189
                final int prime = 31;
190
                int result = 1;
191
                result = prime * result + ((codigo == null) ? 0 : codigo.hashCode());
192
                return result;
193
        }
194
 
195
        @Override
196
        public boolean equals(Object obj) {
197
                if (this == obj)
198
                        return true;
199
                if (obj == null)
200
                        return false;
201
                if (getClass() != obj.getClass())
202
                        return false;
203
                FormaPagamentoDTO other = (FormaPagamentoDTO) obj;
204
                if (codigo == null) {
205
                        if (other.codigo != null)
206
                                return false;
207
                } else if (!codigo.equals(other.codigo))
208
                        return false;
209
                return true;
210
        }
264 espaco 211
 
212
        public static List<FormaPagamentoDTO> todasFormasDePagamento() {
213
                List<FormaPagamentoDTO> formasPreenchidas = formasDePagamentoSemCupom();
214
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_CUPOM, "CUPOM"));
215
                return formasPreenchidas;
216
        }
261 espaco 217
 
264 espaco 218
        public static List<FormaPagamentoDTO> formasDePagamentoSemCupom() {
219
                List<FormaPagamentoDTO> formasPreenchidas = new ArrayList<FormaPagamentoDTO>();
220
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_DINHEIRO, "DINHEIRO"));
221
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_DEBITO, "DÉBITO"));
222
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_1X, "1X"));
223
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_2X, "2X"));
224
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_3X, "3X"));
225
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_4X, "4X"));
226
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_5X, "5X"));
227
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_6X, "6X"));
228
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_7X, "7X"));
229
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_8X, "8X"));
230
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_9X, "9X"));
231
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_10X, "10X"));
232
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_11X, "11X"));
233
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_12X, "12X"));
234
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_PIX, "PIX"));
235
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_PAGSEGURO, "PAGSEGURO"));
236
                formasPreenchidas.add(new FormaPagamentoDTO(FORMAPAGAMENTO_OUTROS, "OUTROS"));
237
                return formasPreenchidas;
238
        }
239
 
261 espaco 240
}