Class: DecisionReview::SubmitUpload
- Inherits:
-
Object
- Object
- DecisionReview::SubmitUpload
- Includes:
- DecisionReviewV1::Appeals::LoggingUtils, Sidekiq::Job
- Defined in:
- app/sidekiq/decision_review/submit_upload.rb
Constant Summary collapse
- STATSD_KEY_PREFIX =
'worker.decision_review.submit_upload'
Instance Method Summary collapse
-
#perform(appeal_submission_upload_id) ⇒ Object
Make a request to Lighthouse to get the URL where we can upload the file, then get the file from S3 and send it to Lighthouse.
Methods included from DecisionReviewV1::Appeals::LoggingUtils
#benchmark_to_log_data_hash, #log_formatted, #parse_form412_response_to_log_msg, #parse_lighthouse_response_to_log_msg, #run_and_benchmark_if_enabled
Instance Method Details
#perform(appeal_submission_upload_id) ⇒ Object
Make a request to Lighthouse to get the URL where we can upload the file, then get the file from S3 and send it to Lighthouse
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'app/sidekiq/decision_review/submit_upload.rb', line 23 def perform(appeal_submission_upload_id) appeal_submission_upload = AppealSubmissionUpload.find(appeal_submission_upload_id) appeal_submission = appeal_submission_upload.appeal_submission = appeal_submission_upload. sanitized_file = get_sanitized_file!(form_attachment:) file_number_or_ssn = JSON.parse(appeal_submission.)['fileNumber'] lh_upload_id = case appeal_submission.type_of_appeal when 'NOD' handle_notice_of_disagreement(appeal_submission_upload, file_number_or_ssn, sanitized_file) when 'SC' handle_supplemental_claim(appeal_submission, file_number_or_ssn, sanitized_file) else raise "Unknown appeal type (#{type})" end.body.dig('data', 'id') appeal_submission_upload.update!(lighthouse_upload_id: lh_upload_id) StatsD.increment("#{STATSD_KEY_PREFIX}.success") rescue => e StatsD.increment("#{STATSD_KEY_PREFIX}.error") raise e end |