public Mobibus cercano(Emergencia em) { disponibles(); Mobibus res = null; double menor = distancia(disponibles.get(0).getUbicacion(), em.darUbicacion()); for (int i = 1; i < disponibles.size(); i++) { double x = distancia(disponibles.get(i).getUbicacion(), em.darUbicacion()); if (x < menor) { menor = x; res = disponibles.get(i); } } return res; }
/** * NO SE USAN/FUNCIONAN PORQUE VEHICULO NO ES ENTITY @BodyParser.Of(BodyParser.Json.class) public * Result create(){ JsonNode j = Controller.request().body().asJson(); Vehiculo vehiculoN = * Vehiculo.bind(j); vehiculoN.save(); return ok(Json.toJson(vehiculoN)); } * * <p>public Result readAll() { List<Vehiculo> vehiculos = Vehiculo.darVehiculos(); return * ok(Json.toJson(vehiculos)); } * * <p>public Result readVehiculoID(String id) { Vehiculo vehiculoEncontrado = (Vehiculo) * Vehiculo.finder.byId(id); if(vehiculoEncontrado != null) { return * ok(Json.toJson(vehiculoEncontrado)); } return notFound(); } */ @BodyParser.Of(BodyParser.Json.class) public Result agregarDatos(Long id_vehiculo, int tipo_vehiculo) { String mensaje; JsonNode j = Controller.request().body().asJson(); Vehiculo vehiculoEncontrado = tipo_vehiculo == Vehiculo.TRANVIA ? (Vehiculo) TranviaVehiculo.finder.byId(id_vehiculo) : (Vehiculo) MoviBusVehiculo.finder.byId(id_vehiculo); if (vehiculoEncontrado != null) { Datos datosRecibidos = Datos.bind(j); datosRecibidos.setIdVehiculo(vehiculoEncontrado.getIdVehiculo()); datosRecibidos.save(); vehiculoEncontrado.setUltimosDatos(datosRecibidos); vehiculoEncontrado.save(); if (vehiculoEncontrado.getEstado() != Vehiculo.ACCIDENTE && (datosRecibidos.isSensorChoque() || datosRecibidos.isBotonPanico() || datosRecibidos.getSensorTermico() > 38)) { // Crear emergencia vehiculoEncontrado.setEstado(Vehiculo.ACCIDENTE); Datos ultimosDatos = vehiculoEncontrado.getUltimosDatos(); Emergencia em = new Emergencia( 0, ultimosDatos.getHoraMedicion(), "Comentarios", "Altitud:" + ultimosDatos.getGpsAltitud() + "-Latitud:" + ultimosDatos.getGpsLatitud(), "Niv Indef/moment"); vehiculoEncontrado.setUltimaEmergencia(em); vehiculoEncontrado.save(); em.save(); } return ok(Json.toJson(datosRecibidos)); } else { return notFound(); } }