-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* code climate spec fix * up argument count * created a parser helper for reusable methods * reset codeclimate back to original and added issue parser * modified methods to take in a hash instead of multiple params * reduced create params down to 3 params * added space inside * swapped to safe navigator for intake check * fixed spec * fixed linting issue * fixed failing spec * fixed merge conflicts with code changes for helper --------- Co-authored-by: TuckerRose <tuckerrose@tuckerroses-mbp.lan> Co-authored-by: TuckerRose <tuckerrose@TuckerRoses-MacBook-Pro.local> Co-authored-by: Nader Kutub <nader.kutub@va.gov>
- Loading branch information
1 parent
a1b4dd2
commit d6e1030
Showing
12 changed files
with
228 additions
and
196 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
# frozen_string_literal: true | ||
|
||
module ParserHelper | ||
# Checking for nonrating_issue_category is "Disposition" and processing such issues. | ||
def process_nonrating_issue_category(payload_json) | ||
payload_json[:request_issues].each do |issue| | ||
next unless issue[:nonrating_issue_category] == "Disposition" | ||
|
||
issue[:nonrating_issue_category] = "Unknown Issue Category" | ||
end | ||
end | ||
|
||
# Generic/universal methods | ||
# rubocop:disable Rails/TimeZone | ||
def convert_milliseconds_to_datetime(milliseconds) | ||
milliseconds.nil? ? nil : Time.at(milliseconds.to_i / 1000).to_datetime | ||
end | ||
# rubocop:enable Rails/TimeZone | ||
|
||
# convert logical date int to date | ||
def logical_date_converter(logical_date_int) | ||
return nil if logical_date_int.nil? || logical_date_int.to_i.days == 0 | ||
|
||
base_date = Date.new(1970, 1, 1) | ||
converted_date = base_date + logical_date_int.to_i.days | ||
converted_date | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
# frozen_string_literal: true | ||
|
||
class DecisionReviewCreatedIssueParser | ||
include ParserHelper | ||
attr_reader :issue | ||
|
||
def initialize(issue) | ||
@issue = issue | ||
end | ||
|
||
def ri_benefit_type | ||
@issue.dig(:benefit_type) | ||
end | ||
|
||
def ri_contested_issue_description | ||
@issue.dig(:contested_issue_description) | ||
end | ||
|
||
def ri_contention_reference_id | ||
@issue.dig(:contention_reference_id) | ||
end | ||
|
||
def ri_contested_rating_decision_reference_id | ||
@issue.dig(:contested_rating_decision_reference_id) | ||
end | ||
|
||
def ri_contested_rating_issue_profile_date | ||
@issue.dig(:contested_rating_issue_profile_date) | ||
end | ||
|
||
def ri_contested_rating_issue_reference_id | ||
@issue.dig(:contested_rating_issue_reference_id) | ||
end | ||
|
||
def ri_contested_decision_issue_id | ||
@issue.dig(:contested_decision_issue_id) | ||
end | ||
|
||
def ri_decision_date | ||
decision_date_int = @issue.dig(:decision_date) | ||
logical_date_converter(decision_date_int) | ||
end | ||
|
||
def ri_ineligible_due_to_id | ||
@issue.dig(:ineligible_due_to_id) | ||
end | ||
|
||
def ri_ineligible_reason | ||
@issue.dig(:ineligible_reason) | ||
end | ||
|
||
def ri_is_unidentified | ||
@issue.dig(:is_unidentified) | ||
end | ||
|
||
def ri_unidentified_issue_text | ||
@issue.dig(:unidentified_issue_text) | ||
end | ||
|
||
def ri_nonrating_issue_category | ||
@issue.dig(:nonrating_issue_category) | ||
end | ||
|
||
def ri_nonrating_issue_description | ||
@issue.dig(:nonrating_issue_description) | ||
end | ||
|
||
def ri_untimely_exemption | ||
@issue.dig(:untimely_exemption) | ||
end | ||
|
||
def ri_untimely_exemption_notes | ||
@issue.dig(:untimely_exemption_notes) | ||
end | ||
|
||
def ri_vacols_id | ||
@issue.dig(:vacols_id) | ||
end | ||
|
||
def ri_vacols_sequence_id | ||
@issue.dig(:vacols_sequence_id) | ||
end | ||
|
||
def ri_closed_at | ||
@issue.dig(:closed_at) | ||
end | ||
|
||
def ri_closed_status | ||
@issue.dig(:closed_status) | ||
end | ||
|
||
def ri_contested_rating_issue_diagnostic_code | ||
@issue.dig(:contested_rating_issue_diagnostic_code) | ||
end | ||
|
||
def ri_ramp_claim_id | ||
@issue.dig(:ramp_claim_id) | ||
end | ||
|
||
def ri_rating_issue_associated_at | ||
ri_rating_issue_associated_at_in_ms = @issue.dig(:rating_issue_associated_at) | ||
convert_milliseconds_to_datetime(ri_rating_issue_associated_at_in_ms) | ||
end | ||
|
||
def ri_nonrating_issue_bgs_id | ||
@issue.dig(:nonrating_issue_bgs_id) | ||
end | ||
|
||
def ri_nonrating_issue_bgs_source | ||
@issue.dig(:nonrating_issue_bgs_source) | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.