@@ -20,7 +20,7 @@ def initialize(current_context:, email_confirmation_input:, mode:)
2020
2121 def submit
2222 validate_submission
23- submit_form_to_processing_team
23+ deliver_submission
2424 send_confirmation_email if requested_confirmation?
2525
2626 @submission_reference
@@ -32,43 +32,35 @@ def validate_submission
3232 raise StandardError , "Form id(#{ @form . id } ) has no completed steps i.e questions/answers to submit" if @current_context . completed_steps . blank?
3333 end
3434
35- def submit_form_to_processing_team
36- submit_using_form_submission_type
37- LogEventService . log_submit ( @current_context ,
38- requested_email_confirmation : requested_confirmation? ,
39- preview : @mode . preview? ,
40- submission_type : @form . submission_type )
41- end
42-
43- def submit_using_form_submission_type
44- return s3_submission_service . submit if @form . submission_type == "s3"
45-
46- submit_via_aws_ses
47- end
48-
49- def send_confirmation_email
50- mail = FormSubmissionConfirmationMailer . send_confirmation_email (
51- what_happens_next_markdown : @form . what_happens_next_markdown ,
52- support_contact_details : @form . support_details ,
53- notify_response_id : @email_confirmation_input . confirmation_email_reference ,
54- confirmation_email_address : @email_confirmation_input . confirmation_email_address ,
55- mailer_options :,
56- ) . deliver_now
35+ def deliver_submission
36+ case @form . submission_type
37+ when "s3"
38+ deliver_submission_via_s3
39+ else
40+ deliver_submission_via_email
41+ end
5742
58- CurrentRequestLoggingAttributes . confirmation_email_id = mail . govuk_notify_response . id
43+ LogEventService . log_submit (
44+ @current_context ,
45+ requested_email_confirmation : requested_confirmation? ,
46+ preview : @mode . preview? ,
47+ submission_type : @form . submission_type ,
48+ )
5949 end
6050
61- def s3_submission_service
62- S3SubmissionService . new (
51+ def deliver_submission_via_s3
52+ s3_submission_service = S3SubmissionService . new (
6353 journey : @current_context . journey ,
6454 form : @form ,
6555 timestamp : @timestamp ,
6656 submission_reference : @submission_reference ,
6757 is_preview : @mode . preview? ,
6858 )
59+
60+ s3_submission_service . submit
6961 end
7062
71- def submit_via_aws_ses
63+ def deliver_submission_via_email
7264 submission = Submission . create! (
7365 reference : @submission_reference ,
7466 form_id : @form . id ,
@@ -94,6 +86,18 @@ def submission_timestamp
9486 Time . use_zone ( submission_timezone ) { Time . zone . now }
9587 end
9688
89+ def send_confirmation_email
90+ mail = FormSubmissionConfirmationMailer . send_confirmation_email (
91+ what_happens_next_markdown : @form . what_happens_next_markdown ,
92+ support_contact_details : @form . support_details ,
93+ notify_response_id : @email_confirmation_input . confirmation_email_reference ,
94+ confirmation_email_address : @email_confirmation_input . confirmation_email_address ,
95+ mailer_options :,
96+ ) . deliver_now
97+
98+ CurrentRequestLoggingAttributes . confirmation_email_id = mail . govuk_notify_response . id
99+ end
100+
97101 def mailer_options
98102 MailerOptions . new ( title : @form . name ,
99103 is_preview : @mode . preview? ,
0 commit comments