scinote-web/app/services/repositories/archive_repository_service.rb

23 lines
562 B
Ruby
Raw Normal View History

# frozen_string_literal: true
module Repositories
class ArchiveRepositoryService < ArchiveRepositoryBaseService
def call
return self unless valid?
ActiveRecord::Base.transaction do
@repositories.each do |repository|
2020-06-19 15:04:42 +08:00
repository.archive!(@user)
log_activity(:archive_inventory, repository)
end
2021-01-08 15:05:05 +08:00
rescue ActiveRecord::RecordInvalid
@errors[:archiving_error] = I18n.t('repositories.archive_inventories.unsuccess_flash')
raise ActiveRecord::Rollback
end
self
end
end
end