Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- import exceptions.AtrativoJaExisteException;
- import exceptions.AtrativoNaoExisteException;
- import exceptions.MunicipioJaExisteException;
- import exceptions.MunicipioNaoExisteException;
- public class SisTur {
- public static void main(String[] args) {
- Scanner input = new Scanner(System.in);
- AreaDeInteresseTuristico areaDeInteresse = new AreaDeInteresseTuristico();
- double latitudeAtra, longitudeAtra, latitudeMun, longitudeMun;
- int entrada, populacao;
- String nome, estado, site, comoChegar, infoContato, tipo, nomePesquisaMunicipio, nomeAtrativo;
- boolean parar = false;
- while(parar != true){
- entrada = inputInt("\nSistema de turismo\n1 - Cadastrar municipio;\n2 - Cadastrar atrativo tiristico;\n3 - Listar municipios;\n4 - Listar atrativos de determinado municipio\n5 - Sair;", input);
- switch(entrada){
- case 1://Cadastrar municipio
- nome = input("Digite o nome do municipio:", input);
- populacao = inputInt("Digite a população do municipio "+nome+": ",input);
- latitudeMun = inputDouble("Digite a latitude do municipio "+nome+": ",input);
- longitudeMun = inputDouble("Digite a longetude do municipio "+nome+": ",input);
- estado = input("Qual o estado do municipio "+nome+":",input);
- site = input("Qual o site do municipio "+nome+":",input);
- List <AtrativoTuristico> atrativos = new ArrayList<AtrativoTuristico>();
- List <MeioDeHospedagem> hospedagens = new ArrayList<MeioDeHospedagem>();
- Municipio novoMunicipio = new Municipio(nome,populacao,atrativos,latitudeMun,longitudeMun, hospedagens, estado, site);
- try {
- areaDeInteresse.cadastrarMunicipio(novoMunicipio);
- System.out.println("Municipio "+nome+" foi cadastrado com sucesso!");
- System.out.println("ENT");
- }catch(MunicipioJaExisteException erro){
- System.out.println(erro.getMessage());
- }
- break;
- case 2://Cadastrar atrativo
- AtrativoTuristico atrativo = null;
- nome = input("Qual o nome do municipio que você deseja cadastrar o atrativo: ",input);
- estado = input("Qual o nome do estado que você deseja cadastrar o atrativo: ",input);
- nomeAtrativo = input("Digite o nome do atrativo do municipio "+nome+":", input);
- latitudeAtra = inputDouble("Digite a latitude do atrativo "+nomeAtrativo+": ",input);
- longitudeAtra = inputDouble("Digite a longetude do atrativo "+nomeAtrativo+": ",input);
- comoChegar = input("Como chegar no atrativo "+nomeAtrativo+": ",input);
- site = input("Qual o site do atrativo "+nomeAtrativo+": ",input);
- infoContato = input("Qual o contato do atrativo "+nomeAtrativo+": ",input);
- tipo = input("Qual o teipo do atrativo turstico:\nNatural;\nArtificial\nEvento.",input);
- if (tipo.equals("Natural")) {
- String tipoAtraNat = input("Qual o tipo de atrativo natural: Praia ou Generico", input);
- switch(tipoAtraNat) {
- case("Praia"):
- String tipoDeOrla = input("Qual o tipo de orla: ", input);
- String periTub = input("Há perigo de tubarão: S ou N",input);
- String propriBanho = input("É própria para banho: S ou N",input);
- boolean periTubD = false; boolean propriBanhoD = false;
- if(periTub.equals("S")){
- periTubD = true;
- }
- if(propriBanho.equals("S")) {
- propriBanhoD = true;
- }
- atrativo = new Praia(nomeAtrativo,latitudeAtra,longitudeAtra, comoChegar,site,infoContato,periTubD, propriBanhoD, tipoDeOrla);
- break;
- case("Generico"):
- atrativo = new AtrativoNatural(nomeAtrativo,latitudeAtra,longitudeAtra, comoChegar,site,infoContato);
- break;
- }
- }else if(tipo.equals("Artificial")) {
- String fundacao = input("Qual a data de fundação:",input);
- String fundador = input("Quem foi o fundador:",input);
- atrativo = new AtrativoArtificial(nomeAtrativo,latitudeAtra,longitudeAtra, comoChegar,site,infoContato,fundacao, fundador);
- }else {//Evento
- String dataInicio = input("Qual a data de inicio:",input);
- String dataFim = input("Qual a data de fim:",input);
- String tipoEvento = input("Qual o tipo do evento: Festa ou Feira gastronômica",input);
- String logradouro = input("Qual o logradouro:",input);
- String numero = input("Qual o número:",input);
- String bairro = input("Qual o bairro:",input);
- Endereco novoEndereco = new Endereco(logradouro,numero,bairro);
- atrativo = new EventoProgramado(nomeAtrativo,latitudeAtra,longitudeAtra, comoChegar,site,infoContato, dataInicio, dataFim, tipoEvento, novoEndereco);
- }
- if (atrativo != null) {
- try {
- areaDeInteresse.cadastrarAtrativoTuristico(atrativo, nome, estado);
- System.out.println("Atrativo "+nomeAtrativo+" cadastrado com sucesso!");
- }catch(AtrativoJaExisteException erro) {
- System.out.println(erro.getMessage());
- }catch(MunicipioNaoExisteException erro) {
- System.out.println(erro.getMessage());
- }
- }else {
- System.out.println("Erro:atrativo não criado!");
- }
- break;
- case 3://Mostra municipios cadastrados
- if(areaDeInteresse.getMunicipios().size() > 0) {
- for(Municipio m: areaDeInteresse.getMunicipios()) {
- System.out.println(m.toString());
- }
- }else {
- System.out.println("\nSem municipios cadastrados.");
- }
- break;
- case 4://Mostra atrativos por municipio
- nome = input("Qual o nome do municipio que você deseja pesquisar:",input);
- estado = input("Qual o nome do estado que você deseja pesquisar:",input);
- try {
- List<AtrativoTuristico> atrativosDoMun = areaDeInteresse.getAtrativosTuristicosDoMunicipio(nome, estado);
- if (atrativosDoMun.size() > 0) {
- for(AtrativoTuristico at:atrativosDoMun) {
- System.out.println("\n"+at.getDescricao());
- }
- }else {
- System.out.println("\nO municipio "+nome+" não possui atrativos turisticos.");
- }
- }catch(MunicipioNaoExisteException erro) {
- System.out.println(erro.getMessage());
- }
- break;
- case 5:
- System.out.println("Sistema encerrado");
- parar = true;
- break;
- }
- }
- }
- public static int inputInt(String mensagem, Scanner input) {
- System.out.println(mensagem);
- return Integer.parseInt(input.nextLine());
- }
- public static double inputDouble(String mensagem, Scanner input) {
- System.out.println(mensagem);
- return Integer.parseInt(input.nextLine());
- }
- public static String input(String mensagem, Scanner input) {
- System.out.println(mensagem);
- return input.nextLine();
- }
- public static void meioDaTela(String frase) {
- String [] frases = frase.split("\n");
- for(int k = 0; k < frases.length;k++) {
- for(int i = 0; i < 100 - frase.length(); i++) {
- System.out.print(" ");
- }
- System.out.println(frase);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement