Advertisement
Guest User

Untitled

a guest
Nov 24th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.27 KB | None | 0 0
  1. package pk1;
  2.  
  3. import javax.swing.*;
  4. import javax.swing.event.MenuEvent;
  5. import javax.swing.event.MenuListener;
  6. import java.awt.*;
  7. import java.awt.event.*;
  8. import java.sql.*;
  9.  
  10. public class principal1 {
  11.  
  12. JFrame f,fcad; // Set frame, panel ...
  13. JPanel plogin,pcad,pbusca,pcadastro;
  14. JLabel l1, lnick, lsenha, nome, senha1, nick, usrativo, cpf, fone, cnpj, empresa, cidade, end, admcad, lbusca;
  15. JButton b1, blogin,bbuscar;
  16. JTextField tusr, textnome, textnick, textcpf, textfone,textcnpj, textempresa, textcidade, textend, textadmcad,tbusca;
  17. JPasswordField psf, senha;
  18. JMenuBar barra;
  19. JMenu cadastro, usuarios, relatorios, info, sobre;
  20. JMenuItem fisica, juridica, listar, administrador,buscar;
  21. JCheckBox adm;
  22. JList listI;
  23. static int admstate;
  24. static String isadm;
  25.  
  26.  
  27. public principal1() {
  28.  
  29. // novo frame teste
  30. f = new JFrame ("Gerenciamentos BDP");
  31. // chama o JPanel login
  32. login();
  33. //cadastro("Juridica");
  34. // definições básicas do frame
  35. f.setSize(800, 700);
  36. f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  37. f.setResizable(false);
  38. f.setVisible(true);
  39. f.setLocationRelativeTo(null);
  40. }
  41.  
  42. public void cadastro(String a){
  43.  
  44.  
  45. final String driver = "com.mysql.jdbc.Driver"; //Classe do Driver JDBC
  46. fcad = new JFrame("Cadastro");
  47.  
  48. pcadastro = new JPanel();
  49.  
  50. //Criando os locais para inserção dos dados
  51. String tipo;
  52. tipo = a;
  53.  
  54. nome = new JLabel("NOME:");
  55. textnome = new JTextField(30);
  56. nick = new JLabel("NICK:");
  57. textnick = new JTextField(30);
  58. senha1 = new JLabel("SENHA:");
  59. senha = new JPasswordField(30);
  60. cpf = new JLabel("CPF:");
  61. textcpf = new JTextField(30);
  62. fone = new JLabel("FONE:");
  63. textfone = new JTextField(30);
  64. cnpj = new JLabel("CNPJ:");
  65. textcnpj = new JTextField(30);
  66. empresa = new JLabel("EMPRESA:");
  67. textempresa = new JTextField(30);
  68. cidade = new JLabel("CIDADE:");
  69. textcidade = new JTextField(30);
  70. end = new JLabel("END.:");
  71. textend = new JTextField(30);
  72. admcad = new JLabel("ADM CAD.:");
  73. textadmcad = new JTextField(30);
  74. l1 = new JLabel("CADASTRO");
  75.  
  76. adm = new JCheckBox();
  77. adm.setText("ADICIONAR COMO ADM");
  78. adm.setBounds(470,480,180,25);
  79. System.out.println(tipo);
  80.  
  81. switch(tipo){
  82. case "Fisica":
  83. textnome.setEnabled(true);
  84. textcpf.setEnabled(true);
  85. textfone.setEnabled(true);
  86. textnick.setEnabled(false);
  87. textcnpj.setEnabled(false);
  88. textcidade.setEnabled(false);
  89. textempresa.setEnabled(false);
  90. textend.setEnabled(false);
  91. senha.setEnabled(false);
  92. textadmcad.setEnabled(false);
  93. break;
  94.  
  95. case "Juridica":
  96. textnome.setEnabled(true);
  97. textcnpj.setEnabled(true);
  98. textfone.setEnabled(true);
  99. textempresa.setEnabled(true);
  100. textcidade.setEnabled(true);
  101. textend.setEnabled(true);
  102. textnick.setEnabled(false);
  103. textcpf.setEnabled(false);
  104. senha.setEnabled(false);
  105. textadmcad.setEnabled(false);
  106. break;
  107.  
  108. case "Adm":
  109. textnome.setEnabled(true);
  110. textnick.setEnabled(true);
  111. senha.setEnabled(true);
  112. textadmcad.setEnabled(true);
  113. textcpf.setEnabled(false);
  114. textcnpj.setEnabled(false);
  115. textcidade.setEnabled(false);
  116. textempresa.setEnabled(false);
  117. textend.setEnabled(false);
  118. textfone.setEnabled(false);
  119. pcadastro.add(adm);
  120. break;
  121.  
  122. case " ":
  123. textnome.setEnabled(false);
  124. textnick.setEnabled(false);
  125. senha.setEnabled(false);
  126. textadmcad.setEnabled(false);
  127. textcpf.setEnabled(false);
  128. textcnpj.setEnabled(false);
  129. textcidade.setEnabled(false);
  130. textempresa.setEnabled(false);
  131. textend.setEnabled(false);
  132. textfone.setEnabled(false);
  133. break;
  134. }
  135.  
  136. //Criando o botão
  137. JButton b1 = new JButton(" SALVAR ");
  138. //Ação do botão para inserir no banco
  139. b1.addActionListener(new ActionListener() {
  140. public void actionPerformed(ActionEvent e) {
  141.  
  142. if(adm.isSelected()){
  143. if(isadm.equals("1"))
  144. admstate=1;
  145. else{
  146. adm.setSelected(false);
  147. admstate=0;
  148. JOptionPane.showMessageDialog(null, "O LOGIN ATUAL NÃO PERMITE CADASTRAR COMO ADM", "ERRO!", JOptionPane.ERROR_MESSAGE);
  149. }
  150. }
  151.  
  152. switch(tipo){
  153. case "Fisica":
  154. PessoaFisica pf = new PessoaFisica (textnome.getText(), textcpf.getText(), textfone.getText(), tipo);
  155. pf.insere();
  156. break;
  157.  
  158. case "Juridica":
  159. PessoaJuridica pj = new PessoaJuridica (textnome.getText(), textcnpj.getText(), textfone.getText(), tipo, textcidade.getText(), textempresa.getText(), textend.getText());
  160. pj.insere();
  161. break;
  162.  
  163. case "Adm":
  164. String senha1 = String.valueOf(senha.getPassword());
  165. Adm a = new Adm(textnome.getText(), textnick.getText(), senha1, tipo, admcad.getText(), admstate );
  166. a.insere();
  167. break;
  168. }
  169. }
  170. });
  171.  
  172. //Definição de tamanho, fonte cor ...
  173.  
  174. l1.setBounds(135, 100, 400, 50);
  175. l1.setForeground(Color.RED);
  176. l1.setFont(new Font("Arial", Font.BOLD, 35));
  177.  
  178. pcadastro.setBackground(Color.WHITE);
  179. pcadastro.setLayout(null);
  180. pcadastro.add(nome);
  181. pcadastro.add(textnome);
  182. pcadastro.add(nick);
  183. pcadastro.add(textnick);
  184. pcadastro.add(senha);
  185. pcadastro.add(senha1);
  186. pcadastro.add(cpf);
  187. pcadastro.add(textcpf);
  188. pcadastro.add(fone);
  189. pcadastro.add(textfone);
  190. pcadastro.add(cnpj);
  191. pcadastro.add(textcnpj);
  192. pcadastro.add(empresa);
  193. pcadastro.add(textempresa);
  194. pcadastro.add(cidade);
  195. pcadastro.add(textcidade);
  196. pcadastro.add(end);
  197. pcadastro.add(textend);
  198. pcadastro.add(admcad);
  199. pcadastro.add(textadmcad);
  200. pcadastro.add(b1);
  201. pcadastro.add(l1);
  202.  
  203. fcad.getContentPane().add(pcadastro);
  204. fcad.setSize(540, 600);
  205. fcad.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
  206. fcad.setResizable(false);
  207. fcad.setVisible(true);
  208. fcad.setLocationRelativeTo(null);
  209. b1.setFont(new Font("Arial", Font.BOLD, 25));
  210.  
  211. nome.setBounds(20, 200, 40, 10);
  212. nick.setBounds(270, 200, 40, 10);
  213. cpf.setBounds(20, 260, 40, 10);
  214. cnpj.setBounds(270, 260, 40, 10);
  215. empresa.setBounds(270, 320, 60, 10);
  216. cidade.setBounds(20, 320, 60, 10);
  217. end.setBounds(20, 380, 70, 10);
  218. fone.setBounds(270, 380, 60, 10);
  219. senha1.setBounds(20, 440, 60, 10);
  220. admcad.setBounds(270, 440, 60, 10);
  221.  
  222. adm.setBounds(190, 470, 200, 20);
  223.  
  224. textnome.setBounds(60, 195, 200, 25);
  225. textnick.setBounds(310, 195, 200, 25);
  226. textcpf.setBounds(60, 255, 200, 25);
  227. textcnpj.setBounds(310, 255, 200, 25);
  228. textcidade.setBounds(70, 315, 190, 25);
  229. textempresa.setBounds(335, 315, 175, 25);
  230. textend.setBounds(60,375,200,25);
  231. textfone.setBounds(310,375,200,25);
  232. senha.setBounds(70,435,195,25);
  233. textadmcad.setBounds(335,435,175,25);
  234.  
  235. b1.setBounds(180, 500, 180, 50);
  236. l1.setBounds(165, 80, 450, 50);
  237.  
  238. }
  239.  
  240. class PessoaFisica {
  241.  
  242. final String driver = "com.mysql.jdbc.Driver"; //Classe do Driver JDBC
  243.  
  244. public String nome, cpf_cnpj, fone,tipo;
  245.  
  246. public PessoaFisica (String _nome, String _cpf_cnpj, String _fone, String _tipo)
  247. {
  248.  
  249. this.nome= _nome;
  250. this.cpf_cnpj= _cpf_cnpj;
  251. this.fone= _fone;
  252. this.tipo = _tipo;
  253.  
  254. }
  255.  
  256. public void insere(){
  257. try {
  258. Class.forName(driver); //Carrega o Driver
  259. Connection conn = DriverManager.getConnection("jdbc:Mysql://localhost:3306/bd", "root", "root"); //Obtém a conexão com o banco
  260. //Criar um statement para podermos mandar um SQL para o banco
  261. Statement stmt1 = conn.createStatement(); //Permite a execução do comando
  262.  
  263. if(nome.equals("") || cpf_cnpj.equals("") || fone.equals("") ) {
  264. JOptionPane.showMessageDialog(null, "Preencha todos os campos");
  265. }
  266.  
  267. else {
  268.  
  269. String comando = "INSERT into bd.cadastropf values('" + tipo + "','" + nome + "','" + cpf_cnpj + "','" + fone + "');";
  270. stmt1.execute(comando);
  271. JOptionPane.showMessageDialog(null, "Inserção OK");
  272. fcad.dispose();
  273. login();
  274. }
  275.  
  276. } catch (ClassNotFoundException ex) {
  277. JOptionPane.showMessageDialog(null, "Não foi possível carregar o driver.");
  278. ex.printStackTrace();
  279. } catch (SQLException ex) {
  280. int errCode = ex.getErrorCode();
  281. System.out.println(errCode);
  282. if(errCode == 1062){
  283. JOptionPane.showMessageDialog(null, "Entrada: " + textnome.getText() + "já existente no banco\n");
  284. textnome.setText("");
  285. }
  286. ex.printStackTrace();
  287. }
  288. }
  289. }
  290.  
  291. class PessoaJuridica extends PessoaFisica {
  292.  
  293. public String cidade, empresa, end;
  294. //cpf_cnpj//
  295. public PessoaJuridica (String _nome,String _cpf_cnpj,String _fone, String _tipo, String _cidade, String _empresa, String _end )
  296. {
  297. super(_nome, _cpf_cnpj, _fone, _tipo);
  298. this.cidade= _cidade;
  299. this.empresa= _empresa;
  300. this.end= _end;
  301. }
  302.  
  303. public void insere(){
  304. try {
  305. Class.forName(driver); //Carrega o Driver
  306. Connection conn = DriverManager.getConnection("jdbc:Mysql://localhost:3306/bd", "root", "root"); //Obtém a conexão com o banco
  307. //Criar um statement para podermos mandar um SQL para o banco
  308. Statement stmt1 = conn.createStatement(); //Permite a execução do comando
  309.  
  310. if(super.nome.equals("") || super.cpf_cnpj.equals("") || super.fone.equals("") || super.tipo.equals("") || cidade.equals("") || empresa.equals("") || end.equals("")) {
  311. JOptionPane.showMessageDialog(null, "Preencha todos os campos");
  312. }
  313.  
  314. else {
  315.  
  316. String comando = "INSERT into bd.cadastropj values('" + tipo + "','" + nome + "','" + cpf_cnpj + "','" + fone + "','" + cidade + "','" + empresa+ "','" + end + "');";
  317. stmt1.execute(comando);
  318. JOptionPane.showMessageDialog(null, "Inserção OK");
  319. fcad.dispose();
  320. login();
  321. }
  322.  
  323. } catch (ClassNotFoundException ex) {
  324. JOptionPane.showMessageDialog(null, "Não foi possível carregar o driver.");
  325. ex.printStackTrace();
  326. } catch (SQLException ex) {
  327. int errCode = ex.getErrorCode();
  328. System.out.println(errCode);
  329. if(errCode == 1062){
  330. JOptionPane.showMessageDialog(null, "Entrada: " + textnome.getText() + "já existente no banco\n");
  331. textnome.setText("");
  332. }
  333. ex.printStackTrace();
  334. }
  335. }
  336. }
  337.  
  338. class Adm extends PessoaFisica{
  339.  
  340. public String nick, senha, admcad,tipo;
  341. int isadm;
  342.  
  343. public Adm(String _nome, String _nick, String _senha,String _tipo, String _admcad, int _isadm )
  344. {
  345. super (_nome, null, null, null);
  346. this.nick = _nick;
  347. this.senha = _senha;
  348. this.admcad = _admcad;
  349. this.isadm = _isadm;
  350. this.tipo = _tipo;
  351. }
  352.  
  353. public void insere(){
  354. try {
  355. Class.forName(driver); //Carrega o Driver
  356. Connection conn = DriverManager.getConnection("jdbc:Mysql://localhost:3306/bd", "root", "root"); //Obtém a conexão com o banco
  357. //Criar um statement para podermos mandar um SQL para o banco
  358. Statement stmt1 = conn.createStatement(); //Permite a execução do comando
  359. //Adm(String _nome, String _nick, String _senha, String _admcad, String _isadm )
  360.  
  361. if(super.nome.equals("") || nick.equals("") || senha.equals("") || admcad.equals("") ) {
  362. JOptionPane.showMessageDialog(null, "Preencha todos os campos");
  363. }
  364.  
  365. else {
  366.  
  367. String comando = "INSERT into bd.cadastroadm values('" + tipo + "','" + nome + "','" + nick + "','" + senha + "','" + admstate + "','" + admcad+ "');";
  368. stmt1.execute(comando);
  369. JOptionPane.showMessageDialog(null, "Inserção OK");
  370. fcad.dispose();
  371. login();
  372. }
  373.  
  374. } catch (ClassNotFoundException ex) {
  375. JOptionPane.showMessageDialog(null, "Não foi possível carregar o driver.");
  376. ex.printStackTrace();
  377. } catch (SQLException ex) {
  378. int errCode = ex.getErrorCode();
  379. System.out.println(errCode);
  380. if(errCode == 1062){
  381. JOptionPane.showMessageDialog(null, "Entrada: " + textnome.getText() + "já existente no banco\n");
  382. textnome.setText("");
  383. }
  384. ex.printStackTrace();
  385. }
  386. }
  387. }
  388.  
  389. public void login() {
  390.  
  391. final String driver = "com.mysql.jdbc.Driver";
  392.  
  393. plogin = new JPanel();
  394.  
  395. JLabel l1 = new JLabel("IMAGEM");
  396. lnick = new JLabel("Usuário: ");
  397. tusr = new JTextField(30);
  398. JLabel lsenha = new JLabel("Senha: ");
  399. senha = new JPasswordField(30);
  400. blogin = new JButton("Login");
  401.  
  402. l1.setBounds(135, 100, 450, 50);
  403. blogin.addActionListener(new ActionListener() {
  404. public void actionPerformed(ActionEvent e) {
  405.  
  406.  
  407. try {
  408. Class.forName(driver);
  409. Connection conn = DriverManager.getConnection("jdbc:Mysql://127.0.0.1/bd", "root", "root");
  410.  
  411. //String senha1 = String.valueOf(senha.getPassword()); // converter para string ja que o pw retorna char
  412.  
  413. String sql = "SELECT * FROM bd.cadastroadm where user='" + tusr.getText() + "'";
  414.  
  415. PreparedStatement stmt = conn.prepareStatement(sql);
  416. ResultSet rs = stmt.executeQuery(sql);
  417.  
  418. rs.next();
  419.  
  420. String senha1 = new String(senha.getPassword());
  421. //System.out.println(rs.getString("adm"));
  422. isadm = rs.getString("adm");
  423.  
  424. if(rs.getString("user").isEmpty() && rs.getString("senha").equals(""))
  425. JOptionPane.showMessageDialog(null, "Preencha todos os campos");
  426.  
  427. else if(rs.getString("user").equals(tusr.getText()) && rs.getString("senha").equals(senha1)){
  428.  
  429. plogin.setVisible(false);
  430. plogin.setBounds(0, 0, 0, 0);
  431. menu();
  432.  
  433. }
  434.  
  435. } catch (ClassNotFoundException ex) {
  436. JOptionPane.showMessageDialog(null, "Impossivel carregar o driver");
  437. ex.printStackTrace();
  438. } catch (SQLException ex) {
  439. JOptionPane.showMessageDialog(null, "O usuário e/ou senha estão incorretos. \n Por favor, insira corretamente os dados solicitados.", "ERRO NO LOGIN!!!", JOptionPane.ERROR_MESSAGE);
  440. textnick.setText("");
  441. senha.setText("");
  442. }
  443. }
  444. });
  445.  
  446. plogin.setBackground(Color.WHITE);
  447. lnick.setForeground(Color.RED);
  448. lsenha.setForeground(Color.RED);
  449. blogin.setForeground(Color.RED);
  450. blogin.setBackground(Color.WHITE);
  451. l1.setForeground(Color.RED);
  452.  
  453. lnick.setFont(new Font("Arial", Font.BOLD, 35));
  454. lsenha.setFont(new Font("Arial", Font.BOLD, 35));
  455. blogin.setFont(new Font("Arial", Font.BOLD, 35));
  456. l1.setFont(new Font("Arial", Font.BOLD, 35));
  457.  
  458.  
  459. plogin.setBounds(1, 1, 700, 725);
  460. l1.setBounds(320, 0, 400, 400);
  461. lnick.setBounds(200, 250, 400, 50);
  462. tusr.setBounds(200, 300, 400, 30);
  463. lsenha.setBounds(200, 350, 400, 50);
  464. senha.setBounds(200, 400, 400, 30);
  465. blogin.setBounds(300, 500, 200, 50);
  466.  
  467.  
  468. plogin.add(lnick);
  469. plogin.add(lsenha);
  470. plogin.add(senha);
  471. plogin.add(tusr);
  472. plogin.add(blogin);
  473. plogin.add(l1);
  474. plogin.setLayout(null);
  475. f.getContentPane().add(plogin);
  476.  
  477. }
  478.  
  479. public void buscar(){
  480.  
  481.  
  482. }
  483.  
  484. public void listar(){
  485.  
  486.  
  487. }
  488.  
  489. public void menu(){
  490.  
  491. barra = new JMenuBar();
  492. cadastro = new JMenu( "Cadastro" );
  493. fisica = new JMenuItem( "Pessoa Fisica" );
  494. juridica = new JMenuItem( "Pessoa Juridica" );
  495. administrador = new JMenuItem( "Administrador" );
  496.  
  497. usuarios = new JMenu("Usuarios");
  498. listar = new JMenuItem("Listar");
  499. buscar = new JMenuItem("Buscar");
  500.  
  501. relatorios = new JMenu("Relatorios");
  502.  
  503. sobre = new JMenu("Sobre");
  504.  
  505. sobre.addMenuListener(
  506. new MenuListener() {
  507. public void menuSelected(MenuEvent e) {
  508. JOptionPane.showMessageDialog(null, "Desenvolvido por: Yuri Oliveira Alves. \n Versao: 1.0.0.\n Este software tem cunho educativo.\n Proposito: Demonstrar um sistema bancário de gerenciamento de clientes ", "SOBRE", JOptionPane.OK_OPTION);
  509. }
  510.  
  511. public void menuCanceled(MenuEvent arg0) {}
  512. public void menuDeselected(MenuEvent arg0) {}
  513. });
  514.  
  515. relatorios.addMenuListener(
  516. new MenuListener() {
  517. public void menuSelected(MenuEvent e) {
  518. //abrir relatorios
  519. }
  520. public void menuCanceled(MenuEvent arg0) {}
  521. public void menuDeselected(MenuEvent arg0) {}
  522. });
  523.  
  524. fisica.addActionListener(new ActionListener()
  525. {public void actionPerformed(ActionEvent e){
  526. cadastro("Fisica");
  527. }});
  528. juridica.addActionListener(new ActionListener()
  529. {public void actionPerformed(ActionEvent e){
  530. cadastro("Juridica");
  531. }});
  532. administrador.addActionListener(new ActionListener()
  533. {public void actionPerformed(ActionEvent e){
  534. cadastro("Adm");
  535. }});
  536.  
  537. cadastro.add( fisica );
  538. cadastro.add( juridica );
  539. cadastro.add( administrador );
  540.  
  541. usuarios.add(listar);
  542. usuarios.add(buscar);
  543.  
  544. barra.add( cadastro );
  545. barra.add( usuarios );
  546. barra.add( relatorios );
  547. barra.add( sobre );
  548.  
  549. f.setJMenuBar(barra);
  550. f.setVisible(true);
  551.  
  552. }
  553.  
  554. public static void main(String args[]) {
  555. new principal1(); // call frame
  556. }
  557. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement