Advertisement
Guest User

Untitled

a guest
Jan 13th, 2016
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 10.45 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package bddad_g8;
  7.  
  8. import java.math.BigDecimal;
  9. import java.sql.CallableStatement;
  10. import java.sql.Connection;
  11. import java.sql.Date;
  12. import java.sql.DriverManager;
  13. import java.sql.ResultSet;
  14. import java.sql.SQLException;
  15. import java.sql.Statement;
  16. import javax.swing.JOptionPane;
  17. import oracle.jdbc.OracleTypes;
  18.  
  19. /**
  20.  *
  21.  * @author Daniel
  22.  */
  23. public class Ligação {
  24.  
  25.     public Ligação() {
  26.  
  27.     }
  28.  
  29.     public void createContratoAluguer(int codigo, BigDecimal preco_mensal,
  30.                                       int codigo_cliente, int cod_angariacao,
  31.                                       int codigo_funcionario, int comissao,
  32.                                       int min_meses, int max_meses) {
  33.         try {
  34.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  35.             Class.forName("oracle.jdbc.driver.OracleDriver");
  36.             Connection con = DriverManager.
  37.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  38.             Statement stmt = con.createStatement();
  39.             stmt.
  40.                 executeUpdate("insert into contrato_aluguer" + "(cod_contrato_alug, preco_mensal,"
  41.                     + "                                    cod_cliente_arren, cod_angariacao,"
  42.                     + "                                    cod_funcionario,comissao,"
  43.                     + "                                    min_meses, max_meses,mes_atual) values (" + codigo + "," + preco_mensal + "," + codigo_cliente + "," + cod_angariacao + "," + codigo_funcionario + "," + comissao + "," + min_meses + "," + max_meses + "," + 0 + ")");
  44.             stmt.close();
  45.             con.close();
  46.             JOptionPane.
  47.                 showMessageDialog(null, "Foi adicionado com sucesso", "Sucesso", JOptionPane.INFORMATION_MESSAGE);
  48.         } catch (SQLException e) {
  49.             System.out.println("Erro nao criou");
  50.             while (e != null) {
  51.                 System.out.println(e.getSQLState());
  52.                 System.out.println(e.getMessage());
  53.                 System.out.println(e.getErrorCode());
  54.                 e = e.getNextException();
  55.             }
  56.         } catch (ClassNotFoundException ex) {
  57.         }
  58.     }
  59.  
  60.     public String listaFuncionario() {
  61.         String res = "";
  62.         try {
  63.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  64.             Class.forName("oracle.jdbc.driver.OracleDriver");
  65.             Connection con = DriverManager.
  66.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  67.             Statement stmt = con.createStatement();
  68.             ResultSet rs = stmt.
  69.                 executeQuery("select f.nome, a.nome, a2.nome, t.data_transfer from Funcionario f , tranfer_agentes t, agencia a, agencia a2 where f.cod_funcionario = t.cod_funcionario and a.cod_agencia = t.agencia_atual and a2.cod_agencia = t.agencia_prec");
  70.             res += ("<html><body><h1>Lista de Funcionarios</h1><table border=1><tr><th>Funcionario:</th><th>Agencia Atual:</th><th>Agencia Anterior:</th><th>Data:</th></tr>");
  71.             while (rs.next()) {
  72.                 String func = rs.getString(1);
  73.                 String agencia_atual = rs.getString(2);
  74.                 String agencia_prec = rs.getString(3);
  75.                 Date data = rs.getDate(4);
  76.                 String linha = "<tr><td>" + func + "</td><td>" + agencia_atual + "</td><td>" + agencia_prec + "</td><td>" + data + "</td></tr>";
  77.                 res += linha;
  78.             }
  79.             res += "</table></body></html>";
  80.             rs.close();
  81.             con.close();
  82.         } catch (SQLException sqle) {
  83.             System.out.println("ERRO");
  84.         } catch (ClassNotFoundException ex) {
  85.         }
  86.         return res;
  87.     }
  88.  
  89.     public String promessasCompra() {
  90.         String res = "";
  91.         try {
  92.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  93.             Class.forName("oracle.jdbc.driver.OracleDriver");
  94.             Connection con = DriverManager.
  95.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  96.             Statement stmt = con.createStatement();
  97.             ResultSet rs = stmt.
  98.                 executeQuery("SELECT cc.cod_contrato_compra,cc.data,cc.preco_prometido,cc.sinal,cc.preco_remanescente,cc.data_limite,C.nome,C1.nome \n"
  99.                     + "FROM Contrato_Compra cc, Cliente C, Cliente c1\n"
  100.                     + "where cc.data<sysdate and cc.data>add_months(sysdate,-60) and cc.cod_cliente_compra=C.cod_cliente and cc.cod_cliente_vende=C1.cod_cliente\n"
  101.                     + "order by cc.cod_cliente_vende");
  102.             res += "<html><table><tr><td><b>Codigo</b></td><td><b>Data</b></td><td><b>Preço prometido</b></td><td><b>Sinal</b<</td><td><b>Preço Remanescente</b></td><td><b>Data Limite</b></td><td><b>Comprador</b></td><td><b>Vendedor</b></td></tr>";
  103.             while (rs.next()) {
  104.                 int codigo = rs.getInt("cod_contrato_compra");
  105.                 Date data = rs.getDate("data");
  106.                 int preço_prometido = rs.getInt("preco_prometido");
  107.                 int sinal = rs.getInt("sinal");
  108.                 int preço_remanescente = rs.getInt("preco_remanescente");
  109.                 Date data_limite = rs.getDate("data_limite");
  110.                 String cod_cliente_compra = rs.getString(7);
  111.                 String cod_cliente_venda = rs.getString(8);
  112.                 res += "<tr><td>" + codigo + "</td><td>" + data + "</td><td>" + preço_prometido + "</td><td>" + sinal + "</td><td>" + preço_remanescente
  113.                     + "</td><td>" + data_limite + "</td><td>" + cod_cliente_compra + "</td><td>" + cod_cliente_venda + "</td></tr>";
  114.  
  115.             }
  116.             res += "</table>";
  117.             rs.close();
  118.             stmt.close();
  119.             con.close();
  120.         } catch (SQLException sqle) {
  121.             System.out.println("ERRO");
  122.         } catch (ClassNotFoundException ex) {
  123.         }
  124.         return res;
  125.     }
  126.  
  127.     public void registarContratoPromessa(int cod_contrato, int cod_func,
  128.                                          int lucro) {
  129.         String res = "";
  130.         try {
  131.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  132.             Class.forName("oracle.jdbc.driver.OracleDriver");
  133.             Connection con = DriverManager.
  134.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  135.             CallableStatement rs1 = con.prepareCall("{call menuex1 (?,?,?)}");
  136.             rs1.setInt(1, lucro);
  137.             rs1.setInt(2, cod_func);
  138.             rs1.setInt(3, cod_contrato);
  139.             rs1.executeUpdate();
  140.             rs1.close();
  141.             con.close();
  142.             JOptionPane.
  143.                 showMessageDialog(null, "Foi adicionado com sucesso", "Sucesso", JOptionPane.INFORMATION_MESSAGE);
  144.         } catch (SQLException e) {
  145.             System.out.println("Erro nao criou");
  146.             while (e != null) {
  147.                 System.out.println(e.getSQLState());
  148.                 System.out.println(e.getMessage());
  149.                 System.out.println(e.getErrorCode());
  150.                 e = e.getNextException();
  151.             }
  152.         } catch (ClassNotFoundException ex) {
  153.         }
  154.     }
  155.  
  156.     public String promessasCompraParaRegistar() {
  157.         String res = "";
  158.         try {
  159.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  160.             Class.forName("oracle.jdbc.driver.OracleDriver");
  161.             Connection con = DriverManager.
  162.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  163.             Statement stmt = con.createStatement();
  164.             ResultSet rs = stmt.
  165.                 executeQuery("SELECT distinct cc.cod_contrato_compra,cc.data,cc.preco_prometido,cc.sinal,cc.preco_remanescente,cc.data_limite,C.nome,C1.nome\n"
  166.                     + "FROM Contrato_Compra cc, Cliente C, Cliente c1 where cc.data<sysdate and cc.data>add_months(sysdate,-60) and cc.cod_cliente_compra=C.cod_cliente\n"
  167.                     + "and cc.cod_cliente_vende=C1.cod_cliente and cc.cod_contrato_compra NOT IN (Select com.cod_contrato_compra from Comercialização com)");
  168.             res += "<html><table><tr><td><b>Codigo</b></td><td><b>Data</b></td><td><b>Preço prometido</b></td><td><b>Sinal</b<</td><td><b>Preço Remanescente</b></td><td><b>Data Limite</b></td><td><b>Comprador</b></td><td><b>Vendedor</b></td></tr>";
  169.             while (rs.next()) {
  170.                 int codigo = rs.getInt("cod_contrato_compra");
  171.                 Date data = rs.getDate("data");
  172.                 int preço_prometido = rs.getInt("preco_prometido");
  173.                 int sinal = rs.getInt("sinal");
  174.                 int preço_remanescente = rs.getInt("preco_remanescente");
  175.                 Date data_limite = rs.getDate("data_limite");
  176.                 String cod_cliente_compra = rs.getString(7);
  177.                 String cod_cliente_venda = rs.getString(8);
  178.                 res += "<tr><td>" + codigo + "</td><td>" + data + "</td><td>" + preço_prometido + "</td><td>" + sinal + "</td><td>" + preço_remanescente
  179.                     + "</td><td>" + data_limite + "</td><td>" + cod_cliente_compra + "</td><td>" + cod_cliente_venda + "</td></tr>";
  180.  
  181.             }
  182.             res += "</table>";
  183.             rs.close();
  184.             stmt.close();
  185.             con.close();
  186.         } catch (SQLException sqle) {
  187.             System.out.println("ERRO");
  188.         } catch (ClassNotFoundException ex) {
  189.         }
  190.         return res;
  191.     }
  192.  
  193.     public String nomeproprietarios() {
  194.         String res = "";
  195.         try {
  196.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  197.             Class.forName("oracle.jdbc.driver.OracleDriver");
  198.             Connection con = DriverManager.
  199.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  200.             Statement stmt = con.createStatement();
  201.             ResultSet rs = stmt.
  202.                 executeQuery("select distinct P.nome from Propritario p, \"Proprietario/Imovel\" pc,Imovel I,Angariacao A\n"
  203.                     + "where p.cod_proprietario = pc.propritario_cod_proprietario and pc.imovel_cod_imovel=I.cod_imovel \n"
  204.                     + "and I.cod_imovel=A.imovel_cod_imovel and A.cod_angariacao NOT IN (select cc.angariacao_cod_angariacao from Contrato_compra cc)");
  205.             while (rs.next()) {
  206.                 res += rs.getString("nome") + "\n";
  207.  
  208.             }
  209.             rs.close();
  210.             stmt.close();
  211.             con.close();
  212.         } catch (SQLException sqle) {
  213.             System.out.println("ERRO");
  214.         } catch (ClassNotFoundException ex) {
  215.         }
  216.         return res;
  217.     }
  218.  
  219.     public String listaImoveisVendaPorPropr(String nome) {
  220.         String res = "";
  221.         try {
  222.             DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  223.             Class.forName("oracle.jdbc.driver.OracleDriver");
  224.             Connection con = DriverManager.
  225.                 getConnection("jdbc:oracle:thin://@gandalf.dei.isep.ipp.pt:1521/pdborcl", "bddad15_db8", "qwerty");
  226.             CallableStatement rs1 = con.prepareCall("{call menuex2 (?,?)}");
  227.             rs1.registerOutParameter(2, OracleTypes.CURSOR);
  228.             rs1.setString(1, nome);
  229.             rs1.executeUpdate();
  230.             ResultSet rs = (ResultSet) rs1.getObject(2);
  231.  
  232.             res += "<html><table><tr><td><b>Codigo</b></td><td><b>Tipo</b></td><td><b>Preço minimo</b></td><td><b>Concelho</b></td></tr>";
  233.             while (rs.next()) {
  234.                 int codigo = rs.getInt("cod_imovel");
  235.                 String tipo = rs.getString("TIPO_IMOVEL_TIPO_IMOVEL");
  236.                 int preço_minimo = rs.getInt("PRECO_MIN");
  237.                 String concelho = rs.getString("concelho");
  238.  
  239.                 res += "<tr><td>" + codigo + "</td><td>" + tipo + "</td><td>" + preço_minimo + "</td><td>" + concelho + "</td></tr>";
  240.  
  241.             }
  242.             res += "</table>";
  243.             rs.close();
  244.             rs1.close();
  245.             con.close();
  246.         } catch (SQLException sqle) {
  247.             System.out.println("ERRO");
  248.         } catch (ClassNotFoundException ex) {
  249.         }
  250.         return res;
  251.     }
  252. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement