Browse Source

Change handling of bulk uploads in process

pull/2653/head
Manny Dinssa 2 years ago
parent
commit
887048d25a
  1. 2
      app/models/bulk_upload.rb
  2. 3
      app/services/bulk_upload/processor.rb
  3. 5
      db/migrate/20240927143916_add_processed_to_bulk_uploads.rb
  4. 5
      db/migrate/20240927143916_add_processing_to_bulk_uploads.rb
  5. 4
      db/schema.rb

2
app/models/bulk_upload.rb

@ -12,7 +12,7 @@ class BulkUpload < ApplicationRecord
after_initialize :generate_identifier, unless: :identifier
scope :visible, -> { where.not(processed: false) }
scope :visible, -> { where(processing: false) }
scope :search_by_filename, ->(filename) { where("filename ILIKE ?", "%#{filename}%") }
scope :search_by_user_name, ->(name) { where(user_id: User.where("name ILIKE ?", "%#{name}%").select(:id)) }

3
app/services/bulk_upload/processor.rb

@ -6,6 +6,7 @@ class BulkUpload::Processor
end
def call
bulk_upload.update!(processing: true)
destroy_any_existing_errors_from_prior_run
download
@ -37,7 +38,7 @@ class BulkUpload::Processor
send_failure_mail
ensure
downloader.delete_local_file!
bulk_upload.update!(processed: true)
bulk_upload.update!(processing: false)
end
def approve

5
db/migrate/20240927143916_add_processed_to_bulk_uploads.rb

@ -1,5 +0,0 @@
class AddProcessedToBulkUploads < ActiveRecord::Migration[7.0]
def change
add_column :bulk_uploads, :processed, :boolean
end
end

5
db/migrate/20240927143916_add_processing_to_bulk_uploads.rb

@ -0,0 +1,5 @@
class AddProcessingToBulkUploads < ActiveRecord::Migration[7.0]
def change
add_column :bulk_uploads, :processing, :boolean, default: false
end
end

4
db/schema.rb

@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema[7.0].define(version: 2024_09_25_095041) do
ActiveRecord::Schema[7.0].define(version: 2024_09_27_143916) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@ -45,7 +45,7 @@ ActiveRecord::Schema[7.0].define(version: 2024_09_25_095041) do
t.integer "organisation_id"
t.integer "moved_user_id"
t.integer "failed"
t.boolean "processed"
t.boolean "processing", default: false
t.index ["identifier"], name: "index_bulk_uploads_on_identifier", unique: true
t.index ["user_id"], name: "index_bulk_uploads_on_user_id"
end

Loading…
Cancel
Save