diff --git a/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java b/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java index 9d36a8ea1bd43db8eb84421cf83a963a656a8866..fa7b9de9915f96caa9bba745dc9b9c77412b5a18 100644 --- a/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java +++ b/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java @@ -374,6 +374,18 @@ public class CAdmin implements IAdmin{ // una manda a quitar todoslos videos del usuario a eliminar this.seleccionarUsuario(elim.getNickname()); ArrayList<DtVideo> videos = this.listarVideosDeUsuario(); + // Para facilitar el algoritmo, agrego a la coleccion (de manera provisoria) los usuarios eliminados + // ¡Recuerdo los nicknames para sacarlos despues! + ArrayList<String> nicksProvisorios = new ArrayList(); + try { + for (Usuario u : new UsuarioJpaController().findUsuarioEliminadoEntities()){ + nicksProvisorios.add(u.getNickname()); + this.usuarios.put(u.getNickname(), u); + } + } catch (Exception e) { + throw new RuntimeException(e.getMessage()); + } + for (Map.Entry<String, Usuario> it : usuarios.entrySet()){ if (it.getValue().getNickname().equals(elim.getNickname())) continue; @@ -395,6 +407,11 @@ public class CAdmin implements IAdmin{ } } + // quito de la coleccion los usuarios que estaban eliminados y agregue provisoriamente antes del for + for (String s : nicksProvisorios){ + this.usuarios.remove(s); + } + // obtiene la fecha actual java.util.Date utilDate = new java.util.Date(); java.sql.Date hoy = new java.sql.Date(utilDate.getTime());