/** * Obtiene las notificaciones de tipo Rotavirus para la persona seleccionada * * @param idPerson a consultar * @return List<FichaRotavirus> * @throws Exception */ @RequestMapping(value = "getResults", method = RequestMethod.GET, produces = "application/json") public @ResponseBody List<FichaRotavirus> getResults( @RequestParam(value = "idPerson", required = true) long idPerson) throws Exception { logger.info("Obteniendo los resultados de la búsqueda"); List<FichaRotavirus> results = null; results = rotaVirusService.getFichaByPersonaId(idPerson); return results; }
/** * Custom handler for displaying persons reports or create a new one. * * @param idPerson the ID of the person * @return a ModelMap with the model attributes for the respective view */ @RequestMapping("search/{idPerson}") public ModelAndView showPersonReport( @PathVariable("idPerson") long idPerson, HttpServletRequest request) throws Exception { String urlValidacion = ""; try { urlValidacion = seguridadService.validarLogin(request); // si la url esta vacia significa que la validaci�n del login fue exitosa if (urlValidacion.isEmpty()) urlValidacion = seguridadService.validarAutorizacionUsuario( request, ConstantsSecurity.SYSTEM_CODE, true); } catch (Exception e) { e.printStackTrace(); urlValidacion = "404"; } ModelAndView mav = new ModelAndView(); if (urlValidacion.isEmpty()) { List<FichaRotavirus> results = rotaVirusService.getFichaByPersonaId(idPerson); long idUsuario = seguridadService.obtenerIdUsuario(request); if (results.size() == 0) { boolean autorizado = true; FichaRotavirus fichaRotavirus = new FichaRotavirus(); DaNotificacion noti = new DaNotificacion(); Initialize(); SisPersona persona = personaService.getPersona(idPerson); // Si es usuario a nivel central se cargan todas las unidades asociados al SILAIS y // municipio if (seguridadService.esUsuarioNivelCentral(idUsuario, ConstantsSecurity.SYSTEM_CODE)) { entidades = entidadAdmonService.getAllEntidadesAdtvas(); } else { entidades = seguridadService.obtenerEntidadesPorUsuario( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE); } if (persona != null) { noti.setPersona(persona); fichaRotavirus.setDaNotificacion(noti); Divisionpolitica departamentoProce = null; List<Divisionpolitica> municipiosResi = new ArrayList<Divisionpolitica>(); List<Comunidades> comunidades = new ArrayList<Comunidades>(); if (fichaRotavirus.getDaNotificacion().getPersona().getMunicipioResidencia() != null) { departamentoProce = divisionPoliticaService.getDepartamentoByMunicipi( fichaRotavirus .getDaNotificacion() .getPersona() .getMunicipioResidencia() .getCodigoNacional()); municipiosResi = divisionPoliticaService.getMunicipiosFromDepartamento( departamentoProce.getCodigoNacional()); comunidades = comunidadesService.getComunidades( fichaRotavirus .getDaNotificacion() .getPersona() .getMunicipioResidencia() .getCodigoNacional()); } mav.addObject("entidades", entidades); mav.addObject("autorizado", autorizado); mav.addObject("departamentoProce", departamentoProce); mav.addObject("municipiosResi", municipiosResi); mav.addObject("comunidades", comunidades); mav.addObject("fichaRotavirus", fichaRotavirus); mav.addAllObjects(mapModel); mav.setViewName("rotavirus/create"); } else { mav.setViewName("404"); } } else { List<String> fichaRotavirusAutorizadas = new ArrayList<String>(); for (FichaRotavirus rt : results) { if (idUsuario != 0) { if (seguridadService.esUsuarioAutorizadoEntidad( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE, rt.getDaNotificacion().getCodSilaisAtencion().getCodigo()) && seguridadService.esUsuarioAutorizadoUnidad( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE, rt.getDaNotificacion().getCodUnidadAtencion().getCodigo())) { fichaRotavirusAutorizadas.add(rt.getDaNotificacion().getIdNotificacion()); } } } mav.addObject("records", results); mav.addObject("idPerson", idPerson); mav.addObject("fichasAutorizadas", fichaRotavirusAutorizadas); mav.setViewName("rotavirus/results"); } } else { mav.setViewName(urlValidacion); } return mav; }