Advertisement
Guest User

Untitled

a guest
Jan 20th, 2020
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.80 KB | None | 0 0
  1.  
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.FileReader;
  5. import java.io.IOException;
  6. import java.util.ArrayList;
  7.  
  8. import Layout.Detalhe;
  9. import Layout.Header;
  10. import Layout.Trailler;
  11.  
  12.  
  13. public class Processamento {
  14.  
  15.  
  16. public Processamento(String nArquivo, ArrayList<Detalhe> listaVendas) {
  17. Header headerArquivo = new Header();
  18. Trailler traillerArquivo = new Trailler();
  19. try {
  20. FileReader arq = new FileReader(nArquivo);
  21. BufferedReader bf = new BufferedReader(arq);
  22. String registro = bf.readLine();
  23. while(registro != null) {
  24. int tipoRegistro = verificaRegistro(registro);
  25.  
  26. if(tipoRegistro == 0 ) {
  27. headerArquivo.setTipoRegistro(Integer.parseInt(registro.substring(0,1)));
  28. headerArquivo.setEstabelecimento(Long.parseLong(registro.substring(1,11)));
  29.  
  30. headerArquivo.setSequencia(Integer.parseInt(registro.substring(35,42)));
  31. headerArquivo.setEmpresaAdquirinte(registro.substring(42,47));
  32. headerArquivo.setTipoExtrato(Integer.parseInt(registro.substring(47,49)));
  33. headerArquivo.setFiller(registro.substring(49,71));
  34. headerArquivo.setVersaoLayout(registro.substring(70,75));
  35. headerArquivo.setVersaoRelease(registro.substring(73,79));
  36. headerArquivo.setUsoFuturo(registro.substring(78,530));
  37. }else if (tipoRegistro == 1){
  38.  
  39. Detalhe venda = new Detalhe();
  40. //registro.substring() pega o valor inicial e o valor final-1
  41. venda.setTipoRegistro(Integer.parseInt(registro.substring(0,1)));
  42. venda.setEstabelecimento(Integer.parseInt(registro.substring(1,11)));
  43. //venda.setDataInicialTransacao(Integer.parseInt(registro.substring(11,19)));
  44. //venda.setDataEvento(Integer.parseInt(registro.substring(19,27)));
  45. //venda.setHoraEvento(Integer.parseInt(registro.substring(27,33))); // vai ate o 33
  46. venda.setTipoEvento(Integer.parseInt(registro.substring(33,35)));
  47. venda.setTipoTransacao(Integer.parseInt(registro.substring(35,37)));
  48. venda.setNumeroSerieLeitor(registro.substring(37,45));
  49. venda.setCodTransacao(registro.substring(45,77));
  50. venda.setCodPedido(registro.substring(77,97));
  51. venda.setValorTotalTransacao(Long.parseLong(registro.substring(97,110)));
  52. venda.setValorParcela(Long.parseLong(registro.substring(110,123)));
  53. venda.setPagamento(registro.substring(123,124));
  54. venda.setPlano(registro.substring(124,126));
  55. venda.setParcela(registro.substring(126,128));
  56. venda.setQtdParcela(Integer.parseInt(registro.substring(128,130)));
  57. //venda.setDataPrevistaPagamento(Integer.parseInt(registro.substring(130,138)));
  58. venda.setTaxaParcelamentoComprador(Long.parseLong(registro.substring(138,151)));
  59. venda.setTarifaBoleto(Long.parseLong(registro.substring(151,164)));
  60. venda.setValorOriginalTransacao(Long.parseLong(registro.substring(164,177)));
  61. venda.setTaxaParcelamentoVendedor(Long.parseLong(registro.substring(177,190)));
  62. venda.setTaxaIntermediacao(Long.parseLong(registro.substring(190,203)));
  63. venda.setTarifaIntermediacao(Long.parseLong(registro.substring(203,216)));
  64. venda.setTarifaBoletoVendedor(Long.parseLong(registro.substring(216,229)));
  65. venda.setRepasseAplicacao(Long.parseLong(registro.substring(229,242)));
  66. venda.setValorLiquidoTransacao(Long.parseLong(registro.substring(242,255)));
  67. venda.setStatusPagamento(Integer.parseInt(registro.substring(255,257)));
  68. venda.setFiller(registro.substring(257,259));
  69. venda.setMeioPagamento(Integer.parseInt(registro.substring(259,261)));
  70. venda.setInstituicaoFinanceira(registro.substring(261,291));
  71. venda.setCanalEntrada(registro.substring(291,293));
  72. venda.setLeitor(Integer.parseInt(registro.substring(293,295)));
  73. venda.setMeioCaptura((Integer.parseInt(registro.substring(295,297))));
  74. venda.setNumeroLogico(registro.substring(297,329));
  75. venda.setNsu(registro.substring(329,340));
  76. venda.setFiller(registro.substring(340,343));
  77. venda.setCartaoBin(registro.substring(343,349));
  78. venda.setCartaoHolder(registro.substring(349,353));
  79. venda.setCodAutorizacao(registro.substring(353,359));
  80. venda.setCodCV(registro.substring(359,391));
  81. //FALTA O USO FUTURO
  82.  
  83. listaVendas.add(venda);
  84. }else if(tipoRegistro == 9) {
  85.  
  86. traillerArquivo.setTipoRegistro(Integer.parseInt(registro.substring(0,1)));
  87. traillerArquivo.setTotalRegistro(Integer.parseInt(registro.substring(1,12)));
  88. traillerArquivo.setUsoFuturo(registro.substring(12,530));
  89. }else if(tipoRegistro == -1) {
  90. System.out.println("Erro na leitura");
  91. }
  92.  
  93. registro = bf.readLine();
  94. }
  95.  
  96. bf.close();
  97. }catch (IOException e) {
  98. System.out.println(e);
  99. }
  100.  
  101. }
  102.  
  103.  
  104.  
  105. public Integer verificaRegistro(String registro) {
  106. return Integer.parseInt(registro.split("")[0]);
  107. }
  108.  
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement