public void finalizarEncuesta() throws DAOException {

    if (irPreguntaSiguiente()) {

      encuestadoDto.setEstadoDto(
          ApplicationHelper.obtenerParametroPorId(
              ConstantesClima.Parametro.ENCUESTADO_ESTADO_TERMINADO));
      encuestadoDto.setEncuestaDto(dto);

      encuestadoManager.editar(encuestadoDto);

      // validar si la encuesta tiene aun pendientes de encuestar, sino se cierra la encuesta.
      List<EncuestadoDto> listEncuestados =
          encuestadoManager.obtenerEncuestadosNoTerminadosXEncuesta(dto);
      if (listEncuestados == null || listEncuestados.isEmpty()) {

        dto.setEstadoDto(
            ApplicationHelper.obtenerParametroPorId(
                ConstantesClima.Parametro.ENCUESTA_ESTADO_TERMINADO));
        manager.editar(dto);
      }
      RequestContext.getCurrentInstance().addCallbackParam("ok", true);

      try {
        this.lista = encuestadoManager.obtenerEncuestasxPersona(dtoFiltro, personaDto);
      } catch (DAOException ex) {
        logger.error("ERROR DE SISTEMA", ex);
        showError(ex.getMessage());
      }
    } else {
      RequestContext.getCurrentInstance().addCallbackParam("ok", false);
    }
  }