コード例 #1
0
  @RequestMapping(method = RequestMethod.PUT)
  public String update(
      @Valid @ModelAttribute("prueba") Prueba prueba,
      BindingResult result,
      ModelMap modelMap,
      SessionStatus status,
      HttpServletRequest request) {
    if (prueba == null) throw new IllegalArgumentException("A prueba is required");

    // Metodo para traer los usuario de la UAI de una institucion en
    // especifico
    Util util = new Util();
    Query query = Auditor.findAuditorsById_OrganismoEnte(util.traerIdRif());
    List<Auditor> todos = query.getResultList();
    List<Auditor> losQueSon = new LinkedList<Auditor>();
    for (Auditor a : todos) {
      List<Usuario> usuarios = Usuario.findUsuariosByLogin(a.getLogin()).getResultList();
      for (Usuario u : usuarios) {
        for (RolUsuario r : u.getRoles()) {
          if (r.getNombre().equals("ROLE_UNIDAD_COORDINADOR")) {
            losQueSon.add(a);
            break;
          } else if (r.getNombre().equals("ROLE_UNIDAD_AUDITOR")) {
            losQueSon.add(a);
            break;
          } else if (r.getNombre().equals("ROLE_UNIDAD_GERENTE")) {
            losQueSon.add(a);
            break;
          }
        }
      }
    }

    if (result.hasErrors()) {
      modelMap.addAttribute("prueba", prueba);
      // modelMap.addAttribute("actuacions",
      // Actuacion.findAllActuacions());
      modelMap.addAttribute("auditors", losQueSon);
      modelMap.addAttribute("documentoes", Documento.findAllDocumentoes());
      modelMap.addAttribute(
          "estadoactividadactuacions", EstadoActividadActuacion.findAllEstadoActividadActuacions());
      modelMap.addAttribute(
          "requerimientoes",
          Requerimiento.findRequerimientoesByActuacion(prueba.getCodigoActuacion())
              .getResultList());
      return "prueba/update";
    }

    prueba.merge();
    Util.registrarEntradaEnBitacora(prueba, "Se modificó la Prueba ", request.getRemoteAddr());
    status.setComplete();

    return "redirect:/prueba/" + prueba.getId();
  }