Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Alvaro Ordóñez Romero
/
DAE-aha00026-aor00039
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
e40c6cb2
authored
Oct 26, 2023
by
Alvaro Ordóñez Romero
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Modificación metodo buscarViaje()
parent
75d54b09
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
35 additions
and
8 deletions
src/main/java/com/carpooling/carpoolingaoraha/entidades/Usuario.java
src/main/java/com/carpooling/carpoolingaoraha/entidades/Usuario.java
View file @
e40c6cb2
package
com
.
carpooling
.
carpoolingaoraha
.
entidades
;
package
com
.
carpooling
.
carpoolingaoraha
.
entidades
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.Date
;
import
java.util.List
;
import
static
com
.
carpooling
.
carpoolingaoraha
.
entidades
.
Rol
.
CONDUCTOR
;
import
static
com
.
carpooling
.
carpoolingaoraha
.
entidades
.
Rol
.
CONDUCTOR
;
import
static
com
.
carpooling
.
carpoolingaoraha
.
entidades
.
Rol
.
PASAJERO
;
import
static
com
.
carpooling
.
carpoolingaoraha
.
entidades
.
Rol
.
PASAJERO
;
...
@@ -169,14 +167,43 @@ public class Usuario {
...
@@ -169,14 +167,43 @@ public class Usuario {
List
<
Viaje
>
viajesDisponibles
=
new
ArrayList
<>();
List
<
Viaje
>
viajesDisponibles
=
new
ArrayList
<>();
for
(
Viaje
viaje
:
todosLosViajes
)
{
for
(
Viaje
viaje
:
todosLosViajes
)
{
if
(
viaje
.
getOrigen
().
equals
(
origen
)
&&
viaje
.
getDestino
().
equals
(
destino
))
{
if
(
viaje
.
getOrigen
().
equals
(
origen
)
&&
viaje
.
getDestino
().
equals
(
destino
)
&&
if
(
viaje
.
getFechaSalida
().
equals
(
fecha
))
{
viaje
.
getFechaSalida
().
equals
(
fecha
))
{
if
(
getRol
().
equals
(
PASAJERO
))
{
if
(
getRol
().
equals
(
PASAJERO
))
{
viajesDisponibles
.
add
(
viaje
);
viajesDisponibles
.
add
(
viaje
);
}
}
}
}
}
}
}
// Filtrar las reservas asociadas a los viajes y calcular la puntuación de los conductores
List
<
Reserva
>
reservasAsociadas
=
new
ArrayList
<>();
for
(
Reserva
reserva
:
sistemaCarPooling
.
getReservas
())
{
if
(
viajesDisponibles
.
contains
(
reserva
.
getViaje
()))
{
reservasAsociadas
.
add
(
reserva
);
}
}
// Ordenar la lista de viajes en función de la puntuación de los conductores
Collections
.
sort
(
viajesDisponibles
,
new
Comparator
<
Viaje
>()
{
@Override
public
int
compare
(
Viaje
viaje1
,
Viaje
viaje2
)
{
int
puntuacionConductor1
=
0
;
int
puntuacionConductor2
=
0
;
for
(
Reserva
reserva
:
reservasAsociadas
)
{
if
(
reserva
.
getViaje
().
equals
(
viaje1
))
{
puntuacionConductor1
=
Math
.
max
(
puntuacionConductor1
,
reserva
.
getConductor
().
getPuntuacion
());
}
if
(
reserva
.
getViaje
().
equals
(
viaje2
))
{
puntuacionConductor2
=
Math
.
max
(
puntuacionConductor2
,
reserva
.
getConductor
().
getPuntuacion
());
}
}
// Ordenar en orden descendente
return
Integer
.
compare
(
puntuacionConductor2
,
puntuacionConductor1
);
}
});
return
viajesDisponibles
;
return
viajesDisponibles
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment