configure audit log values

This commit is contained in:
Pete Matsyburka
2024-09-30 16:27:15 +03:00
committed by Oleksandr Turchyn
parent 4ecbbf8410
commit 28962c949b
2 changed files with 82 additions and 73 deletions
+1
View File
@@ -39,6 +39,7 @@ class AccountConfig < ApplicationRecord
FORCE_SSO_AUTH_KEY = 'force_sso_auth' FORCE_SSO_AUTH_KEY = 'force_sso_auth'
FLATTEN_RESULT_PDF_KEY = 'flatten_result_pdf' FLATTEN_RESULT_PDF_KEY = 'flatten_result_pdf'
WITH_SIGNATURE_ID = 'with_signature_id' WITH_SIGNATURE_ID = 'with_signature_id'
WITH_AUDIT_VALUES_KEY = 'with_audit_values'
REQUIRE_SIGNING_REASON_KEY = 'require_signing_reason' REQUIRE_SIGNING_REASON_KEY = 'require_signing_reason'
COMBINE_PDF_RESULT_KEY = 'combine_pdf_result_key' COMBINE_PDF_RESULT_KEY = 'combine_pdf_result_key'
+12 -4
View File
@@ -99,6 +99,12 @@ module Submissions
height: 1 height: 1
) )
configs = submission.account.account_configs.where(key: [AccountConfig::WITH_AUDIT_VALUES_KEY,
AccountConfig::WITH_SIGNATURE_ID])
with_signature_id = configs.find { |c| c.key == AccountConfig::WITH_SIGNATURE_ID }&.value == true
with_audit_values = configs.find { |c| c.key == AccountConfig::WITH_AUDIT_VALUES_KEY }&.value != false
composer.page_style(:default, page_size:) do |canvas, style| composer.page_style(:default, page_size:) do |canvas, style|
box = canvas.context.box(:media) box = canvas.context.box(:media)
canvas.save_graphics_state do canvas.save_graphics_state do
@@ -110,9 +116,6 @@ module Submissions
maybe_add_background(canvas, submission, page_size) maybe_add_background(canvas, submission, page_size)
end end
with_signature_id = submission.account.account_configs
.exists?(key: AccountConfig::WITH_SIGNATURE_ID, value: true)
if with_signature_id || submission.account.testing? if with_signature_id || submission.account.testing?
canvas.save_graphics_state do canvas.save_graphics_state do
document_id = Digest::MD5.hexdigest(submission.slug).upcase document_id = Digest::MD5.hexdigest(submission.slug).upcase
@@ -263,6 +266,7 @@ module Submissions
composer.table(info_rows, cell_style: { padding: [0, 0, 0, 0], border: { width: 0 } }) composer.table(info_rows, cell_style: { padding: [0, 0, 0, 0], border: { width: 0 } })
if with_audit_values
submission.template_fields.filter_map do |field| submission.template_fields.filter_map do |field|
next if field['submitter_uuid'] != submitter.uuid next if field['submitter_uuid'] != submitter.uuid
next if field['type'] == 'heading' next if field['type'] == 'heading'
@@ -332,7 +336,10 @@ module Submissions
value = TimeUtils.format_date_string(value, field.dig('preferences', 'format'), account.locale) value = TimeUtils.format_date_string(value, field.dig('preferences', 'format'), account.locale)
end end
value = NumberUtils.format_number(value, field.dig('preferences', 'format')) if field['type'] == 'number' if field['type'] == 'number'
value = NumberUtils.format_number(value,
field.dig('preferences', 'format'))
end
value = value.join(', ') if value.is_a?(Array) value = value.join(', ') if value.is_a?(Array)
@@ -342,6 +349,7 @@ module Submissions
end end
] ]
end end
end
composer.draw_box(divider) composer.draw_box(divider)
end end