Files
docuseal/app/controllers/submissions_export_controller.rb
T

29 lines
1.1 KiB
Ruby
Raw Normal View History

2023-08-20 15:18:15 +03:00
# frozen_string_literal: true
class SubmissionsExportController < ApplicationController
2023-09-17 00:45:57 +03:00
load_and_authorize_resource :template
load_and_authorize_resource :submission, through: :template, parent: false, only: :index
2023-08-20 15:18:15 +03:00
def index
2023-09-17 00:45:57 +03:00
submissions = @submissions.active
.preload(submitters: { documents_attachments: :blob,
attachments_attachments: :blob })
.order(id: :asc)
2023-08-20 15:18:15 +03:00
2025-09-02 21:17:25 +03:00
submissions = Submissions.search(current_user, submissions, params[:q], search_values: true)
submissions = Submissions::Filter.call(submissions, current_user, params)
2025-08-31 16:40:18 +03:00
expires_at = Accounts.link_expires_at(current_account)
2023-08-20 15:18:15 +03:00
if params[:format] == 'csv'
2025-08-31 16:40:18 +03:00
send_data Submissions::GenerateExportFiles.call(submissions, format: params[:format], expires_at:),
2023-08-20 15:18:15 +03:00
filename: "#{@template.name}.csv"
elsif params[:format] == 'xlsx'
2025-08-31 16:40:18 +03:00
send_data Submissions::GenerateExportFiles.call(submissions, format: params[:format], expires_at:),
2023-08-20 15:18:15 +03:00
filename: "#{@template.name}.xlsx"
end
end
def new; end
end