Advertisement
Guest User

Untitled

a guest
Oct 26th, 2017
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 32.82 KB | None | 0 0
  1.  
  2. package sd;
  3.  
  4. import java.util.ArrayList;
  5. import java.util.Scanner;
  6.  
  7.  
  8. /**
  9. *
  10. * @author anacj
  11. */
  12. public class ADMIN {
  13.  
  14.  
  15. public ArrayList<Departamento>departamentos;
  16. public ArrayList<Eleicao> eleicoes;
  17. public ArrayList<Universidade> universidades;
  18. public ArrayList<User>users;//todas as pessoas
  19. public FicheirosDeObjeto file=new FicheirosDeObjeto();
  20.  
  21.  
  22.  
  23. public void registarPessoa()
  24. {
  25. int telefone, cc,profissao;
  26. String password, dep,morada;
  27. Scanner sc=new Scanner(System.in);
  28. System.out.println("1)Estudante 2)docente ou 3)funcionario? \n");
  29. profissao=sc.nextInt();
  30. System.out.println("Cartao de Cidadao: \n");
  31. cc=sc.nextInt();
  32. System.out.println("Validade do CC");
  33. String [] validade=sc.next().split("/");
  34. Data validadeCC=new Data(Integer.parseInt(validade[0]),Integer.parseInt(validade[1]),Integer.parseInt(validade[2]));
  35. System.out.println("Password: \n");
  36. password=sc.next();
  37. System.out.println("Departamento: \n");
  38. dep=sc.next();
  39.  
  40. System.out.println("Contacto: \n");
  41. telefone=sc.nextInt();
  42. System.out.println("Morada: \n");
  43. morada=sc.next();
  44.  
  45. for(int i=0;i<departamentos.size();i++)
  46. {
  47. if(departamentos.get(i).nome.equals(dep))
  48. {
  49. User user=new User(profissao ,cc,validadeCC,password,departamentos.get(i), telefone, morada);
  50. users.add(user);
  51. departamentos.get(i).pessoas.add(user);
  52. }
  53.  
  54. }
  55.  
  56. }
  57. public void listarUsers()
  58. {
  59. for(int i=0;i<users.size();i++)
  60. {
  61. System.out.println("Nr do CC: "+users.get(i).getCc()+" Tipo de profissao: "+users.get(i).getProfissao()+" Pertence ao departamento de: "+users.get(i).getDep()+"\n");
  62.  
  63. }
  64. }
  65. public void alterarDadosPessoais()
  66. {
  67. Scanner sc=new Scanner(System.in);
  68. User user=new User();
  69. int opcao,ccU;
  70. listarUsers();
  71. System.out.println("Quer alterar os dados de que usar?(insira o nr de cc)\n");
  72. ccU=sc.nextInt();
  73. for(int u=0;u<users.size();u++)
  74. {
  75. if(users.get(u).getCc()==ccU)
  76. {
  77. user=users.get(u);
  78. }
  79. }
  80. System.out.println("Pretende alterar\n1)Password\n2)Profissao\n3)Numero do CC\n4)Validade do CC\n5)Departamento\n6)Telefone\n7)Morada\n");
  81.  
  82. opcao=sc.nextInt();
  83. switch (opcao) {
  84. case 1:
  85. String pass;
  86. System.out.println("Insira a nova password:\n");
  87. pass=sc.next();
  88. user.password=pass;
  89. break;
  90. case 2:
  91. int pro;
  92. System.out.println("Profissao: \n1)Estudante\n2)Docente\n3)Funcionario\n");
  93. pro=sc.nextInt();
  94. user.profissao=pro;
  95. break;
  96. case 3:
  97. int cc;
  98. System.out.println("Insira o nr de cc:\n");
  99. cc=sc.nextInt();
  100. user.cc=cc;
  101. break;
  102. case 4:
  103. System.out.println("Validade do CC(dd/mm/aaaa):\n");
  104. String [] validade=sc.next().split("/");
  105. Data validadeCC=new Data(Integer.parseInt(validade[0]),Integer.parseInt(validade[1]),Integer.parseInt(validade[2]));
  106. user.validadeCC=validadeCC;
  107. break;
  108. case 5:
  109. String dep;
  110. System.out.println("Nome do departamento:\n");
  111. dep=sc.next();
  112. for(int i=0;i<departamentos.size();i++)
  113. {
  114. if(departamentos.get(i).nome.equals(dep))
  115. {
  116. user.dep=departamentos.get(i);
  117. }
  118. }
  119. break;
  120. case 6:
  121. int tel;
  122. System.out.println("Telefone:\n");
  123. tel=sc.nextInt();
  124. user.telefone=tel;
  125. break;
  126. case 7:
  127. String morada;
  128. System.out.println("Morada: \n");
  129. morada=sc.next();
  130. user.morada=morada;
  131. break;
  132. default:
  133. break;
  134. }
  135.  
  136. }
  137. public void criarUni()
  138. {
  139. String nome;
  140. System.out.println("Insira o nome:\n");
  141. Scanner sc=new Scanner (System.in);
  142. nome=sc.next();
  143. Universidade uni=new Universidade(nome);
  144.  
  145. if(universidades.contains(uni))
  146. {
  147. System.out.println("Essa universidade ja existe!");
  148. }
  149. else{
  150. universidades.add(uni);
  151. }
  152.  
  153. }
  154. public void criarDep()
  155. {
  156. String uni,dep;
  157. System.out.println("Insira o nome da Universidade em que quer criar o departamento:\n");
  158. Scanner sc=new Scanner(System.in);
  159. uni=sc.next();
  160. Universidade univ=new Universidade(uni);
  161. if(universidades.contains(univ))
  162. {
  163. System.out.println("Insira o nome do departamento:\n");
  164. dep=sc.next();
  165. Departamento depart=new Departamento(uni,dep);
  166. if(univ.departamentos.contains(depart))
  167. {
  168. System.out.println("Esse departamento ja existe!");
  169. }
  170. else{
  171. univ.departamentos.add(depart);
  172. departamentos.add(depart);
  173. }
  174.  
  175.  
  176. }
  177. }
  178. public void listarDeps()
  179. {
  180.  
  181. for(int i=0;i<departamentos.size();i++)
  182. {
  183. System.out.println("Departamento de "+departamentos.get(i).getNome()+"\n");
  184. }
  185. }
  186. public void alterarDep()
  187. {
  188. String nome,resposta;
  189. int respost;
  190. Scanner sc=new Scanner(System.in);
  191. listarDeps();
  192. System.out.println("Escolha o departamento:\n");
  193. nome=sc.next();
  194. System.out.println("Alterar Departamento\n-1)Alterar nome do departamento\n-2)Alterar pessoas de um departamento\n");
  195.  
  196. respost=sc.nextInt();
  197. if(respost==2)
  198. {
  199. int cc;
  200. System.out.println("Insira o numero do CC:\n");
  201. cc=sc.nextInt();
  202. for(int i=0;i<departamentos.size();i++)
  203. {
  204. if(departamentos.get(i).getNome().equals(nome))
  205. {
  206. for(int j=0;j<departamentos.get(i).getPessoas().size();j++)
  207. {
  208. if(departamentos.get(i).getPessoas().get(j).getCc()==cc)
  209. {
  210. System.out.println("Pretente alterar ou remover?\n");
  211. resposta=sc.next();
  212. if("alterar".equals(resposta))
  213. {
  214. System.out.println("Alterar:\n-profissao\n-password\n-CC\n-validadeCC\n-telefone\n-morada\n");
  215. resposta=sc.next();
  216. if(resposta.equals("profissao"))
  217. {
  218. System.out.println("Insira a profissao: \n1)Estudante\n2)Docente\n3)Funcionario");
  219. respost=sc.nextInt();
  220. departamentos.get(i).getPessoas().get(j).setProfissao(respost);
  221. }
  222. else if(resposta.equals("password"))
  223. {
  224. System.out.println("Insira a nova password: \n");
  225. resposta=sc.next();
  226. departamentos.get(i).getPessoas().get(j).setPassword(resposta);
  227.  
  228. }
  229. else if(resposta.equals("CC"))
  230. {
  231. System.out.println("Insira o numero do CC: \n");
  232. respost=sc.nextInt();
  233. departamentos.get(i).getPessoas().get(j).setCc(respost);
  234. }
  235. else if(resposta.equals("validadeCC"))
  236. {
  237.  
  238. System.out.println("Insira a validade do CC:(dd/mm/aaaa)\n");
  239. String [] vali=sc.next().split("/");
  240. Data valiNew=new Data(Integer.parseInt(vali[0]),Integer.parseInt(vali[1]),Integer.parseInt(vali[2]));
  241. departamentos.get(i).getPessoas().get(j).setValidadeCC(valiNew);
  242.  
  243. }
  244. else if(resposta.equals("telefone"))
  245. {
  246. System.out.println("Insira o nº de telefone: \n");
  247. respost=sc.nextInt();
  248. departamentos.get(i).getPessoas().get(j).setTelefone(respost);
  249. }
  250. else if(resposta.equals("morada"))
  251. {
  252. System.out.println("Insira a morada: \n");
  253. resposta=sc.next();
  254. departamentos.get(i).getPessoas().get(j).setMorada(resposta);
  255. }
  256. }
  257. else if("remover".equals(resposta))
  258. {
  259. departamentos.get(i).getPessoas().remove(departamentos.get(i).getPessoas().get(j));
  260.  
  261. }
  262. }
  263.  
  264. }
  265. }
  266. }
  267. }
  268. else if(respost==1)
  269. {
  270. System.out.println("Insira o novo nome: \n");
  271. resposta=sc.next();
  272. for(int i=0;i<departamentos.size();i++)
  273. {
  274. if(departamentos.get(i).getNome().equals(nome))
  275. {
  276. departamentos.get(i).setNome(resposta);
  277. System.out.println("Nome de departamento alterado!\n");
  278.  
  279. }
  280. }
  281.  
  282.  
  283.  
  284. }
  285. }
  286.  
  287. public void removerDep(){
  288. String nome;
  289. Scanner sc=new Scanner(System.in);
  290. listarDeps();
  291. System.out.println("Escolha o departamento:\n");
  292. nome=sc.next();
  293. for(int i=0;i<departamentos.size();i++)
  294. {
  295. if(departamentos.get(i).getNome().equals(nome))
  296. {
  297. departamentos.remove(departamentos.get(i));//elimina departamento do array departamentos
  298. for(int j=0;j<universidades.size();j++)
  299. {
  300. if(universidades.get(j).getDepartamentos().contains(departamentos.get(i)));
  301. {
  302. universidades.get(j).getDepartamentos().remove(departamentos.get(i));//elimina departamento dentro do array departamentos da universidade
  303.  
  304. }
  305. }
  306.  
  307. }
  308. }
  309. }
  310.  
  311. public void criarEleicao()
  312. {
  313. int tipo;
  314. String titulo, descricao,depart,univ;
  315. Scanner sc=new Scanner(System.in);
  316. System.out.println("Tipo\n");
  317. tipo=sc.nextInt();
  318. System.out.println("Data de Inicio: ");
  319. String [] dataInit=sc.next().split("/");
  320. System.out.println("\nHora de Inicio: ");
  321. String [] horaI=sc.next().split(":");
  322. Data inicio=new Data(Integer.parseInt(dataInit[0]),Integer.parseInt(dataInit[1]),Integer.parseInt(dataInit[2]),Integer.parseInt(horaI[0]),Integer.parseInt(horaI[1]));
  323. System.out.println("Data de Encerramento: ");
  324. String [] dataFim=sc.next().split("/");
  325. System.out.println("\nHora de Encerramento: ");
  326. String [] horaF=sc.next().split(":");
  327. Data fim=new Data(Integer.parseInt(dataFim[0]),Integer.parseInt(dataFim[1]),Integer.parseInt(dataFim[2]),Integer.parseInt(horaF[0]),Integer.parseInt(horaF[1]));
  328. System.out.println("Titulo\n");
  329. titulo=sc.next();
  330. System.out.println("Descricao\n");
  331. descricao=sc.next();
  332.  
  333. if(tipo==1)
  334. {
  335. System.out.println("Sendo eleicao de nucleos, insira o departamento:\n");
  336. depart=sc.next();
  337. for(int i=0;i<departamentos.size();i++)
  338. {
  339. if(departamentos.get(i).getNome().equals(depart))
  340. {
  341. Eleicao elec=new Eleicao(departamentos.get(i),tipo,inicio,fim,titulo,descricao);
  342. eleicoes.add(elec);
  343. System.out.println("Eleicao criada!\n");
  344.  
  345. }
  346.  
  347. }
  348.  
  349. }
  350. else if(tipo==5)
  351. {
  352. System.out.println("Sendo eleicao para a direção de uma faculdade, insira a faculdade:\n");
  353. univ=sc.next();
  354. for(int i=0;i<universidades.size();i++)
  355. {
  356. if(universidades.get(i).getNome().equals(univ))
  357. {
  358. Eleicao elec=new Eleicao(universidades.get(i),tipo,inicio,fim,titulo,descricao);
  359. eleicoes.add(elec);
  360. System.out.println("Eleicao criada!\n");
  361. }
  362.  
  363. }
  364.  
  365. }
  366. else if(tipo==6)
  367. {
  368. System.out.println("Sendo eleicao para a direção de um departamento, insira o departamento:\n");
  369. depart=sc.next();
  370. for(int i=0;i<departamentos.size();i++)
  371. {
  372. if(departamentos.get(i).getNome().equals(depart))
  373. {
  374. Eleicao elec=new Eleicao(departamentos.get(i),tipo,inicio,fim,titulo,descricao);
  375. eleicoes.add(elec);
  376. System.out.println("Eleicao criada!\n");
  377. }
  378.  
  379. }
  380.  
  381. }
  382. else{
  383. Eleicao eleicao=new Eleicao(tipo,inicio,fim,titulo,descricao);
  384. eleicoes.add(eleicao);
  385.  
  386. }
  387.  
  388.  
  389.  
  390.  
  391. }
  392.  
  393.  
  394. public void candidatura()
  395. {
  396. int pessoas,numCC,tipoLista,k;
  397. String nomeLista,titulo_ele;
  398. Scanner sc=new Scanner(System.in);
  399. Eleicao ele=new Eleicao();
  400.  
  401. //listarEleicoes();
  402. System.out.println("Qual a eleição que deseja?");
  403. titulo_ele = sc.next();
  404. for(k=0;k<eleicoes.size();k++){
  405. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  406. ele = eleicoes.get(k);
  407. }
  408. }
  409.  
  410.  
  411. System.out.println("Nome da lista:\n-");
  412. nomeLista=sc.next();
  413.  
  414. switch (ele.getTipo()) {
  415. //eleicao de nucleo de estudantes APENAS ESTUDANTES
  416. case 1:
  417.  
  418. Lista lista=new Lista(nomeLista,1);
  419. System.out.println("Quantas pessoas terá a lista candidata? ");
  420. pessoas=sc.nextInt();
  421. for(int i=0;i<pessoas;i++)
  422. {
  423. System.out.println("Insira o numero do CC:");
  424. numCC=sc.nextInt();
  425. for(int j=0;j<users.size();j++)
  426. {
  427. if(users.get(j).getProfissao()==1 && users.get(j).getCc()==numCC && users.get(j).getDep()==ele.getDep())
  428. {
  429. lista.getCandidatos().add(users.get(j));
  430. System.out.println("Adicionado!");
  431. }
  432. }
  433. }
  434. ele.getListasCandidatas().add(lista);
  435. break;
  436. //eleicao de professores
  437. case 2:
  438. Lista listaDocente=new Lista(nomeLista,2);
  439. System.out.println("Quantas pessoas terá a lista candidata? ");
  440. pessoas=sc.nextInt();
  441. for(int i=0;i<pessoas;i++)
  442. {
  443. System.out.println("Insira o numero do CC:");
  444. numCC=sc.nextInt();
  445. for(int j=0;j<users.size();j++)
  446. {
  447. if(users.get(j).getCc()==numCC && users.get(j).getProfissao()==2)
  448. {
  449. listaDocente.getCandidatos().add(users.get(j));
  450. System.out.println("Adicionado!");
  451. break;
  452. }
  453. }
  454. }
  455. ele.getListasCandidatas().add(listaDocente);
  456. break;
  457.  
  458. //eleicao de funcionarios
  459. case 3:
  460. Lista listaFunc=new Lista(nomeLista,3);
  461. System.out.println("Quantas pessoas terá a lista candidata? ");
  462. pessoas=sc.nextInt();
  463. for(int i=0;i<pessoas;i++)
  464. {
  465. System.out.println("Insira o numero do CC:");
  466. numCC=sc.nextInt();
  467. for(int j=0;j<users.size();j++)
  468. {
  469. if(users.get(j).getCc()==numCC && users.get(j).getProfissao()==3)
  470. {
  471. listaFunc.getCandidatos().add(users.get(j));
  472. System.out.println("Adicionado!");
  473. }
  474. }
  475. }
  476. ele.getListasCandidatas().add(listaFunc);
  477. break;
  478.  
  479. //CONSELHO GERAL listas de 3 tipos
  480. case 4:
  481.  
  482. System.out.println("\nLista de 1=estudantes, 2=funcionarios ou 3=docentes?\n-");//
  483. tipoLista=sc.nextInt();
  484. Lista listaConselho=new Lista(nomeLista,tipoLista);
  485. System.out.println("Quantas pessoas terá a lista candidata? ");
  486. pessoas=sc.nextInt();
  487. for(int i=0;i<pessoas;i++)
  488. {
  489. System.out.println("Insira o numero do CC:");
  490. numCC=sc.nextInt();
  491. for(int j=0;j<users.size();j++)
  492. {
  493. if(users.get(j).getCc()==numCC && users.get(j).getProfissao()==tipoLista)
  494. {
  495. listaConselho.getCandidatos().add(users.get(j));
  496. System.out.println("Adicionado");
  497. }
  498. }
  499. }
  500. ele.getListasCandidatas().add(listaConselho);
  501. break;
  502.  
  503. //direçao de faculdade
  504. case 5:
  505. Lista listaFac=new Lista(nomeLista,2);
  506. System.out.println("Quantas pessoas terá a lista candidata? ");
  507. pessoas=sc.nextInt();
  508. for(int i=0;i<pessoas;i++)
  509. {
  510. System.out.println("Insira o numero do CC:");
  511. numCC=sc.nextInt();
  512. for(int j=0;j<users.size();j++)
  513. {
  514. for(int h=0;k<universidades.size();k++)
  515. {
  516. if(universidades.get(h).getDepartamentos().contains(users.get(j).getDep()))
  517. {
  518. if(users.get(j).getCc()==numCC && users.get(j).getProfissao()==2)
  519. {
  520. listaFac.getCandidatos().add(users.get(j));
  521. System.out.println("Adicionado");
  522. }
  523. }
  524. }
  525. }
  526. }
  527. ele.listasCandidatas.add(listaFac);
  528. break;
  529.  
  530. //direçao de departamento
  531. case 6:
  532. Lista listaDep=new Lista(nomeLista,2);
  533. System.out.println("Quantas pessoas terá a lista candidata? ");
  534. pessoas=sc.nextInt();
  535. for(int i=0;i<pessoas;i++)
  536. {
  537. System.out.println("Insira o numero do CC:");
  538. numCC=sc.nextInt();
  539. for(int j=0;j<users.size();j++)
  540. {
  541. if(users.get(j).getCc()==numCC && users.get(j).getProfissao()==2 && users.get(j).getDep()==ele.dep)
  542. {
  543. listaDep.getCandidatos().add(users.get(j));
  544. System.out.println("Adicionado");
  545. }
  546. }
  547. }
  548.  
  549. ele.getListasCandidatas().add(listaDep);
  550. break;
  551.  
  552. default:
  553. break;
  554. }
  555. }
  556. public void listarMesas()
  557. {
  558. for(int i=0;i<eleicoes.size();i++)
  559. {
  560. System.out.println("Eleicao");
  561.  
  562. }
  563. }
  564. public void gerirMembrosMesa(MesaVoto mesa)
  565. {
  566. int membros=mesa.getMembros().size();
  567. int opcao, cc;
  568. System.out.println("Pretende: 1)Adicionar membros a mesa\n2)Remover membros\n");
  569. Scanner sc=new Scanner(System.in);
  570. opcao=sc.nextInt();
  571. if(opcao==1)
  572. {
  573. if(membros<3)
  574. {
  575.  
  576. System.out.println("Insira o numero do CC do membro que quer inserir");
  577. cc=sc.nextInt();
  578. for(int i=0;i<users.size();i++)
  579. {
  580. if(users.get(i).getCc()==cc)
  581. {
  582. mesa.getMembros().add(users.get(i));
  583. System.out.println("Adicionado!");
  584. break;
  585. }
  586. }
  587. }
  588. else if(membros==3){
  589. System.out.println("Nao pode inserir! ja existem 3 membros");
  590. }
  591. }
  592. else if(opcao==2)
  593. {
  594. System.out.println("Insira o cc do membro que quer remover:\n");
  595. cc=sc.nextInt();
  596. for(int j=0;j<mesa.getMembros().size();j++)
  597. {
  598. if(mesa.getMembros().get(j).getCc()==cc)
  599. {
  600. mesa.getMembros().remove(mesa.getMembros().get(j));
  601. System.out.println("Membro removido!\n");
  602. }
  603. }
  604. }
  605. }
  606. public void adicionaMesa()
  607. {
  608. Scanner sc=new Scanner(System.in);
  609. String name,titulo_ele;
  610. int k;
  611.  
  612. //listarEleicoes();
  613. Eleicao ele=new Eleicao();
  614. System.out.println("Qual a eleição que deseja?");
  615. titulo_ele = sc.next();
  616. for(k=0;k<eleicoes.size();k++){
  617. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  618. ele = eleicoes.get(k);
  619. }
  620. }
  621.  
  622. System.out.println("Quer inserir uma mesa de voto em que Departamento?\n-");
  623. name=sc.next();
  624. for(int i=0;i<departamentos.size();i++)
  625. {
  626. if(departamentos.get(i).getNome().equals(name))//se encontrar o departamento
  627. {
  628. int id;
  629. System.out.println("Insira o id da mesa:\n");
  630. id=sc.nextInt();
  631. MesaVoto mesa=new MesaVoto(departamentos.get(i),id);
  632. ele.getMesasVoto().add(mesa);
  633. System.out.println("Mesa adicionada com sucesso!");
  634. }
  635. }
  636. }
  637.  
  638. public void removerMesa()
  639. {
  640. Scanner sc=new Scanner(System.in);
  641. String name,titulo_ele;
  642. int k;
  643.  
  644. //listarEleicoes();
  645. Eleicao ele=new Eleicao();
  646. System.out.println("Qual a eleição que deseja?");
  647. titulo_ele = sc.next();
  648. for(k=0;k<eleicoes.size();k++){
  649. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  650. ele = eleicoes.get(k);
  651. }
  652. }
  653. System.out.println("Quer remover mesa de voto de que Departamento?\n-");
  654. name=sc.next();
  655. for(int i=0;i<ele.getMesasVoto().size();i++)
  656. {
  657. if(ele.getMesasVoto().get(i).getDepartamento().getNome().equals(name))
  658. {
  659. ele.getMesasVoto().remove(ele.getMesasVoto().get(i));
  660. System.out.println("\nRemovida com sucesso!\n");
  661. }
  662. }
  663. }
  664.  
  665. public void alteraEleicao()
  666. {
  667.  
  668. int opcao,k;
  669. String titulo_ele;
  670. Scanner sc=new Scanner (System.in);
  671. //listarEleicoes();
  672. Eleicao ele=new Eleicao();
  673. System.out.println("Qual a eleição que deseja?");
  674. titulo_ele = sc.next();
  675. for(k=0;k<eleicoes.size();k++){
  676. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  677. ele = eleicoes.get(k);
  678. }
  679. }
  680. System.out.println("Pretente alterar:\n1)Tipo\n2)Titulo\n3)Descricao\n4)Data de inicio\n5)Data de fim");
  681.  
  682. opcao=sc.nextInt();
  683. switch (opcao) {
  684. case 1:
  685. int tipo;
  686. System.out.println("Insira o tipo(1.nucleo, 2.professores, 3.funcionarios, 4.conselho geral)\n");
  687. tipo=sc.nextInt();
  688. ele.setTipo(tipo);
  689. break;
  690. case 2:
  691. String titulo;
  692. System.out.println("Insira o titulo: \n");
  693. titulo=sc.next();
  694. ele.setTitulo(titulo);
  695. break;
  696. case 3:
  697. String descri;
  698. System.out.println("Insira a descricao:\n");
  699. descri=sc.next();
  700. ele.setDescricao(descri);
  701. break;
  702. case 4:
  703. System.out.println("Insira a data de inicio(dd/mm/aaaa):\n");
  704. String [] dataIn=sc.next().split("/");
  705. System.out.println("\nHora de Inicio: ");
  706. String [] horaI=sc.next().split(":");
  707. Data data=new Data(Integer.parseInt(dataIn[0]),Integer.parseInt(dataIn[1]),Integer.parseInt(dataIn[2]),Integer.parseInt(horaI[0]),Integer.parseInt(horaI[1]));
  708. ele.setDataInit(data);
  709. break;
  710. case 5:
  711. System.out.println("Insira a data de fim(dd/mm/aaaa):\n");
  712. String [] dataF=sc.next().split("/");
  713. System.out.println("\nHora de Fim: ");
  714. String [] horaF=sc.next().split(":");
  715. Data dat=new Data(Integer.parseInt(dataF[0]),Integer.parseInt(dataF[1]),Integer.parseInt(dataF[2]),Integer.parseInt(horaF[0]),Integer.parseInt(horaF[1]));
  716. ele.setDataFim(dat);
  717. break;
  718. default:
  719. break;
  720. }
  721.  
  722. }
  723.  
  724. public void eleitoresReal()//Saber quantos eleitores votaram em cada mesa de voto
  725. {
  726. int k;
  727. String titulo_ele;
  728. Scanner sc=new Scanner (System.in);
  729. //listarEleicoes();
  730. Eleicao ele=new Eleicao();
  731. System.out.println("Qual a eleição que deseja?");
  732. titulo_ele = sc.next();
  733. for(k=0;k<eleicoes.size();k++){
  734. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  735. ele = eleicoes.get(k);
  736. }
  737. }
  738. //confirmar se ainda esta a decorrer a eleicao?
  739.  
  740. System.out.println("Mesas de Voto - Nr de eleitores que exerceram o voto\n");
  741. for(int i=0;i<ele.getMesasVoto().size();i++)
  742. {
  743. System.out.println("-"+ele.getMesasVoto().get(i).getDepartamento().getNome()+"("+ele.getMesasVoto().get(i).getEleitores().size()+" eleitores)");
  744. }
  745.  
  746. }
  747. public boolean inserirVoto(int cc, String nomeElec,String voto)//se for b-branco, n-nulo,outro(confirmar se lista existe e se existir adicionar voto a lista)
  748. {
  749. boolean flag=false;
  750. for(int i=0;i<eleicoes.size();i++){
  751. if(eleicoes.get(i).getTitulo().equals(nomeElec))
  752. {
  753. if("b".equals(voto))
  754. {
  755. eleicoes.get(i).votosBranco++;
  756. }
  757. else if("n".equals(voto) || voto==null)
  758. {
  759. eleicoes.get(i).votosNulo++;
  760. }
  761. else{
  762. for(int j=0;j<eleicoes.get(i).listasCandidatas.size();j++)
  763. {
  764. if(eleicoes.get(i).listasCandidatas.get(j).nome.equals(voto))//lista existe bora votaaaaar!!!
  765. {
  766. for(int k=0;k<users.size();k++)
  767. {
  768. if(users.get(k).getCc()==cc && users.get(k).getTipo()==eleicoes.get(i).getListasCandidatas().get(j).getTipo())
  769. {
  770. eleicoes.get(i).listasCandidatas.get(j).votos++;
  771. eleicoes.get(i).eleitores.add(cc);
  772. flag=true;
  773.  
  774. }
  775. }
  776.  
  777. }
  778. else{//lista nao exites logo o voto é nulo!!
  779. eleicoes.get(i).votosNulo++;
  780. }
  781.  
  782. }
  783.  
  784. }
  785. }
  786. }
  787. return flag;
  788. }
  789.  
  790.  
  791. public void votoAntecipado()
  792. {
  793. int cc;
  794. String voto,opcao;
  795. Scanner sc=new Scanner(System.in);
  796. System.out.println("Insira o seu CC:\n");
  797. cc=sc.nextInt();
  798. System.out.println("Em que eleicao quer votar?\n");
  799. for(int i=0;i<users.size();i++)
  800. {
  801. if(users.get(i).getCc()==cc)//user existe
  802. {
  803. for(int j=0;j<eleicoes.size();j++)
  804. {
  805. if(eleicoes.get(j).getTipo()==users.get(i).getTipo())//pode votar nesta eleicao
  806. {
  807. System.out.println("-"+eleicoes.get(j).getTitulo()+"\n");
  808.  
  809. }
  810. }
  811.  
  812. }
  813. }
  814. opcao=sc.next();
  815. for(int x=0;x<eleicoes.size();x++)
  816. {
  817. if(eleicoes.get(x).getTitulo().equals(opcao))
  818. {
  819. System.out.println("Insira o seu voto:\n");
  820. voto=sc.next();
  821. inserirVoto(cc,eleicoes.get(x).getTitulo(),voto);
  822. }
  823. }
  824.  
  825. }
  826.  
  827.  
  828.  
  829. public void resultados(Eleicao elec)
  830.  
  831. {
  832. int k;
  833. String titulo_ele;
  834. Scanner sc=new Scanner (System.in);
  835. //listarEleicoes();
  836. Eleicao ele=new Eleicao();
  837. System.out.println("Qual a eleição que deseja?");
  838. titulo_ele = sc.next();
  839. for(k=0;k<eleicoes.size();k++){
  840. if(eleicoes.get(k).getTitulo().equals(titulo_ele)){
  841. ele = eleicoes.get(k);
  842. }
  843. }
  844. if(elec.getConclusao()==1)//ja terminou ja pode ser consultada
  845. {
  846. int totalVotos=elec.eleitores.size();
  847. for(int i=0;i<elec.listasCandidatas.size();i++)
  848. {
  849. System.out.println("A lista "+elec.listasCandidatas.get(i).nome+" obteve "+elec.listasCandidatas.get(i).votos);//absoluto
  850. System.out.println(" - Percentagem: "+(elec.listasCandidatas.get(i).votos*100)/totalVotos);
  851. //percentagem
  852. }
  853. System.out.println("\nNumero de votos em branco: "+elec.votosBranco);//absoluto
  854. System.out.println(" - Percentagem de votos em branco:" +(elec.votosBranco*100)/totalVotos);
  855. //percentagem
  856.  
  857. }
  858. else//nao esta fechada
  859. {
  860. System.out.println("A eleicao ainda nao encerrou");
  861.  
  862. }
  863. }
  864.  
  865. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement