App
Aqui van las clases que son las vista de la consola.creamos el paquete com.tutosoftware.autotransport.app y en escribimos la clase LicenciaApp
package com.tutosoftware.autotransport.app;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.InputMismatchException;
import java.util.Scanner;
import com.tutosoftware.autotransport.dao.LicenciaDAO;
import com.tutosoftware.autotransport.domain.Licencia;
public class LicenciaApp {
Scanner reader = new Scanner(System.in);
int numero;
LicenciaDAO licenciaDAO = new LicenciaDAO();
public LicenciaApp() {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
menuLicencia();
}
public void menuLicencia() {
System.out.println("************************************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Tutosofware LICENCIAS Mexican Transport *");
System.out.println("* El menu es el siguiente: *");
System.out.println("* 1.Insertar Licencia *");
System.out.println("* 2.Modificar Licencia *");
System.out.println("* 3.Eliminar Licencia *");
System.out.println("* 4.Regresar Menu Pricipal *");
System.out.println("* 5.Salir Apilcacion *");
System.out.println("************************************************************");
System.out.println();
System.out.println();
try {
System.out.println("Introduce un numero entero y presionar enter");
numero = reader.nextInt();
} catch (InputMismatchException ime) {
System.out.println("¡Cuidado! Solo puedes insertar números. ");
reader.next();
}
if (numero == 1) {
try {
insertarLicenciaApp();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (numero == 2) {
try {
modificarLicenciaApp();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (numero == 3) {
eliminarLicenciaApp();
} else if (numero == 4) {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
Principal p = new Principal();
p.menu();
} else {
try {
new ProcessBuilder("cmd", "/c", "pause").inheritIO().start().waitFor();
System.exit(0);
} catch (Exception e) {
/* maneja tus errores aquí */
}
}
}
public void insertarLicenciaApp() throws ParseException {
Licencia licencia = new Licencia();
String idLicencia, nombre, apellidoPaterno, apellidoMaterno;
String fechaObtencion, fechaExpiracion, tipoLetra;
System.out.println();
System.out.println("Introducir ID Licencia y presionar Enter:");
idLicencia = reader.next();
System.out.println("Introducir Nombre y presionar Enter:");
reader.nextLine();
nombre = reader.nextLine();
System.out.println("Introducir Apellido Paterno y presionar Enter:");
apellidoPaterno = reader.nextLine();
System.out.println("Introducir Apellido Materno y presionar Enter");
reader.nextLine();
apellidoMaterno = reader.nextLine();
System.out.println("Introducir Fecha de Obtencion ejemplo el formato es 30-01-2020 y presionae enter");
fechaObtencion = reader.next();
System.out.println("Introducir Fecha de Expiracion ejemplo el formato es 30-01-2020 y presionae enter");
fechaExpiracion = reader.next();
System.out.println("Introducir Tipo de Letra");
tipoLetra = reader.next();
java.util.Date dateObt = new SimpleDateFormat("dd-MM-yyyy").parse(fechaObtencion);
java.sql.Date sqlDateObt = new java.sql.Date(dateObt.getTime());
java.util.Date dateExp = new SimpleDateFormat("dd-MM-yyyy").parse(fechaExpiracion);
java.sql.Date sqlDateExp = new java.sql.Date(dateExp.getTime());
licencia.setIdLicencia(idLicencia);
licencia.setNombre(nombre);
licencia.setApellidoPaterno(apellidoPaterno);
licencia.setApellidoMaterno(apellidoMaterno);
licencia.setFechaObtencion(sqlDateObt);
licencia.setFechaExpiracion(sqlDateExp);
licencia.setTipoLetra(tipoLetra);
licenciaDAO.insertarLicencia(licencia);
menuLicencia();
}
public void modificarLicenciaApp() throws ParseException {
Licencia licencia = new Licencia();
Licencia licAct = new Licencia();
String nombreAc,apellidoPaternoAc,apellidoMaternoAc,fechaObtAc,fechaExpAc,tipoLetraAc;
String idLicencia;
System.out.println();
System.out.println("Introducir ID Licencia y presionar Enter:");
idLicencia = reader.next();
licencia = licenciaDAO.buscarLicencia(idLicencia);
if(licencia.getIdLicencia() == null) {
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuLicencia();
}else {
System.out.println("ID Licencia: "+licencia.getIdLicencia());
System.out.println("Nombre: "+licencia.getNombre());
System.out.println("Apellido Paterno: "+licencia.getApellidoPaterno());
System.out.println("Apellido Materno: "+licencia.getApellidoMaterno());
System.out.println("Fecha de Obtención: "+licencia.getFechaObtencion());
System.out.println("Fecha de Expiración: "+licencia.getFechaExpiracion());
System.out.println("Tipo de Letra : "+licencia.getTipoLetra());
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
System.out.println("Actualizar Nombre o presionar enter");
nombreAc=reader.nextLine();
System.out.println("Actualizar Apellido Paterno o presionar enter");
apellidoPaternoAc=reader.nextLine();
System.out.println("Actualizar Apellido Materno o presionar enter");
apellidoMaternoAc=reader.nextLine();
System.out.println("Actualizar Fecha de Obtención dd-mm-yyyy o presionar enter");
fechaObtAc=reader.nextLine();
System.out.println("Actualizar Fecha de Expedición dd-mm-yyyy o presionar enter");
fechaExpAc=reader.nextLine();
System.out.println("Actualizar tipo de letra o presionar enter");
tipoLetraAc=reader.nextLine();
licAct.setIdLicencia(licencia.getIdLicencia());
if(nombreAc.isEmpty() || nombreAc == null) {
licAct.setNombre(licencia.getNombre());
}else {
licAct.setNombre(nombreAc);
}
if(apellidoPaternoAc.isEmpty() || apellidoPaternoAc == null) {
licAct.setApellidoPaterno(licencia.getApellidoPaterno());
}else {
licAct.setApellidoPaterno(apellidoPaternoAc);
}
if(apellidoMaternoAc.isEmpty() || apellidoMaternoAc == null) {
licAct.setApellidoMaterno(licencia.getApellidoMaterno());
}else {
licAct.setApellidoMaterno(apellidoMaternoAc);
}
if(fechaObtAc.isEmpty() || fechaObtAc == null) {
licAct.setFechaObtencion(licencia.getFechaObtencion());
}else {
java.util.Date dateObt = new SimpleDateFormat("dd-MM-yyyy").parse(fechaObtAc);
java.sql.Date sqlDateObt = new java.sql.Date(dateObt.getTime());
licAct.setFechaObtencion(sqlDateObt);
}
if(fechaExpAc.isEmpty() || fechaExpAc == null) {
licAct.setFechaExpiracion(licencia.getFechaExpiracion());
}else {
java.util.Date dateExp = new SimpleDateFormat("dd-MM-yyyy").parse(fechaExpAc);
java.sql.Date sqlDateExp = new java.sql.Date(dateExp.getTime());
licAct.setFechaExpiracion(sqlDateExp);
}
if(tipoLetraAc.isEmpty() || tipoLetraAc == null) {
licAct.setTipoLetra(licencia.getTipoLetra());
}else {
licAct.setTipoLetra(tipoLetraAc);
}
licenciaDAO.actualizarLicencia(licAct);
menuLicencia();
}
}
public void eliminarLicenciaApp() {
String idLicencia;
System.out.println();
System.out.println("Introducir ID Licencia y presionar Enter:");
idLicencia = reader.next();
licenciaDAO.eliminarLicencia(idLicencia);
menuLicencia();
}
}
La clase Principal
package com.tutosoftware.autotransport.app;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Principal {
Scanner reader = new Scanner(System.in);
int numero;
public static void main(String[] args) {
// TODO Auto-generated method stub
Principal p = new Principal();
p.menu();
}
public void menu() {
System.out.println("************************************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Tutosofware Mexican Transport *");
System.out.println("* El menu es el siguiente: *");
System.out.println("* 1.Transportista *");
System.out.println("* 2.Licencia *");
System.out.println("* 3.Transporte *");
System.out.println("* 4.Viajes *");
System.out.println("* 5.Salir *");
System.out.println("************************************************************");
System.out.println();
System.out.println();
try {
System.out.println("Introduce un numero entero y presionar enter");
numero=reader.nextInt();
}catch(InputMismatchException ime) {
System.out.println("¡Cuidado! Solo puedes insertar números. ");
reader.next();
}
if(numero == 1) {
TransportistaApp transportistaApp = new TransportistaApp();
}
else if(numero == 2) {
LicenciaApp licenciaApp = new LicenciaApp();
}
else if(numero == 3) {
TransporteApp transporteApp = new TransporteApp();
}
else if(numero == 4) {
ViajesApp viajeApp = new ViajesApp();
}
else{
try{
new ProcessBuilder("cmd", "/c", "pause").inheritIO().start().waitFor();
System.exit(0);
}catch(Exception e){
/*maneja tus errores aquí*/
}
}
}
}
La clase TransporteApp
package com.tutosoftware.autotransport.app;
import java.util.InputMismatchException;
import java.util.Scanner;
import com.tutosoftware.autotransport.dao.TransporteDAO;
import com.tutosoftware.autotransport.domain.Transporte;
public class TransporteApp {
Scanner reader = new Scanner(System.in);
int numero;
TransporteDAO transporteDAO = new TransporteDAO();
public TransporteApp() {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
menuTransporte();
}
public void menuTransporte() {
System.out.println("************************************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Tutosofware TRANSPORTE Mexican Transport *");
System.out.println("* El menu es el siguiente: *");
System.out.println("* 1.Insertar Transporte *");
System.out.println("* 2.Modificar Transporte *");
System.out.println("* 3.Eliminar Transporte *");
System.out.println("* 4.Buscar Trasporte por ID *");
System.out.println("* 5.Listar Trasnsportes *");
System.out.println("* 6.Regresar a menú principal *");
System.out.println("* 7.Salir aplicación *");
System.out.println("************************************************************");
System.out.println();
System.out.println();
try {
System.out.println("Introduce un numero entero y presionar enter");
numero = reader.nextInt();
} catch (InputMismatchException ime) {
System.out.println("¡Cuidado! Solo puedes insertar números. ");
reader.next();
}
if (numero == 1) {
insertarTransporteApp();
} else if (numero == 2) {
modificarTransporteApp();
} else if (numero == 3) {
eliminarTransporteApp();
}else if(numero == 4){
buscarTransporteIdApp();
}else if(numero ==5) {
listarTrasportes();
}else if (numero == 6) {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
Principal p = new Principal();
p.menu();
} else {
try {
new ProcessBuilder("cmd", "/c", "pause").inheritIO().start().waitFor();
System.exit(0);
} catch (Exception e) {
/* maneja tus errores aquí */
}
}
}
public void insertarTransporteApp() {
Transporte t = new Transporte();
String matricula,marca,modelo,carga,tipoLicencia;
System.out.println();
System.out.println("Introducir Matrícula de Transporte y presionar Enter:");
matricula = reader.next();
System.out.println("Introducir Marca de Transporte y presionar Enter:");
marca = reader.next();
System.out.println("Introducir Modelo de Transporte y presionar Enter:");
reader.nextLine();
modelo = reader.nextLine();
System.out.println("Introducir Capacidad de Carga del Transporte y presionar Enter:");
carga = reader.nextLine();
System.out.println("Introducir Tipo de Licencia del Transporte y presionar Enter:");
tipoLicencia = reader.next();
t.setMatricula(matricula);
t.setMarca(marca);
t.setModelo(modelo);
t.setCarga(carga);
t.setTipoLicencia(tipoLicencia);
transporteDAO.insertarTrasporte(t);
menuTransporte();
}
public void modificarTransporteApp() {
Transporte t = new Transporte();
Transporte tAc = new Transporte();
String matriculaAc,marcaAc,modeloAc,cargaAc,tipoLicenciaAc,disponibilidadAc;
int idTransporte;
System.out.println();
System.out.println("Introducir ID de tu transporte y presionar Enter:");
idTransporte = reader.nextInt();
t = transporteDAO.buscarTrasporte(idTransporte);
if(t.getIdTrasporte() == 0) {
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransporte();
}else {
System.out.println("ID Trasporte: "+t.getIdTrasporte());
System.out.println("Matrícula: "+t.getMatricula());
System.out.println("Marca: "+t.getMarca());
System.out.println("Modelo: "+t.getModelo());
System.out.println("Carga: "+t.getCarga());
System.out.println("Tipo Licencia: "+t.getTipoLicencia());
System.out.println("Disponibilidad : "+t.getDisponibilidad());
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
System.out.println("Actualizar Matricula o presionar enter");
matriculaAc=reader.nextLine();
System.out.println("Actualizar Marca o presionar enter");
marcaAc=reader.nextLine();
System.out.println("Actualizar Modelo o presionar enter");
modeloAc=reader.nextLine();
System.out.println("Actualizar Carga o presionar enter");
cargaAc=reader.nextLine();
System.out.println("Actualizar Tipo Licencia o presionar enter");
tipoLicenciaAc=reader.nextLine();
System.out.println("Actualizar Disponibilidad o presionar enter");
disponibilidadAc=reader.nextLine();
tAc.setIdTrasporte(t.getIdTrasporte());
if(matriculaAc.isEmpty() || matriculaAc == null) {
tAc.setMatricula(t.getMatricula());
}else {
tAc.setMatricula(matriculaAc);
}
if(marcaAc.isEmpty() || marcaAc == null) {
tAc.setMarca(t.getMarca());
}else {
tAc.setMarca(marcaAc);
}
if(modeloAc.isEmpty() || modeloAc == null) {
tAc.setModelo(t.getModelo());
}else {
tAc.setModelo(modeloAc);;
}
if(cargaAc.isEmpty() || cargaAc == null) {
tAc.setCarga(t.getCarga());
}else {
tAc.setCarga(cargaAc);
}
if(tipoLicenciaAc.isEmpty() || tipoLicenciaAc == null) {
tAc.setTipoLicencia(t.getTipoLicencia());
}else {
tAc.setTipoLicencia(tipoLicenciaAc);
}
if(disponibilidadAc.isEmpty() || disponibilidadAc == null) {
tAc.setDisponibilidad(t.getDisponibilidad());
}else {
tAc.setDisponibilidad(disponibilidadAc);
}
transporteDAO.actualizarTransporte(tAc);
menuTransporte();
}
}
public void eliminarTransporteApp() {
int idTransporte;
System.out.println();
System.out.println("Introducir ID Transporte y presionar Enter:");
idTransporte = reader.nextInt();
transporteDAO.eliminarTransporte(idTransporte);
menuTransporte();
}
public void buscarTransporteIdApp() {
Transporte t = new Transporte();
int idTransporte;
System.out.println();
System.out.println("Introducir ID de tu transporte y presionar Enter:");
idTransporte = reader.nextInt();
t = transporteDAO.buscarTrasporte(idTransporte);
if(t.getIdTrasporte() == 0) {
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransporte();
}else {
System.out.println("ID Trasporte: "+t.getIdTrasporte());
System.out.println("Matrícula: "+t.getMatricula());
System.out.println("Marca: "+t.getMarca());
System.out.println("Modelo: "+t.getModelo());
System.out.println("Carga: "+t.getCarga());
System.out.println("Tipo Licencia: "+t.getTipoLicencia());
System.out.println("Disponibilidad : "+t.getDisponibilidad());
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransporte();
}
}
public void listarTrasportes() {
transporteDAO.mostrarTransportes();
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransporte();
}
}
La clase TransportistaApp
package com.tutosoftware.autotransport.app;
import java.util.InputMismatchException;
import java.util.Scanner;
import com.tutosoftware.autotransport.dao.LicenciaDAO;
import com.tutosoftware.autotransport.dao.TransporteDAO;
import com.tutosoftware.autotransport.dao.TransportistaDAO;
import com.tutosoftware.autotransport.domain.Licencia;
import com.tutosoftware.autotransport.domain.Transporte;
import com.tutosoftware.autotransport.domain.Transportista;
public class TransportistaApp {
Scanner reader = new Scanner(System.in);
int numero;
LicenciaDAO licenciaDAO = new LicenciaDAO();
TransporteDAO transporteDAO = new TransporteDAO();
TransportistaDAO transportistaDAO = new TransportistaDAO();
public TransportistaApp() {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
menuTransportista();
}
public void menuTransportista() {
System.out.println("************************************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Tutosofware TRANSPORTISTA Mexican Transport *");
System.out.println("* El menu es el siguiente: *");
System.out.println("* 1.Insertar Transportista *");
System.out.println("* 2.Modificar Transportista *");
System.out.println("* 3.Eliminar Transportista *");
System.out.println("* 4.Buscar Transportista por ID *");
System.out.println("* 5.Listar Transportistas *");
System.out.println("* 6.Regresar a menú principal *");
System.out.println("* 7.Salir aplicación *");
System.out.println("************************************************************");
System.out.println();
System.out.println();
try {
System.out.println("Introduce un numero entero y presionar enter");
numero = reader.nextInt();
} catch (InputMismatchException ime) {
System.out.println("¡Cuidado! Solo puedes insertar números. ");
reader.next();
}
if (numero == 1) {
insertarTransportistaApp();
} else if (numero == 2) {
modificarTransportistaApp();
} else if (numero == 3) {
eliminarTransportistaApp();
}else if(numero == 4){
buscarTransportistaPorIdApp();
}else if(numero ==5) {
listarTransportistas();
}else if (numero == 6) {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
Principal p = new Principal();
p.menu();
} else {
try {
new ProcessBuilder("cmd", "/c", "pause").inheritIO().start().waitFor();
System.exit(0);
} catch (Exception e) {
/* maneja tus errores aquí */
}
}
}
/****************************************************************************
* Para insertar un transportista primero debe tener registrada su licencia
* como requisito obligatorio y luego para buscaarle asignar un transporte
* de acuerdo a su tipo de licencia sino cumple esos características no se puede
* registrar el transportista
*
*
*
*
*
*
*/
public void insertarTransportistaApp() {
Transporte t = new Transporte();
Licencia licencia = new Licencia();
Transportista tr = new Transportista();
String idLicencia,telefono;
System.out.println();
System.out.println("Introducir ID Licencia registrado y presionar Enter:");
idLicencia = reader.next();
licencia = licenciaDAO.buscarLicencia(idLicencia);
if(licencia.getIdLicencia() == null) {
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}else {
int verificaRegistros;
verificaRegistros = transporteDAO.mostrarTransportePorTipoLicenciaDisponibilidad(licencia.getTipoLetra());
if(verificaRegistros == 0) {
reader.nextLine();
System.out.println("No hay transportes Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}else {
int idTransporte;
System.out.println();
System.out.println("Introducir ID de tu transporte y presionar Enter:");
idTransporte = reader.nextInt();
t = transporteDAO.buscarTrasporte(idTransporte,licencia.getTipoLetra());
if(t.getIdTrasporte() == 0) {
reader.nextLine();
System.out.println("El transporte no existe Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}else {
System.out.println("Introduce número telefonico y presiona enter");
telefono = reader.next();
tr.setIdTransporte(t.getIdTrasporte());
tr.setIdLicencia(licencia.getIdLicencia());
tr.setNombre(licencia.getNombre());
tr.setApellidoPaterno(licencia.getApellidoPaterno());
tr.setApellidoMaterno(licencia.getApellidoMaterno());
tr.setTelefono(telefono);
transportistaDAO.insertarTransportista(tr);
menuTransportista();
}
}
}
}
/*
* Para la actualización del transportisa nada mas se va a modificar
* NOMBRE,APELLDO PATERNO,APELLIDO MATERNO y TELEFONO por
* que si modifcamos la licencia y transporte tendriamos que
* validar y eso haria mas compleja la pantalla de captura
*
* para poder modifcar licencia y transporte se debe eliminar
* el transportis y volverlo a capturar.
*
*
*
*
*
*
*/
public void modificarTransportistaApp() {
Transportista t = new Transportista();
Transportista tAc = new Transportista();
String nombreAc,apellidoPaternoAc,apellidoMaternoAc,telefonoAc;
int idTransportista;
System.out.println();
System.out.println("Introducir ID de tu transportista y presionar Enter:");
idTransportista = reader.nextInt();
t = transportistaDAO.buscarTransportista(idTransportista);
if(t.getIdTransportista() == 0) {
reader.nextLine();
System.out.println("No hay ese transportista con ese ID Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}else {
System.out.println("ID Trasportista: "+t.getIdTransportista());
System.out.println("ID trasporte: "+t.getIdTransporte());
System.out.println("ID Licencia: "+t.getIdLicencia());
System.out.println("Nombre: "+t.getNombre());
System.out.println("Apellido Paterno: "+t.getApellidoPaterno());
System.out.println("Apellido Materno: "+t.getApellidoMaterno());
System.out.println("Telefono : "+t.getTelefono());
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
System.out.println("Actualizar Nombre o presionar enter");
nombreAc=reader.nextLine();
System.out.println("Actualizar Apellido Paterno o presionar enter");
apellidoPaternoAc=reader.nextLine();
System.out.println("Actualizar Apellido Materno o presionar enter");
apellidoMaternoAc=reader.nextLine();
System.out.println("Actualizar telefono o presionar enter");
telefonoAc=reader.nextLine();
tAc.setIdTransportista(t.getIdTransportista());
if(nombreAc.isEmpty() || nombreAc == null) {
tAc.setNombre(t.getNombre());
}else {
tAc.setNombre(nombreAc);
}
if(apellidoPaternoAc.isEmpty() || apellidoPaternoAc == null) {
tAc.setApellidoPaterno(t.getApellidoPaterno());
}else {
tAc.setApellidoPaterno(apellidoPaternoAc);
}
if(apellidoMaternoAc.isEmpty() || apellidoMaternoAc == null) {
tAc.setApellidoMaterno(t.getApellidoMaterno());
}else {
tAc.setApellidoMaterno(apellidoMaternoAc);
}
if(telefonoAc.isEmpty() || telefonoAc == null) {
tAc.setTelefono(t.getTelefono());
}else {
tAc.setTelefono(telefonoAc);
}
transportistaDAO.actualizarTrasportista(tAc);
menuTransportista();
}
}
public void eliminarTransportistaApp() {
int idTransportista;
System.out.println();
System.out.println("Introducir ID Transportista y presionar Enter:");
idTransportista = reader.nextInt();
transportistaDAO.eliminarTransportista(idTransportista);
menuTransportista();
}
public void buscarTransportistaPorIdApp() {
Transportista t = new Transportista();
int idTransportista;
System.out.println();
System.out.println("Introducir ID de tu transportista y presionar Enter:");
idTransportista = reader.nextInt();
t = transportistaDAO.buscarTransportista(idTransportista);
if(t.getIdTransportista() == 0) {
reader.nextLine();
System.out.println("No hay ese transportista con ese ID Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}else {
System.out.println("ID Trasportista: "+t.getIdTransportista());
System.out.println("ID trasporte: "+t.getIdTransporte());
System.out.println("ID Licencia: "+t.getIdLicencia());
System.out.println("Nombre: "+t.getNombre());
System.out.println("Apellido Paterno: "+t.getApellidoPaterno());
System.out.println("Apellido Materno: "+t.getApellidoMaterno());
System.out.println("Telefono : "+t.getTelefono());
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}
}
public void listarTransportistas() {
transportistaDAO.mostrarTransportistas();
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuTransportista();
}
}
La clase ViajesApp
package com.tutosoftware.autotransport.app;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.InputMismatchException;
import java.util.Scanner;
import com.tutosoftware.autotransport.dao.TransportistaDAO;
import com.tutosoftware.autotransport.dao.ViajeDAO;
import com.tutosoftware.autotransport.domain.Transportista;
import com.tutosoftware.autotransport.domain.Viaje;
public class ViajesApp {
TransportistaDAO transportistaDAO = new TransportistaDAO();
ViajeDAO viajeDAO = new ViajeDAO();
Scanner reader = new Scanner(System.in);
int numero;
ViajesApp(){
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
menuViajes();
}
public void menuViajes() {
System.out.println("************************************************************");
System.out.println("* *");
System.out.println("* *");
System.out.println("* Tutosofware Viajes Mexican Transport *");
System.out.println("* El menu es el siguiente: *");
System.out.println("* 1.Insertar Viaje *");
System.out.println("* 2.Listar Viajes *");
System.out.println("* 3.Regresar Menu Pricipal *");
System.out.println("* 4.Salir Apilcacion *");
System.out.println("************************************************************");
System.out.println();
System.out.println();
try {
System.out.println("Introduce un numero entero y presionar enter");
numero = reader.nextInt();
} catch (InputMismatchException ime) {
System.out.println("¡Cuidado! Solo puedes insertar números. ");
reader.next();
}
if (numero == 1) {
try {
insertarViajeApp();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else if (numero == 2) {
listarViajes();
} else if (numero == 3) {
try {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
} catch (Exception e) {
/* No hacer nada */
}
Principal p = new Principal();
p.menu();
} else {
try {
new ProcessBuilder("cmd", "/c", "pause").inheritIO().start().waitFor();
System.exit(0);
} catch (Exception e) {
/* maneja tus errores aquí */
}
}
}
public void insertarViajeApp() throws ParseException {
String fecha,descripcion;
Viaje v = new Viaje();
Transportista t = new Transportista();
int idTransportista;
System.out.println();
System.out.println("Introducir ID de tu transportista y presionar Enter:");
idTransportista = reader.nextInt();
t = transportistaDAO.buscarTransportista(idTransportista);
if(t.getIdTransportista() == 0) {
reader.nextLine();
System.out.println("No hay ese transportista con ese ID Presiona Enter para Continuar");
reader.nextLine();
menuViajes();
}else {
System.out.println("Introducir Fecha de viaje ejemplo el formato es 30-01-2020 y presionae enter");
fecha = reader.next();
reader.nextLine();
System.out.println("Introducir una descripción del viaje");
descripcion=reader.nextLine();
java.util.Date date = new SimpleDateFormat("dd-MM-yyyy").parse(fecha);
java.sql.Date sqlDate = new java.sql.Date(date.getTime());
v.setFecha(sqlDate);
v.setIdTransporte(t.getIdTransporte());
v.setIdTransportista(t.getIdTransportista());
v.setNombre(t.getNombre());
v.setApellidoPaterno(t.getApellidoPaterno());
v.setApellidoMaterno(t.getApellidoMaterno());
v.setDescripcion(descripcion);
viajeDAO.insertarViaje(v);
menuViajes();
}
}
public void listarViajes() {
viajeDAO.mostrarViajes();
reader.nextLine();
System.out.println("Presiona Enter para Continuar");
reader.nextLine();
menuViajes();
}
}