コード例 #1
0
  @SkipValidation
  public String prepararSuscripcion() {

    if (!sessionValidate()) return INPUT;
    if (!verificarLong(id_servicio)) return INPUT;
    servicio = (ServicioInformacion) read(servicio, id_servicio);
    suscripcion_form = true;
    prepareRequest();
    if (read(solicitud).size() > 0)
      if (verifySuscriptionRequest(
          solicitud.getId_servicio_informacion(),
          solicitud.getId_ente_proveedor(),
          solicitud.getId_ente_solicitante())) {
        addFieldError(
            "error",
            error
                .getProperties()
                .getProperty("error.suscripcion.duplicated")
                .replace("{0}", ente.getSiglas().toUpperCase()));
        id_solicitud_suscripcion =
            getId_solicitud_sucripcion(
                solicitud.getId_servicio_informacion(),
                solicitud.getId_ente_proveedor(),
                solicitud.getId_ente_solicitante());
        setInvalid(true);
        setRequested(true);
      }
    return SUCCESS;
  }
コード例 #2
0
  // TODO Enviar notificación por correo, falta colocar el mensaje registro
  // exitoso para la vista
  @SkipValidation
  public String aprobarRechazarSuscripcion() {

    if (!sessionValidate()) return INPUT;
    boolean err = false;
    String motivo_proveedor;
    int decision;
    // validar datos y guardar
    motivo_proveedor = solicitud.getMotivo_proveedor();
    decision = solicitud.getSentencia();
    session = ActionContext.getContext().getSession();
    Usuario user = (Usuario) session.get("usuario");
    if (solicitud.getMotivo_proveedor().trim().isEmpty()) {
      addFieldError(
          "motivo_proveedor",
          error.getProperties().getProperty("error.suscripcion.motivo_proveedor"));
      err = true;
    } else if (!solicitud.getMotivo_proveedor().toUpperCase().matches(REGEX_TITLE)) {
      addFieldError("motivo_proveedor", error.getProperties().getProperty("error.regex.title"));
      err = true;
    }
    if (!(solicitud.getSentencia() >= 1 && solicitud.getSentencia() <= 2)) {
      addFieldError("sentencia", error.getProperties().getProperty("error.suscripcion.sentencia"));
      err = true;
    }
    solicitud = (SolicitudSuscripcion) read(solicitud, id_solicitud_suscripcion);
    solicitud.setSentencia(decision);
    solicitud.setMotivo_proveedor(motivo_proveedor);
    ente = (Ente) read(ente, solicitud.getId_ente_solicitante());
    servicio = (ServicioInformacion) read(servicio, solicitud.getId_servicio_informacion());
    if (err) return INPUT;
    // Valida que un trol quiera acceder a las solicitudes de otros entes
    if (user.getId_ente() != solicitud.getId_ente_proveedor()) return INPUT;
    // Valida que la solicitud.sentencia sea igual a cero (0 = pendiente).
    if (solicitud.getSentencia() == 0) return INPUT;
    // Si la desición es ACEPTADO se crea el registro suscrito
    if (decision == 1) {
      Suscrito suscrito = new Suscrito();
      suscrito.setId_ente(solicitud.getId_ente_solicitante());
      suscrito.setId_servicio_informacion(solicitud.getId_servicio_informacion());
      create(suscrito);
    }
    // Coloco a false leido para utilizarlo con el ente solicitante, en las
    // notificaciones.
    solicitud.setLeido(false);
    // Actualiza la solicitud de suscripción
    update(solicitud, solicitud.getId_solicitud_suscripcion());
    addActionMessage("EL VEREDICTO DE LA SOLICITUD DE SUSCRIPCIÓN HA SIDO PROCESADA CORRECTAMENTE");
    aprobarRechazar = false;
    return SUCCESS;
  }
コード例 #3
0
  @SkipValidation
  public String examinarSolicitud() {

    if (!sessionValidate()) return INPUT;
    session = ActionContext.getContext().getSession();
    Usuario user = (Usuario) session.get("usuario");
    solicitud = (SolicitudSuscripcion) read(solicitud, id_solicitud_suscripcion);
    // Valida que un trol quiera acceder a las solicitudes de otros entes
    if (!detalles_respuesta) {
      if (user.getId_ente() != solicitud.getId_ente_proveedor()) return INPUT;
    } else {
      if (user.getId_ente() != solicitud.getId_ente_solicitante()) return INPUT;
    }
    // Guardo que la solicitud ya ha sido revisada y por quien fue leida
    if (!solicitud.isLeido()) {
      solicitud.setLeido(true);
      solicitud.setId_usuario(user.getId_usuario());
      update(solicitud, id_solicitud_suscripcion);
    }
    if (!detalles_respuesta) {
      detalles_solicitud = true;
      ente = (Ente) read(ente, solicitud.getId_ente_solicitante());
    } else {
      ente = (Ente) read(ente, solicitud.getId_ente_proveedor());
    }
    servicio = (ServicioInformacion) read(servicio, solicitud.getId_servicio_informacion());
    return SUCCESS;
  }
コード例 #4
0
  @SkipValidation
  public String prepararAprobarRechazarSuscripcion() {

    if (!sessionValidate()) return INPUT;
    // Lee los detalles de la suscripción
    session = ActionContext.getContext().getSession();
    Usuario user = (Usuario) session.get("usuario");
    solicitud = (SolicitudSuscripcion) read(solicitud, id_solicitud_suscripcion);
    // Valida que un trol quiera acceder a las solicitudes de otros entes
    if (user.getId_ente() != solicitud.getId_ente_proveedor()) return INPUT;
    // Valida que la solicitud.sentencia sea igual a cero (0 = pendiente).
    if (!(solicitud.getSentencia() == 0)) return INPUT;
    ente = (Ente) read(ente, solicitud.getId_ente_solicitante());
    servicio = (ServicioInformacion) read(servicio, solicitud.getId_servicio_informacion());
    // Variable necesaria para la vista.
    aprobarRechazar = true;
    return SUCCESS;
  }