/** * Anular notificación * * @param idNotificacion a anular * @param request con datos de autenticación * @return String * @throws Exception */ @RequestMapping("/override/{idNotificacion}") public String overrideNoti( @PathVariable("idNotificacion") String idNotificacion, 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 = "redirect:/404"; } if (urlValidacion.isEmpty()) { FichaRotavirus fichaRotavirus = rotaVirusService.getFichaById(idNotificacion); if (fichaRotavirus != null) { DaNotificacion notificacion = fichaRotavirus.getDaNotificacion(); notificacion.setPasivo(true); daNotificacionService.updateNotificacion(notificacion); rotaVirusService.saveOrUpdate(fichaRotavirus); return "redirect:/rotavirus/search/" + fichaRotavirus.getDaNotificacion().getPersona().getPersonaId(); } else { return "redirect:/404"; } } else { return "redirect:/" + urlValidacion; } }
/** * Guardar datos de una notificación rotavirus (agregar o actualizar) * * @param request con los datos de la notificación * @param response con el resultado de la acción * @throws ServletException * @throws IOException */ @RequestMapping( value = "save", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = "application/json") protected void save(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String json = ""; String resultado = ""; String idNotificacion = ""; try { logger.debug("Guardando datos de Ficha Rotavirus"); BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream(), "UTF8")); json = br.readLine(); FichaRotavirus fichaRotavirus = jSonToFichaRotavirus(json); if (fichaRotavirus.getDaNotificacion() == null) { DaNotificacion noti = guardarNotificacion(json, request); fichaRotavirus.setDaNotificacion(noti); } else { if (fichaRotavirus.getFechaInicioDiarrea() != null) { fichaRotavirus .getDaNotificacion() .setFechaInicioSintomas(fichaRotavirus.getFechaInicioDiarrea()); daNotificacionService.updateNotificacion(fichaRotavirus.getDaNotificacion()); } } rotaVirusService.saveOrUpdate(fichaRotavirus); idNotificacion = fichaRotavirus.getDaNotificacion().getIdNotificacion(); } catch (Exception ex) { logger.error(ex.getMessage(), ex); ex.printStackTrace(); resultado = messageSource.getMessage("msg.error.save.rota", null, null); resultado = resultado + ". \n " + ex.getMessage(); } finally { Map<String, String> map = new HashMap<String, String>(); map.put("mensaje", resultado); map.put("idNotificacion", idNotificacion); String jsonResponse = new Gson().toJson(map); response.getOutputStream().write(jsonResponse.getBytes()); response.getOutputStream().close(); } }