/** * * Obetener la información de una notificación y cargarla en pantalla para su edición * * @param idNotificacion a cargar * @param request con datos de autenticación * @return ModelAndView * @throws Exception */ @RequestMapping("edit/{idNotificacion}") public ModelAndView editIrag( @PathVariable("idNotificacion") String idNotificacion, HttpServletRequest request) throws Exception { String urlValidacion = ""; boolean autorizado = true; 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()) { if (idNotificacion != null) { FichaRotavirus fichaRotavirus = rotaVirusService.getFichaById(idNotificacion); if (fichaRotavirus != null) { Initialize(); long idUsuario = seguridadService.obtenerIdUsuario(request); // irag.setUsuario(usuarioService.getUsuarioById((int) idUsuario)); if (idUsuario != 0) { autorizado = seguridadService.esUsuarioNivelCentral(idUsuario, ConstantsSecurity.SYSTEM_CODE) || ((fichaRotavirus.getDaNotificacion().getCodSilaisAtencion() != null && fichaRotavirus.getDaNotificacion().getCodUnidadAtencion() != null) && seguridadService.esUsuarioAutorizadoEntidad( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE, fichaRotavirus.getDaNotificacion().getCodSilaisAtencion().getCodigo()) && seguridadService.esUsuarioAutorizadoUnidad( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE, fichaRotavirus.getDaNotificacion().getCodUnidadAtencion().getCodigo())); } entidades = seguridadService.obtenerEntidadesPorUsuario( (int) idUsuario, ConstantsSecurity.SYSTEM_CODE); if (entidades.size() <= 0) { entidades.add(fichaRotavirus.getDaNotificacion().getCodSilaisAtencion()); } Divisionpolitica municipio = divisionPoliticaService.getMunicipiosByUnidadSalud( fichaRotavirus .getDaNotificacion() .getCodUnidadAtencion() .getMunicipio() .getCodigoNacional()); List<Divisionpolitica> munic = divisionPoliticaService.getMunicipiosBySilais( fichaRotavirus.getDaNotificacion().getCodSilaisAtencion().getCodigo()); List<Unidades> uni = null; if (seguridadService.esUsuarioNivelCentral(idUsuario, ConstantsSecurity.SYSTEM_CODE)) { if (fichaRotavirus.getDaNotificacion().getCodSilaisAtencion() != null && fichaRotavirus.getDaNotificacion().getCodUnidadAtencion() != null) { uni = seguridadService.obtenerUnidadesPorUsuarioEntidadMunicipio( (int) idUsuario, fichaRotavirus.getDaNotificacion().getCodSilaisAtencion().getCodigo(), fichaRotavirus .getDaNotificacion() .getCodUnidadAtencion() .getMunicipio() .getCodigoNacional(), ConstantsSecurity.SYSTEM_CODE, HealthUnitType.UnidadesPrimHosp.getDiscriminator()); } } else { if (fichaRotavirus.getDaNotificacion().getCodSilaisAtencion() != null && fichaRotavirus.getDaNotificacion().getCodUnidadAtencion() != null) { uni = seguridadService.obtenerUnidadesPorUsuarioEntidadMunicipio( (int) idUsuario, fichaRotavirus.getDaNotificacion().getCodSilaisAtencion().getCodigo(), fichaRotavirus .getDaNotificacion() .getCodUnidadAtencion() .getMunicipio() .getCodigoNacional(), ConstantsSecurity.SYSTEM_CODE, HealthUnitType.UnidadesPrimHosp.getDiscriminator()); if (!uni.contains(fichaRotavirus.getDaNotificacion().getCodUnidadAtencion())) { uni.add(fichaRotavirus.getDaNotificacion().getCodUnidadAtencion()); } } } // datos persona Divisionpolitica departamentoProce; List<Divisionpolitica> municipiosResi = null; List<Comunidades> comunidades = null; if (fichaRotavirus.getDaNotificacion().getPersona().getMunicipioResidencia() != null) { String municipioResidencia = fichaRotavirus .getDaNotificacion() .getPersona() .getMunicipioResidencia() .getCodigoNacional(); departamentoProce = divisionPoliticaService.getDepartamentoByMunicipi(municipioResidencia); municipiosResi = divisionPoliticaService.getMunicipiosFromDepartamento( departamentoProce.getCodigoNacional()); String comu = fichaRotavirus .getDaNotificacion() .getPersona() .getMunicipioResidencia() .getCodigoNacional(); comunidades = comunidadesService.getComunidades(comu); } mav.addObject("fichaRotavirus", fichaRotavirus); mav.addObject("autorizado", autorizado); mav.addObject("entidades", entidades); mav.addObject("munic", munic); mav.addObject("municipiosResi", municipiosResi); mav.addObject("comunidades", comunidades); mav.addObject("uni", uni); mav.addObject("municipio", municipio); mav.addAllObjects(mapModel); mav.setViewName("rotavirus/create"); } else { mav.setViewName("404"); } } else { mav.setViewName("404"); } } else { mav.setViewName(urlValidacion); } return mav; }
/** * Custom handler to create a new one. * * @param idPerson the ID of the person * @return a ModelMap with the model attributes for the respective view */ @RequestMapping("new/{idPerson}") public ModelAndView newFicha(@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()) { boolean autorizado = true; FichaRotavirus fichaRotavirus = new FichaRotavirus(); DaNotificacion noti = new DaNotificacion(); Initialize(); SisPersona persona = personaService.getPersona(idPerson); long idUsuario = seguridadService.obtenerIdUsuario(request); // 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 = divisionPoliticaService.getDepartamentoByMunicipi( fichaRotavirus .getDaNotificacion() .getPersona() .getMunicipioResidencia() .getCodigoNacional()); List<Divisionpolitica> municipiosResi = divisionPoliticaService.getMunicipiosFromDepartamento( departamentoProce.getCodigoNacional()); List<Comunidades> 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 { mav.setViewName(urlValidacion); } return mav; }