TMP commit

This commit is contained in:
Bilal
2020-07-09 19:54:48 +02:00
parent 35303cb570
commit 3918484a84
5 changed files with 118 additions and 2 deletions

View File

@@ -6,8 +6,8 @@ class GenerateContractsZipJob < ApplicationJob
before_perform do |job|
@project = job.arguments.first
@download = job.arguments.second
release_type = job.arguments.third
@folder_name = "#{@project.name.parameterize}_#{get_release_name(release_type).gsub('_', '-')}"
@release_type = job.arguments.third
@folder_name = "#{@project.name.parameterize}_#{get_release_name(@release_type).gsub('_', '-')}"
@download.update!(name: @folder_name, status: :pending)
end
@@ -20,6 +20,10 @@ class GenerateContractsZipJob < ApplicationJob
files.each do |attachment|
zipfile.add(attachment, File.join("#{dir}/", attachment))
end
csv_file = generate_csv releases
puts ">>>>> GENERATED ====="
zipfile.get_output_stream("#{@folder_name}.csv") { |f| f.puts(csv_file) }
end
@download.file.attach(io: File.open(zipfile_name), filename: "#{@folder_name}.zip")
@@ -43,6 +47,21 @@ class GenerateContractsZipJob < ApplicationJob
private
def generate_csv(releases)
puts "==== 1 ====="
release_class = Object.const_get @release_type
puts "==== 2 ====="
headers = release_class.csv_headers
CSV.generate(headers: true) do |csv|
csv << headers
releases.each do |release|
csv_row_data = release.to_csv_row
csv << csv_row_data
end
end
end
def get_release_name(release_type)
release_type.constantize.model_name.plural
end