Sha256: 12c589ec2e64e565462b0ee0d003ffed7778e09521cc7576cd2772d71cdd5a67

Contents?: true

Size: 965 Bytes

Versions: 117

Compression:

Stored size: 965 Bytes

Contents

# frozen_string_literal: true

require_dependency "renalware/reporting"

module Renalware
  module Reporting
    class RefreshAuditDataJob < ApplicationJob
      queue_as :reporting
      queue_with_priority 1

      # :reek:UtilityFunction
      def perform(audit)
        if audit.materialized?
          refresh_materialized_view_associated_with_audit(audit)
          update_audit_refreshment_date(audit)
        else
          Rails.logger.warn("Cannot refresh an view that is not materialized: #{audit.view_name}")
        end
      end

      private

      def refresh_materialized_view_associated_with_audit(audit)
        Scenic.database.refresh_materialized_view(audit.view_name,
                                                  concurrently: false,
                                                  cascade: false)
      end

      def update_audit_refreshment_date(audit)
        audit.update!(refreshed_at: Time.zone.now)
      end
    end
  end
end

Version data entries

117 entries across 117 versions & 1 rubygems

Version Path
renalware-core-2.1.1 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.1.0 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.167 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.166 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.165 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.164 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.163 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.162 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.161 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.160 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.159 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.158 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.157 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.156 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.155 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.153 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.152 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.151 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.149 app/jobs/renalware/reporting/refresh_audit_data_job.rb
renalware-core-2.0.148 app/jobs/renalware/reporting/refresh_audit_data_job.rb