Rev 403 | Rev 456 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 296 | espaco | 1 | package br.com.ec.domain.dto; |
| 2 | |||
| 379 | espaco | 3 | import java.util.ArrayList; |
| 296 | espaco | 4 | import java.util.List; |
| 5 | |||
| 6 | import org.primefaces.model.file.UploadedFile; |
||
| 7 | |||
| 380 | espaco | 8 | import br.com.ec.core.util.DataUtils; |
| 379 | espaco | 9 | import br.com.ec.core.util.VerificadorUtil; |
| 392 | espaco | 10 | import br.com.ec.domain.model.tipos.TipoConciliacao; |
| 296 | espaco | 11 | import br.com.ec.domain.model.tipos.TipoExtratoBancarioCsv; |
| 379 | espaco | 12 | import br.com.ec.domain.model.tipos.TipoExtratoBanco; |
| 13 | import br.com.ec.web.util.DataUtil; |
||
| 296 | espaco | 14 | |
| 15 | public class ExtratoBancarioArquivoDTO { |
||
| 16 | |||
| 17 | private ContaBancariaDTO contaBancariaDTO; |
||
| 18 | private String tipoExtratoBancarioCsv; |
||
| 19 | private UploadedFile arquivoExtratoBancario; |
||
| 20 | private List<String> linhasArquivo; |
||
| 21 | |||
| 377 | espaco | 22 | private List<ExtratoBancoDTO> dadosExtratoBancoDTO; |
| 380 | espaco | 23 | private List<ExtratoBancoDTO> dadosExtratoBancoSemCategoriaDTO; |
| 377 | espaco | 24 | |
| 379 | espaco | 25 | public ExtratoBancarioArquivoDTO() { |
| 26 | this.dadosExtratoBancoDTO = new ArrayList<ExtratoBancoDTO>(); |
||
| 380 | espaco | 27 | this.dadosExtratoBancoSemCategoriaDTO = new ArrayList<ExtratoBancoDTO>(); |
| 379 | espaco | 28 | } |
| 296 | espaco | 29 | |
| 30 | public ExtratoBancarioArquivoDTO(String tipoExtratoBancarioCsv, UploadedFile arquivoExtratoBancario) { |
||
| 31 | super(); |
||
| 32 | this.tipoExtratoBancarioCsv = tipoExtratoBancarioCsv; |
||
| 33 | this.arquivoExtratoBancario = arquivoExtratoBancario; |
||
| 34 | } |
||
| 35 | |||
| 36 | public ContaBancariaDTO getContaBancariaDTO() { |
||
| 37 | return contaBancariaDTO; |
||
| 38 | } |
||
| 39 | public void setContaBancariaDTO(ContaBancariaDTO contaBancariaDTO) { |
||
| 40 | this.contaBancariaDTO = contaBancariaDTO; |
||
| 41 | } |
||
| 42 | |||
| 43 | public String getTipoExtratoBancarioCsv() { |
||
| 44 | return tipoExtratoBancarioCsv; |
||
| 45 | } |
||
| 46 | public void setTipoExtratoBancarioCsv(String tipoExtratoBancarioCsv) { |
||
| 47 | this.tipoExtratoBancarioCsv = tipoExtratoBancarioCsv; |
||
| 48 | } |
||
| 49 | public String getDescricaoTipoExtratoBancarioCsv() { |
||
| 379 | espaco | 50 | if (VerificadorUtil.naoEstaNuloOuVazio(getTipoExtratoBancarioCsv())) { |
| 51 | return TipoExtratoBancarioCsv.parse(getTipoExtratoBancarioCsv()).getDescricao(); |
||
| 52 | } |
||
| 53 | return ""; |
||
| 296 | espaco | 54 | } |
| 55 | |||
| 56 | public UploadedFile getArquivoExtratoBancario() { |
||
| 57 | return arquivoExtratoBancario; |
||
| 58 | } |
||
| 59 | public void setArquivoExtratoBancario(UploadedFile arquivoExtratoBancario) { |
||
| 60 | this.arquivoExtratoBancario = arquivoExtratoBancario; |
||
| 61 | } |
||
| 62 | |||
| 63 | public List<String> getLinhasArquivo() { |
||
| 64 | return linhasArquivo; |
||
| 65 | } |
||
| 66 | public void setLinhasArquivo(List<String> linhasArquivo) { |
||
| 67 | this.linhasArquivo = linhasArquivo; |
||
| 68 | } |
||
| 69 | |||
| 377 | espaco | 70 | public List<ExtratoBancoDTO> getDadosExtratoBancoDTO() { |
| 71 | return dadosExtratoBancoDTO; |
||
| 72 | } |
||
| 73 | public void setDadosExtratoBancoDTO(List<ExtratoBancoDTO> dadosExtratoBancoDTO) { |
||
| 74 | this.dadosExtratoBancoDTO = dadosExtratoBancoDTO; |
||
| 75 | } |
||
| 76 | |||
| 380 | espaco | 77 | public List<ExtratoBancoDTO> getDadosExtratoBancoSemCategoriaDTO() { |
| 78 | return dadosExtratoBancoSemCategoriaDTO; |
||
| 79 | } |
||
| 80 | public void setDadosExtratoBancoSemCategoriaDTO(List<ExtratoBancoDTO> dadosExtratoBancoSemCategoriaDTO) { |
||
| 81 | this.dadosExtratoBancoSemCategoriaDTO = dadosExtratoBancoSemCategoriaDTO; |
||
| 82 | } |
||
| 83 | |||
| 379 | espaco | 84 | /**************************************/ |
| 85 | |||
| 86 | public Boolean todoExtratoConciliado() { |
||
| 87 | if (!VerificadorUtil.isListaNulaOuVazia(getDadosExtratoBancoDTO())) { |
||
| 88 | for (ExtratoBancoDTO extratoBancoDTO : getDadosExtratoBancoDTO()) { |
||
| 89 | if (!extratoBancoDTO.getIndicadorConciliado()) { |
||
| 90 | return false; |
||
| 91 | } |
||
| 92 | } |
||
| 93 | } |
||
| 94 | return true; |
||
| 95 | } |
||
| 96 | |||
| 380 | espaco | 97 | public void extrairDados(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
| 379 | espaco | 98 | if (getTipoExtratoBancarioCsv().equals(TipoExtratoBancarioCsv.EXTRATO_BANCARIO_CSV_ITAU.getValor())) { |
| 99 | setDadosExtratoBancoDTO(new ArrayList<ExtratoBancoDTO>()); |
||
| 380 | espaco | 100 | getDadosExtratoBancoDTO().addAll(extrairDadosItau(extratosAnexadosAnteriormente)); |
| 379 | espaco | 101 | } |
| 396 | espaco | 102 | if (getTipoExtratoBancarioCsv().equals(TipoExtratoBancarioCsv.EXTRATO_BANCARIO_CSV_ITAU_PAGAMENTOS.getValor())) { |
| 103 | setDadosExtratoBancoDTO(new ArrayList<ExtratoBancoDTO>()); |
||
| 104 | getDadosExtratoBancoDTO().addAll(extrairDadosItauPagamentos(extratosAnexadosAnteriormente)); |
||
| 105 | } |
||
| 392 | espaco | 106 | if (getTipoExtratoBancarioCsv().equals(TipoExtratoBancarioCsv.EXTRATO_BANCARIO_CSV_BRADESCO.getValor())) { |
| 107 | setDadosExtratoBancoDTO(new ArrayList<ExtratoBancoDTO>()); |
||
| 108 | getDadosExtratoBancoDTO().addAll(extrairDadosBradesco(extratosAnexadosAnteriormente)); |
||
| 109 | } |
||
| 110 | if (getTipoExtratoBancarioCsv().equals(TipoExtratoBancarioCsv.EXTRATO_BANCARIO_CSV_NUBANK.getValor())) { |
||
| 111 | setDadosExtratoBancoDTO(new ArrayList<ExtratoBancoDTO>()); |
||
| 112 | getDadosExtratoBancoDTO().addAll(extrairDadosNubank(extratosAnexadosAnteriormente)); |
||
| 113 | } |
||
| 399 | espaco | 114 | if (getTipoExtratoBancarioCsv().equals(TipoExtratoBancarioCsv.EXTRATO_BANCARIO_CSV_BNB.getValor())) { |
| 115 | setDadosExtratoBancoDTO(new ArrayList<ExtratoBancoDTO>()); |
||
| 116 | getDadosExtratoBancoDTO().addAll(extrairDadosBnb(extratosAnexadosAnteriormente)); |
||
| 117 | } |
||
| 379 | espaco | 118 | } |
| 119 | |||
| 380 | espaco | 120 | private List<ExtratoBancoDTO> extrairDadosItau(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
| 379 | espaco | 121 | List<ExtratoBancoDTO> extratosExtraidos = new ArrayList<ExtratoBancoDTO>(); |
| 380 | espaco | 122 | List<ExtratoBancoDTO> extratosExtraidosSemCategoria = new ArrayList<ExtratoBancoDTO>(); |
| 379 | espaco | 123 | for (String linha : this.getLinhasArquivo()) { |
| 124 | String[] dadosSeparados = linha.split(";"); |
||
| 125 | if (dadosSeparados.length > 0) { |
||
| 126 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[0])) { |
||
| 127 | if (dadosSeparados[0].contains("/")) { |
||
| 128 | ExtratoBancoDTO extratoBancoDTO = new ExtratoBancoDTO(); |
||
| 129 | extratoBancoDTO.setContaBancariaDTO(this.getContaBancariaDTO()); |
||
| 130 | extratoBancoDTO.setDataLancamento(DataUtil.retornarDataApartirString("dd/MM/yyyy", dadosSeparados[0])); |
||
| 131 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 132 | if (dadosSeparados.length >= 3) { |
||
| 133 | extratoBancoDTO.setDescricao(dadosSeparados[1]); |
||
| 134 | Double valor = 0.0; |
||
| 135 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[2])) { |
||
| 136 | valor = new Double(dadosSeparados[2].replace(".", "").replace(",", ".") ); |
||
| 137 | } |
||
| 138 | extratoBancoDTO.setValorTotal(valor); |
||
| 139 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.SEM_CATEGORIA.getValor()); |
||
| 140 | if (extratoBancoDTO.getDescricao().contains("DB")) { |
||
| 141 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.DEBITOS.getValor()); |
||
| 142 | } else if (extratoBancoDTO.getDescricao().contains("CD") || |
||
| 143 | extratoBancoDTO.getDescricao().contains("REDE EL ") || |
||
| 144 | extratoBancoDTO.getDescricao().contains("REDE MC ") || |
||
| 145 | extratoBancoDTO.getDescricao().contains("REDE VS ") || |
||
| 146 | extratoBancoDTO.getDescricao().contains("REDE HC ") || |
||
| 147 | extratoBancoDTO.getDescricao().contains("REDE AM ")) { |
||
| 148 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.CREDITOS.getValor()); |
||
| 402 | espaco | 149 | } else if (extratoBancoDTO.getDescricao().contains("TRANSF ESPACO") || |
| 150 | extratoBancoDTO.getDescricao().contains("TRANSF ESPACO")) { |
||
| 399 | espaco | 151 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS_ENTRE_CONTAS.getValor()); |
| 152 | } else if ((extratoBancoDTO.getDescricao().contains("TRANSF") || |
||
| 153 | extratoBancoDTO.getDescricao().contains("PIX QRS")) && |
||
| 154 | !extratoBancoDTO.getDescricao().contains("TRANSF 7951.24318-2") && |
||
| 155 | !extratoBancoDTO.getDescricao().contains("TRANSF 7951.99861-1") && |
||
| 156 | !extratoBancoDTO.getDescricao().contains("TRANSF ESPACO")) { |
||
| 379 | espaco | 157 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS.getValor()); |
| 158 | } else if (extratoBancoDTO.getDescricao().contains("APLIC AUT")) { |
||
| 159 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.OUTROS.getValor()); |
||
| 403 | espaco | 160 | } else if ((!extratoBancoDTO.getDescricao().contains("SALDO PARCIAL") && |
| 399 | espaco | 161 | !extratoBancoDTO.getDescricao().contains("TRANSF 7951.24318-2") && |
| 162 | !extratoBancoDTO.getDescricao().contains("TRANSF 7951.99861-1") && |
||
| 403 | espaco | 163 | !extratoBancoDTO.getDescricao().contains("SISPAG TRIBUTOS") && |
| 164 | !extratoBancoDTO.getDescricao().contains("SISPAG FORNECEDORES")) || |
||
| 165 | (extratoBancoDTO.getDescricao().contains("SISPAG SALARIOS"))) { |
||
| 379 | espaco | 166 | if (VerificadorUtil.naoEstaNulo(valor)) { |
| 167 | if (valor < 0.0) { |
||
| 168 | extratoBancoDTO.setValorTotal(valor * -1); |
||
| 169 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.PAGAMENTO.getValor()); |
||
| 403 | espaco | 170 | } else { |
| 171 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.OUTROS.getValor()); |
||
| 379 | espaco | 172 | } |
| 173 | } |
||
| 174 | } |
||
| 392 | espaco | 175 | if (!extratoBancoDTO.getTipoExtratoBanco().equals(TipoExtratoBanco.SEM_CATEGORIA.getValor())) { |
| 176 | extratoBancoDTO.setIndicadorCadastrar(true); |
||
| 177 | } else { |
||
| 178 | extratosExtraidosSemCategoria.add(extratoBancoDTO); |
||
| 179 | } |
||
| 180 | if (!dadoExtratoBancarioEhNovo(extratosAnexadosAnteriormente, extratoBancoDTO)) { |
||
| 181 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 182 | } |
||
| 183 | extratosExtraidos.add(extratoBancoDTO); |
||
| 379 | espaco | 184 | } |
| 392 | espaco | 185 | } |
| 186 | } |
||
| 187 | } |
||
| 188 | } |
||
| 189 | setDadosExtratoBancoSemCategoriaDTO(extratosExtraidosSemCategoria); |
||
| 190 | return extratosExtraidos; |
||
| 191 | } |
||
| 192 | |||
| 396 | espaco | 193 | private List<ExtratoBancoDTO> extrairDadosItauPagamentos(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
| 194 | List<ExtratoBancoDTO> extratosExtraidos = new ArrayList<ExtratoBancoDTO>(); |
||
| 195 | List<ExtratoBancoDTO> extratosExtraidosSemCategoria = new ArrayList<ExtratoBancoDTO>(); |
||
| 196 | for (String linha : this.getLinhasArquivo()) { |
||
| 197 | String[] dadosSeparados = linha.split(";"); |
||
| 198 | if (dadosSeparados.length > 4) { |
||
| 199 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[0])) { |
||
| 200 | if (dadosSeparados[4].contains("/")) { |
||
| 201 | ExtratoBancoDTO extratoBancoDTO = new ExtratoBancoDTO(); |
||
| 202 | extratoBancoDTO.setContaBancariaDTO(this.getContaBancariaDTO()); |
||
| 203 | extratoBancoDTO.setDataLancamento(DataUtil.retornarDataApartirString("dd/MM/yyyy", dadosSeparados[4])); |
||
| 204 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 205 | if (dadosSeparados.length >= 7) { |
||
| 399 | espaco | 206 | StringBuilder descricao = new StringBuilder(dadosSeparados[2]); |
| 207 | descricao.append(" ("); |
||
| 208 | descricao.append(dadosSeparados[0]); |
||
| 209 | descricao.append(" : "); |
||
| 210 | descricao.append(dadosSeparados[1]); |
||
| 211 | descricao.append(") "); |
||
| 212 | descricao.append(dadosSeparados[3]); |
||
| 213 | extratoBancoDTO.setDescricao(descricao.toString().replace("(- : -)", "").replace(" : -)", ")")); |
||
| 396 | espaco | 214 | Double valor = 0.0; |
| 215 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[5])) { |
||
| 216 | valor = new Double(dadosSeparados[5].replace(".", "").replace(",", ".") ); |
||
| 217 | } |
||
| 407 | espaco | 218 | if (valor < 0.0) { |
| 219 | valor = valor * -1; |
||
| 220 | } |
||
| 396 | espaco | 221 | extratoBancoDTO.setValorTotal(valor); |
| 222 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.SEM_CATEGORIA.getValor()); |
||
| 223 | if (extratoBancoDTO.getDescricao().contains("PIX") && |
||
| 399 | espaco | 224 | extratoBancoDTO.getDescricao().contains("21.494.821")) { |
| 407 | espaco | 225 | extratoBancoDTO.setValorTotal(valor); |
| 396 | espaco | 226 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS_ENTRE_CONTAS.getValor()); |
| 227 | } else if (extratoBancoDTO.getDescricao().contains("PIX")) { |
||
| 228 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS.getValor()); |
||
| 229 | } else if (!extratoBancoDTO.getDescricao().contains("SALDO PARCIAL")) { |
||
| 230 | if (VerificadorUtil.naoEstaNulo(valor)) { |
||
| 407 | espaco | 231 | extratoBancoDTO.setValorTotal(valor); |
| 396 | espaco | 232 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.PAGAMENTO.getValor()); |
| 233 | } |
||
| 234 | } |
||
| 235 | if (!extratoBancoDTO.getTipoExtratoBanco().equals(TipoExtratoBanco.SEM_CATEGORIA.getValor())) { |
||
| 236 | extratoBancoDTO.setIndicadorCadastrar(true); |
||
| 237 | } else { |
||
| 238 | extratosExtraidosSemCategoria.add(extratoBancoDTO); |
||
| 239 | } |
||
| 240 | if (!dadoExtratoBancarioEhNovo(extratosAnexadosAnteriormente, extratoBancoDTO)) { |
||
| 241 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 242 | } |
||
| 243 | extratosExtraidos.add(extratoBancoDTO); |
||
| 244 | } |
||
| 245 | } |
||
| 246 | } |
||
| 247 | } |
||
| 248 | } |
||
| 249 | setDadosExtratoBancoSemCategoriaDTO(extratosExtraidosSemCategoria); |
||
| 250 | return extratosExtraidos; |
||
| 251 | } |
||
| 252 | |||
| 392 | espaco | 253 | private List<ExtratoBancoDTO> extrairDadosBradesco(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
| 254 | List<ExtratoBancoDTO> extratosExtraidos = new ArrayList<ExtratoBancoDTO>(); |
||
| 255 | List<ExtratoBancoDTO> extratosExtraidosSemCategoria = new ArrayList<ExtratoBancoDTO>(); |
||
| 256 | for (String linha : this.getLinhasArquivo()) { |
||
| 257 | String[] dadosSeparados = linha.split(";"); |
||
| 258 | if (dadosSeparados.length > 0) { |
||
| 259 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[0])) { |
||
| 260 | if (dadosSeparados[0].contains("/")) { |
||
| 261 | ExtratoBancoDTO extratoBancoDTO = new ExtratoBancoDTO(); |
||
| 262 | extratoBancoDTO.setContaBancariaDTO(this.getContaBancariaDTO()); |
||
| 263 | extratoBancoDTO.setDataLancamento(DataUtil.retornarDataApartirString("dd/MM/yyyy", dadosSeparados[0])); |
||
| 264 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 265 | if (dadosSeparados.length >= 4) { |
||
| 266 | extratoBancoDTO.setDescricao(dadosSeparados[1]); |
||
| 267 | Double valor = 0.0; |
||
| 268 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[3])) { |
||
| 269 | valor = new Double(dadosSeparados[3].replace(".", "").replace(",", ".")); |
||
| 270 | } else if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[4])) { |
||
| 271 | valor = new Double(dadosSeparados[4].replace(".", "").replace(",", ".")); |
||
| 272 | } |
||
| 273 | extratoBancoDTO.setValorTotal(valor); |
||
| 274 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.SEM_CATEGORIA.getValor()); |
||
| 275 | if (extratoBancoDTO.getDescricao().contains("DEBITO REDECARD\"")) { |
||
| 276 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.DEBITOS.getValor()); |
||
| 277 | } else if (extratoBancoDTO.getDescricao().contains("CRED REDECARD") || |
||
| 278 | extratoBancoDTO.getDescricao().contains("CREDITO REDECARD") || |
||
| 279 | extratoBancoDTO.getDescricao().contains("AMEX REDECARD") || |
||
| 280 | extratoBancoDTO.getDescricao().contains("RECEBIMENTO FORNECEDOR") || |
||
| 281 | extratoBancoDTO.getDescricao().contains("ANTECIPACAO REDECARD") || |
||
| 282 | extratoBancoDTO.getDescricao().contains("REDE ATECIPACAO")) { |
||
| 283 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.CREDITOS.getValor()); |
||
| 396 | espaco | 284 | } else if (extratoBancoDTO.getDescricao().contains("TRANSFERENCIA PIX") && |
| 402 | espaco | 285 | (extratoBancoDTO.getDescricao().contains("21.494.821") || |
| 286 | extratoBancoDTO.getDescricao().contains("ESPACO CASE"))) { |
||
| 396 | espaco | 287 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS_ENTRE_CONTAS.getValor()); |
| 399 | espaco | 288 | } else if (extratoBancoDTO.getDescricao().contains("TRANSFERENCIA PIX") && |
| 402 | espaco | 289 | !extratoBancoDTO.getDescricao().contains("21.494.821") && |
| 290 | !extratoBancoDTO.getDescricao().contains("ESPACO CASE")) { |
||
| 392 | espaco | 291 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS.getValor()); |
| 292 | } else if (!extratoBancoDTO.getDescricao().contains("RESGATE INVEST FACIL") && |
||
| 293 | !extratoBancoDTO.getDescricao().contains("APLIC.INVEST FACIL") && |
||
| 294 | !extratoBancoDTO.getDescricao().contains("APLICACAO AUTOMATICA") && |
||
| 295 | !extratoBancoDTO.getDescricao().contains("BAIXA AUTOMATICA FUNDOS")) { |
||
| 296 | if (VerificadorUtil.naoEstaNulo(valor)) { |
||
| 297 | if (valor < 0.0) { |
||
| 399 | espaco | 298 | extratoBancoDTO.setValorTotal(valor); |
| 392 | espaco | 299 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.PAGAMENTO.getValor()); |
| 403 | espaco | 300 | } else { |
| 301 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.OUTROS.getValor()); |
||
| 392 | espaco | 302 | } |
| 303 | } |
||
| 304 | } |
||
| 305 | if (!extratoBancoDTO.getTipoExtratoBanco().equals(TipoExtratoBanco.SEM_CATEGORIA.getValor())) { |
||
| 306 | extratoBancoDTO.setIndicadorCadastrar(true); |
||
| 307 | } else { |
||
| 308 | extratosExtraidosSemCategoria.add(extratoBancoDTO); |
||
| 309 | } |
||
| 310 | if (!dadoExtratoBancarioEhNovo(extratosAnexadosAnteriormente, extratoBancoDTO)) { |
||
| 311 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 312 | } |
||
| 313 | extratosExtraidos.add(extratoBancoDTO); |
||
| 379 | espaco | 314 | } |
| 392 | espaco | 315 | } |
| 316 | } |
||
| 317 | } |
||
| 318 | } |
||
| 319 | setDadosExtratoBancoSemCategoriaDTO(extratosExtraidosSemCategoria); |
||
| 320 | return extratosExtraidos; |
||
| 321 | } |
||
| 322 | |||
| 323 | private List<ExtratoBancoDTO> extrairDadosNubank(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
||
| 324 | List<ExtratoBancoDTO> extratosExtraidos = new ArrayList<ExtratoBancoDTO>(); |
||
| 325 | List<ExtratoBancoDTO> extratosExtraidosSemCategoria = new ArrayList<ExtratoBancoDTO>(); |
||
| 326 | for (String linha : this.getLinhasArquivo()) { |
||
| 327 | String[] dadosSeparados = linha.split(","); |
||
| 328 | if (dadosSeparados.length > 0) { |
||
| 329 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[0])) { |
||
| 330 | if (dadosSeparados[0].contains("/")) { |
||
| 331 | ExtratoBancoDTO extratoBancoDTO = new ExtratoBancoDTO(); |
||
| 332 | extratoBancoDTO.setContaBancariaDTO(this.getContaBancariaDTO()); |
||
| 333 | extratoBancoDTO.setDataLancamento(DataUtil.retornarDataApartirString("dd/MM/yyyy", dadosSeparados[0])); |
||
| 334 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 335 | if (dadosSeparados.length >= 4) { |
||
| 336 | extratoBancoDTO.setDescricao(dadosSeparados[3]); |
||
| 337 | Double valor = 0.0; |
||
| 338 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[1])) { |
||
| 339 | valor = new Double(dadosSeparados[1]); |
||
| 340 | } |
||
| 341 | extratoBancoDTO.setValorTotal(valor); |
||
| 342 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.SEM_CATEGORIA.getValor()); |
||
| 399 | espaco | 343 | if (extratoBancoDTO.getDescricao().contains("TRANSFER") && |
| 344 | extratoBancoDTO.getDescricao().contains("21.494.821")) { |
||
| 345 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS_ENTRE_CONTAS.getValor()); |
||
| 346 | } else if (extratoBancoDTO.getDescricao().contains("RECEBIDA PELO PIX") || |
||
| 393 | espaco | 347 | extratoBancoDTO.getDescricao().contains("NCIA RECEBIDA")) { |
| 392 | espaco | 348 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS.getValor()); |
| 349 | } else if (VerificadorUtil.naoEstaNulo(valor)) { |
||
| 350 | if (valor < 0.0) { |
||
| 399 | espaco | 351 | extratoBancoDTO.setValorTotal(valor); |
| 392 | espaco | 352 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.PAGAMENTO.getValor()); |
| 403 | espaco | 353 | } else { |
| 354 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.OUTROS.getValor()); |
||
| 392 | espaco | 355 | } |
| 356 | } |
||
| 357 | if (!extratoBancoDTO.getTipoExtratoBanco().equals(TipoExtratoBanco.SEM_CATEGORIA.getValor())) { |
||
| 358 | extratoBancoDTO.setIndicadorCadastrar(true); |
||
| 359 | } else { |
||
| 360 | extratosExtraidosSemCategoria.add(extratoBancoDTO); |
||
| 361 | } |
||
| 362 | if (!dadoExtratoBancarioEhNovo(extratosAnexadosAnteriormente, extratoBancoDTO)) { |
||
| 363 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 364 | } |
||
| 365 | extratosExtraidos.add(extratoBancoDTO); |
||
| 380 | espaco | 366 | } |
| 379 | espaco | 367 | } |
| 368 | } |
||
| 369 | } |
||
| 370 | } |
||
| 380 | espaco | 371 | setDadosExtratoBancoSemCategoriaDTO(extratosExtraidosSemCategoria); |
| 379 | espaco | 372 | return extratosExtraidos; |
| 373 | } |
||
| 374 | |||
| 399 | espaco | 375 | private List<ExtratoBancoDTO> extrairDadosBnb(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente) { |
| 376 | List<ExtratoBancoDTO> extratosExtraidos = new ArrayList<ExtratoBancoDTO>(); |
||
| 377 | List<ExtratoBancoDTO> extratosExtraidosSemCategoria = new ArrayList<ExtratoBancoDTO>(); |
||
| 378 | for (String linha : this.getLinhasArquivo()) { |
||
| 379 | String[] dadosSeparados = linha.split(";"); |
||
| 380 | if (dadosSeparados.length > 0) { |
||
| 381 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[0])) { |
||
| 382 | if (dadosSeparados[0].contains("31")) { |
||
| 383 | ExtratoBancoDTO extratoBancoDTO = new ExtratoBancoDTO(); |
||
| 384 | extratoBancoDTO.setContaBancariaDTO(this.getContaBancariaDTO()); |
||
| 385 | extratoBancoDTO.setDataLancamento(DataUtil.retornarDataApartirString("dd/MM/yyyy", dadosSeparados[3])); |
||
| 386 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 387 | if (dadosSeparados.length >= 8) { |
||
| 388 | extratoBancoDTO.setDescricao(dadosSeparados[5]); |
||
| 389 | Double valor = 0.0; |
||
| 390 | if (VerificadorUtil.naoEstaNuloOuVazio(dadosSeparados[8])) { |
||
| 391 | valor = new Double(dadosSeparados[8].replace(".", "").replace(",", ".")); |
||
| 392 | } |
||
| 393 | extratoBancoDTO.setValorTotal(valor); |
||
| 394 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.SEM_CATEGORIA.getValor()); |
||
| 395 | if (extratoBancoDTO.getDescricao().contains("VIA PIX") && |
||
| 396 | extratoBancoDTO.getDescricao().contains("ESPACO CASE")) { |
||
| 397 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS_ENTRE_CONTAS.getValor()); |
||
| 398 | } else if (extratoBancoDTO.getDescricao().contains("VIA PIX")) { |
||
| 399 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.TRANSFERENCIAS.getValor()); |
||
| 400 | } else if (VerificadorUtil.naoEstaNulo(valor)) { |
||
| 401 | if (valor < 0.0) { |
||
| 402 | extratoBancoDTO.setValorTotal(valor); |
||
| 403 | extratoBancoDTO.setTipoExtratoBanco(TipoExtratoBanco.PAGAMENTO.getValor()); |
||
| 404 | } |
||
| 405 | } |
||
| 406 | if (!extratoBancoDTO.getTipoExtratoBanco().equals(TipoExtratoBanco.SEM_CATEGORIA.getValor())) { |
||
| 407 | extratoBancoDTO.setIndicadorCadastrar(true); |
||
| 408 | } else { |
||
| 409 | extratosExtraidosSemCategoria.add(extratoBancoDTO); |
||
| 410 | } |
||
| 411 | if (!dadoExtratoBancarioEhNovo(extratosAnexadosAnteriormente, extratoBancoDTO)) { |
||
| 412 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 413 | } |
||
| 414 | extratosExtraidos.add(extratoBancoDTO); |
||
| 415 | } |
||
| 416 | } |
||
| 417 | } |
||
| 418 | } |
||
| 419 | } |
||
| 420 | setDadosExtratoBancoSemCategoriaDTO(extratosExtraidosSemCategoria); |
||
| 421 | return extratosExtraidos; |
||
| 422 | } |
||
| 423 | |||
| 380 | espaco | 424 | private Boolean dadoExtratoBancarioEhNovo(List<ExtratoBancarioArquivoDTO> extratosAnexadosAnteriormente, ExtratoBancoDTO extratoBancoNovoDTO) { |
| 425 | List<ExtratoBancoDTO> extratosAnexados = new ArrayList<ExtratoBancoDTO>(); |
||
| 426 | for (ExtratoBancarioArquivoDTO extratoBancarioArquivoDTO : extratosAnexadosAnteriormente) { |
||
| 427 | if (extratoBancarioArquivoDTO.getContaBancariaDTO().getSequencial().equals(extratoBancoNovoDTO.getContaBancariaDTO().getSequencial())) { |
||
| 428 | extratosAnexados.addAll(extratoBancarioArquivoDTO.getDadosExtratoBancoDTO()); |
||
| 429 | break; |
||
| 430 | } |
||
| 431 | } |
||
| 432 | for (ExtratoBancoDTO extratoBancoDTO : extratosAnexados) { |
||
| 433 | if (DataUtils.datasIguais(extratoBancoDTO.getDataLancamento(), extratoBancoNovoDTO.getDataLancamento()) && |
||
| 434 | extratoBancoDTO.getDescricao().equals(extratoBancoNovoDTO.getDescricao()) && |
||
| 435 | extratoBancoDTO.getValorTotal().equals(extratoBancoNovoDTO.getValorTotal())) { |
||
| 436 | return false; |
||
| 437 | } |
||
| 438 | } |
||
| 439 | return true; |
||
| 440 | } |
||
| 441 | |||
| 442 | public void marcarTodosDadosExtrato() { |
||
| 379 | espaco | 443 | if (VerificadorUtil.naoEstaNuloOuVazio(getDadosExtratoBancoDTO())) { |
| 444 | for (ExtratoBancoDTO extratoBancoDTO : getDadosExtratoBancoDTO()) { |
||
| 380 | espaco | 445 | extratoBancoDTO.setIndicadorCadastrar(true); |
| 379 | espaco | 446 | } |
| 447 | } |
||
| 448 | } |
||
| 449 | |||
| 380 | espaco | 450 | public void desmarcarTodosDadosExtrato() { |
| 451 | if (VerificadorUtil.naoEstaNuloOuVazio(getDadosExtratoBancoDTO())) { |
||
| 452 | for (ExtratoBancoDTO extratoBancoDTO : getDadosExtratoBancoDTO()) { |
||
| 453 | extratoBancoDTO.setIndicadorCadastrar(false); |
||
| 454 | } |
||
| 455 | } |
||
| 456 | } |
||
| 457 | |||
| 296 | espaco | 458 | } |