}
return listaDTOS;
}
public EstadoDesastreDTO reporteEstadoDesastre(Long idDesastre) {
EstadoDesastreDTO dto=new EstadoDesastreDTO();
dto.setNecesidadesLocales(getDTOsNececidades(NecesidadesDAO.getInstance().buscarNecesidades(idDesastre, Long.valueOf(EstadoNecesidad.INGRESADA), true)));
dto.setNecesidadesPendientes(getDTOsNececidades(NecesidadesDAO.getInstance().buscarNecesidades(idDesastre, Long.valueOf(EstadoNecesidad.INGRESADA), false)));
dto.getNecesidadesPendientes().addAll(getDTOsNececidades(NecesidadesDAO.getInstance().buscarNecesidades(idDesastre, Long.valueOf(EstadoNecesidad.EN_PROCESO), false)));
dto.setNecesidadesRechazadas(getDTOsNececidades(NecesidadesDAO.getInstance().buscarNecesidades(idDesastre, Long.valueOf(EstadoNecesidad.RECHAZADA), false)));
dto.setNecesidadesAprobadas(getDTOsNececidades(NecesidadesDAO.getInstance().buscarNecesidades(idDesastre, Long.valueOf(EstadoNecesidad.ACEPTADA), false)));
dto.setSolicitudPendiente(getDTSSolicitudEnvio(SolicitudEnvioDAO.getInstance().buscarSolicitudesEnvio(0L, 0L, EstadoSolicitudEnvio.NUEVA)));
ArrayList<SolicitudEnvio> solicitudesPEndientes=new ArrayList<SolicitudEnvio>();
ArrayList<SolicitudEnvio> solicitudesNoRecibidas=new ArrayList<SolicitudEnvio>();
ArrayList<SolicitudEnvio> solicitudesRecibidas=new ArrayList<SolicitudEnvio>();
for(GestionNecesidad n:NecesidadesDAO.getInstance().buscarGestionNecesidadesPorDesastre(idDesastre)){
for(PlanSuministro ps:n.getPlanesSuministros()){
for(SolicitudEnvio solEnv:ps.getSolicitudesEnvios()){
switch(solEnv.getEstado()){
case EstadoSolicitudEnvio.NUEVA:
solicitudesPEndientes.add(solEnv);
break;
case EstadoSolicitudEnvio.ENVIADA:
solicitudesNoRecibidas.add(solEnv);
break;
case EstadoSolicitudEnvio.RECIBIDA_OK:
solicitudesRecibidas.add(solEnv);
break;
case EstadoSolicitudEnvio.RECIBIDA_OBS:
solicitudesRecibidas.add(solEnv);
break; }
}
}
}
dto.setSolicitudEnviadasNoRecibidas(getDTSSolicitudEnvio(solicitudesPEndientes));
dto.setSolicitudEnvioRecibidas(getDTSSolicitudEnvio(solicitudesRecibidas));
dto.setSolicitudEnviadasNoRecibidas(getDTSSolicitudEnvio(solicitudesNoRecibidas));
dto.setCostos(getDTOsCostos(CostoDAO.getInstance().listaoCosto(idDesastre)));
return dto;
}