batch it
This commit is contained in:
parent
ebac71796c
commit
4d3412daf5
3 changed files with 25 additions and 18 deletions
|
@ -1,8 +1,7 @@
|
||||||
class ActiveStorage::DownloadableFile
|
class ActiveStorage::DownloadableFile
|
||||||
def self.create_list_from_dossiers(dossiers, for_expert = false)
|
def self.create_list_from_dossiers(dossiers, for_expert = false)
|
||||||
dossiers
|
PiecesJustificativesService.generate_dossier_export(dossiers) +
|
||||||
.map { |d| pj_and_path(d.id, PiecesJustificativesService.generate_dossier_export(d)) } +
|
PiecesJustificativesService.liste_documents(dossiers, for_expert)
|
||||||
PiecesJustificativesService.liste_documents(dossiers, for_expert)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
@ -107,21 +107,29 @@ class PiecesJustificativesService
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.generate_dossier_export(dossier)
|
def self.generate_dossier_export(dossiers)
|
||||||
pdf = ApplicationController
|
pdfs = []
|
||||||
.render(template: 'dossiers/show', formats: [:pdf],
|
|
||||||
assigns: {
|
|
||||||
include_infos_administration: true,
|
|
||||||
dossier: dossier
|
|
||||||
})
|
|
||||||
|
|
||||||
FakeAttachment.new(
|
dossiers.find_each do |dossier|
|
||||||
file: StringIO.new(pdf),
|
pdf = ApplicationController
|
||||||
filename: "export-#{dossier.id}.pdf",
|
.render(template: 'dossiers/show', formats: [:pdf],
|
||||||
name: 'pdf_export_for_instructeur',
|
assigns: {
|
||||||
id: dossier.id,
|
include_infos_administration: true,
|
||||||
created_at: dossier.updated_at
|
dossier: dossier
|
||||||
)
|
})
|
||||||
|
|
||||||
|
a = FakeAttachment.new(
|
||||||
|
file: StringIO.new(pdf),
|
||||||
|
filename: "export-#{dossier.id}.pdf",
|
||||||
|
name: 'pdf_export_for_instructeur',
|
||||||
|
id: dossier.id,
|
||||||
|
created_at: dossier.updated_at
|
||||||
|
)
|
||||||
|
|
||||||
|
pdfs << ActiveStorage::DownloadableFile.pj_and_path(dossier.id, a)
|
||||||
|
end
|
||||||
|
|
||||||
|
pdfs
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
@ -160,7 +160,7 @@ describe PiecesJustificativesService do
|
||||||
describe '.generate_dossier_export' do
|
describe '.generate_dossier_export' do
|
||||||
let(:dossier) { create(:dossier) }
|
let(:dossier) { create(:dossier) }
|
||||||
|
|
||||||
subject { PiecesJustificativesService.generate_dossier_export(dossier) }
|
subject { PiecesJustificativesService.generate_dossier_export(Dossier.where(id: dossier.id)) }
|
||||||
|
|
||||||
it "doesn't update dossier" do
|
it "doesn't update dossier" do
|
||||||
expect { subject }.not_to change { dossier.updated_at }
|
expect { subject }.not_to change { dossier.updated_at }
|
||||||
|
|
Loading…
Add table
Reference in a new issue