Guest User

Untitled

a guest
May 25th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.27 KB | None | 0 0
  1. /*
  2.  * GravaNovasCargas.java
  3.  *
  4.  * Created on 12 de Janeiro de 2012, 15:51
  5.  */
  6.  
  7. package pckAcadBatch.CargaPosGraduacao.NovosUpdates;
  8. import pckAcadBatch.Parametros;
  9. import pckAcadBatch.Parametro;
  10. import java.io.*;
  11. import java.util.*;
  12. import pckAcadBatch.CargaPosGraduacao.*;
  13. import java.sql.*;
  14. import pckAcadNegocio.Disciplina.DisciplinaPos;
  15.  
  16. /**
  17.  *
  18.  * @author  gabrielr
  19.  *
  20.  */
  21. // classe maneira que usa a classe de parametrização mais maneira ainda
  22. // esta classe é responsável por gravar no banco o resultado gerado pelo batch 'EfetuarCarga' de pós-graduação
  23. // o arquivo gerado será lido, e seus dados serão transferidos para o banco
  24. // está classe é uma reposição do programa cobol VQ04
  25. public class GravaNovasCargas {
  26.  
  27.     Parametros parm;
  28.     Connection c;
  29.    
  30.     // configurando quais parametros esta aplicação receberá
  31.     public GravaNovasCargas() throws Throwable {
  32.        
  33.         // classe domal
  34.         parm = new Parametros();
  35.        
  36.         // primeiro, dizemos quais parametros vão ter em cada linha
  37.         // tem q ser na ordem certinha
  38.         // o nome do parametro pode ser qualquer coisa
  39.         parm.addParametro(new Parametro("danocat", 2));
  40.         parm.addParametro(new Parametro("cdisc", 5));
  41.         parm.addParametro(new Parametro("ncreddis", 3));
  42.         parm.addParametro(new Parametro("nsemdis", 2));
  43.         parm.addParametro(new Parametro("nhorlab", 4));
  44.         parm.addParametro(new Parametro("nhorprat", 4));
  45.         parm.addParametro(new Parametro("nhorsala", 4));
  46.         parm.addParametro(new Parametro("nhorteor", 4));
  47.         parm.addParametro(new Parametro("nhorestu", 4));
  48.         parm.addParametro(new Parametro("nhorsemi", 4));
  49.         parm.addParametro(new Parametro("nhorexer", 4));
  50.         parm.addParametro(new Parametro("nhorcampo", 4));
  51.         parm.addParametro(new Parametro("tnivdis", 1));
  52.         parm.addParametro(new Parametro("nhorpres", 4));
  53.         parm.addParametro(new Parametro("nhordist", 4));
  54.        
  55.     }
  56.    
  57.     public void gravaVacp38(String arquivo) throws Throwable {
  58.        
  59.         // método mágico !!!!!!!
  60.         // carrega uma lista de parametros do arquivo selecionado, tudo na maciota
  61.         List<Parametros> listaParms = parm.carregaParametrosDeArquivo(arquivo);
  62.        
  63.         // para cada linha, vou ter uma instancia de parametros diferentes com os dados da linha
  64.         // pois cada linha referencia uma disciplina diferente
  65.         for(Parametros esteParm : listaParms) { // cada parametro, cada linha do arquivo
  66.            
  67.             // corrigindo bug do milênio, wow !
  68.             int ano = esteParm.getInt("danocat");
  69.             if(ano > 50)                                                    
  70.                 ano+=1900;                                            
  71.             else                                                            
  72.                 ano+= 2000;  
  73.            
  74.             ///////////////////////////////////////////////////////////////////
  75.             // instanciando um objeto disciplina apartir dos parametros dados//
  76.             ///////////////////////////////////////////////////////////////////
  77.             DisciplinaPos disc = new DisciplinaPos();
  78.             disc.setAnoUltimoCatalogo(ano);                              
  79.             disc.setCodDisciplina(esteParm.getString("cdisc"));        
  80.             disc.setNumeroCreditos(esteParm.getInt("ncreddis"));        
  81.             disc.setNumeroSemanas(esteParm.getInt("nsemdis"));          
  82.             disc.setHorasTotaisLaboratorio(esteParm.getInt("nhorlab"));
  83.             disc.setHorasTotaisPraticas(esteParm.getInt("nhorprat"));    
  84.             disc.setHorasTotaisSalaAula(esteParm.getInt("nhorsala"));  
  85.             disc.setHorasTotaisTeoricas(esteParm.getInt("nhorteor"));    
  86.             disc.setHorasTotaisEstudoCasa(esteParm.getInt("nhorestu"));
  87.             disc.setHorasTotaisSeminario(esteParm.getInt("nhorsemi"));  
  88.             disc.setHorasTotaisExercicio(esteParm.getInt("nhorexer"));
  89.             disc.setHorasTotaisCampo(esteParm.getInt("nhorcampo"));    
  90.             disc.setNivelDisciplina(esteParm.getString("tnivdis"));    
  91.             disc.setHorasTotaisPresencial(esteParm.getInt("nhorpres"));  
  92.             disc.setHorasTotaisAulaDistancia(esteParm.getInt("nhordist"));
  93.            
  94.             // se a disc ja existe, damos update, senão criamos uma nova disciplina
  95.             boolean jaExiste = disc.mtDisciplinaPresenteEmCatalogo(getConexaoBD(), esteParm.getString("cdisc"), ano, esteParm.getString("tnivdis"));
  96.             if(jaExiste) {
  97.                 disc.mtAtualizarDisciplinaCatalogo(this.getConexaoBD());
  98.             } else {
  99.                  disc.mtCriarDisciplinaCatalogo(this.getConexaoBD());
  100.             }
  101.         }
  102.     }
  103.    
  104.     // obtem a conexao com o banco...
  105.     public Connection getConexaoBD() throws Throwable {
  106.         if(c==null) {
  107.             pckAdcoClasseComum.ConexaoBanco.ConexaoBanco conexaoBanco = new pckAdcoClasseComum.ConexaoBanco.ConexaoBanco();
  108.             pckAcadClasseComum.SenhaSistema.SenhaSistema senha = new pckAcadClasseComum.SenhaSistema.SenhaSistema();
  109.             c = conexaoBanco.mtGetConexao(senha.getUsuario(), senha.getSenha());
  110.         }
  111.         return c;
  112.     }
  113.    
  114.    
  115.    
  116.    
  117.    
  118.    
  119. }
Add Comment
Please, Sign In to add comment