コード例 #1
0
  /**
   * Finaliza el ultimo Trayecto que se ha iniciado
   *
   * @param idVehiculo
   * @param idTrayecto
   * @param tipoVehiculo
   * @return ok con el Json del Trayecto que se finalizo,
   * @return badReques si no se está intentando finalizar el ultimo trayecto iniciado
   * @return notFound si no se encuentra alguno de los datos necesarios
   */
  @BodyParser.Of(BodyParser.Json.class)
  public Result finalizarUltimoTrayecto(Long idVehiculo, Long idTrayecto, int tipoVehiculo) {
    Vehiculo vehiculoEncontrado =
        tipoVehiculo == Vehiculo.TRANVIA
            ? (Vehiculo) TranviaVehiculo.finder.byId(idVehiculo)
            : (Vehiculo) MoviBusVehiculo.finder.byId(idVehiculo);
    // Trayecto trayecoEncontrado = vehiculoEncontrado.getUltimoTrayecto();
    Trayecto trayecoEncontrado = (Trayecto) Trayecto.finder.byId(idTrayecto);
    Trayecto ultimoTrayectoVeh =
        vehiculoEncontrado != null ? vehiculoEncontrado.getUltimoTrayecto() : null;
    if (trayecoEncontrado != null && vehiculoEncontrado != null) {
      if (ultimoTrayectoVeh != null && ultimoTrayectoVeh.getIdTrayecto() == idTrayecto) {
        JsonNode json = Controller.request().body().asJson();
        Trayecto trayectoRecibido = Trayecto.bind(json);
        if (trayectoRecibido != null) {
          TrayectoController.finalizarTrayecto(
              trayecoEncontrado.getIdTrayecto(),
              trayectoRecibido.getHoraFin(),
              trayectoRecibido.getIncidentes());
        }
        vehiculoEncontrado.setEstado(Vehiculo.DISPONIBLE);
        vehiculoEncontrado.save();
        trayecoEncontrado = (Trayecto) Trayecto.finder.byId(idTrayecto);
        //                trayectoRecibido.delete();
        return ok(Json.toJson(trayecoEncontrado));
      } else {
        return badRequest();
      }
    }

    return notFound();
  }
コード例 #2
0
 public Result readTrayectos(Long idVehiculo, int tipoVehiculo) {
   Vehiculo vehiculoEncontrado =
       tipoVehiculo == Vehiculo.TRANVIA
           ? (Vehiculo) TranviaVehiculo.finder.byId(idVehiculo)
           : (Vehiculo) MoviBusVehiculo.finder.byId(idVehiculo);
   if (vehiculoEncontrado != null) {
     return ok(Json.toJson(TrayectoController.getTrayectosVehiculo(idVehiculo)));
   } else {
     return notFound();
   }
 }