From a6330c727e8ded2ba4e09f93965be6e2b4f41cdd Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:09:33 -0600 Subject: [PATCH 01/36] added basic code to meet ac --- app/models/claim_review.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index b56e7cd4a56..7cef62102e4 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -104,10 +104,10 @@ def handle_issues_with_no_decision_date! if request_issues_without_decision_dates? review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - review_task&.on_hold! + review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? elsif !request_issues_without_decision_dates? review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - review_task&.assigned! + review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? end end From a700536a62c90d966608c40766535a75ec2aa093 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:10:17 -0600 Subject: [PATCH 02/36] updated code in decsion reveiw task --- app/models/tasks/decision_review_task.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/models/tasks/decision_review_task.rb b/app/models/tasks/decision_review_task.rb index 40c42443f5c..534e897e7cd 100644 --- a/app/models/tasks/decision_review_task.rb +++ b/app/models/tasks/decision_review_task.rb @@ -25,12 +25,15 @@ def ui_hash serialize_task[:attributes] end - def complete_with_payload!(decision_issue_params, decision_date) + def complete_with_payload!(decision_issue_params, decision_date, user) return false unless validate_task(decision_issue_params) transaction do appeal.create_decision_issues_for_tasks(decision_issue_params, decision_date) - update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) + update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: user) + decision_issue_params.each do |param| + RequestIssue.find(param[:request_issue_id]).close_decided_issue! + end end appeal.on_decision_issues_sync_processed if appeal.is_a?(HigherLevelReview) From 33810a6d4d1852fc6687fdcae8d4b6d0f4917542 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:10:41 -0600 Subject: [PATCH 03/36] updated code to set the completed_by as well --- app/controllers/decision_reviews_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/decision_reviews_controller.rb b/app/controllers/decision_reviews_controller.rb index 687c6066c52..c4f5da700a7 100644 --- a/app/controllers/decision_reviews_controller.rb +++ b/app/controllers/decision_reviews_controller.rb @@ -56,7 +56,7 @@ def show def update if task - if task.complete_with_payload!(decision_issue_params, decision_date) + if task.complete_with_payload!(decision_issue_params, decision_date, current_user) business_line.tasks.reload render json: { task_filter_details: task_filter_details }, status: :ok else From 60de9d04afb7ba35b37ada7a7428953bbe30e33b Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:24:33 -0600 Subject: [PATCH 04/36] started refactoring handle_issues_with_no_decision_date! --- app/models/claim_review.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 7cef62102e4..f868313ceaa 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -100,13 +100,14 @@ def add_user_to_business_line! def handle_issues_with_no_decision_date! # Guard clause to only perform this update for VHA claim reviews for now - return nil if benefit_type != "vha" + return nil unless benefit_type == "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + return unless review_task if request_issues_without_decision_dates? - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? elsif !request_issues_without_decision_dates? - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? end end From 4e4bcde7f058d8511812e055003f9a494467990f Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 11:03:47 -0600 Subject: [PATCH 05/36] refactored function to reduce cyclomatic complexity --- app/models/claim_review.rb | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index f868313ceaa..618b513b0e5 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -106,9 +106,20 @@ def handle_issues_with_no_decision_date! return unless review_task if request_issues_without_decision_dates? - review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? + handle_no_decision_date(review_task, :on_hold) elsif !request_issues_without_decision_dates? - review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? + handle_no_decision_date(review_task, :assigned) + end + end + + def handle_no_decision_date(review_task, action) + return if review_task.closed? || review_task.cancelled? + + case action + when :on_hold + review_task.on_hold! + when :assigned + review_task.assigned! end end From b88023ea4e06e60fffe6b8521ce9ff8ffeea770f Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 14:16:34 -0600 Subject: [PATCH 06/36] fixed a code climate issue --- app/models/claim_review.rb | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 618b513b0e5..757a9b91242 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -105,20 +105,15 @@ def handle_issues_with_no_decision_date! review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } return unless review_task - if request_issues_without_decision_dates? - handle_no_decision_date(review_task, :on_hold) - elsif !request_issues_without_decision_dates? - handle_no_decision_date(review_task, :assigned) - end + handle_no_decision_date(review_task) end - def handle_no_decision_date(review_task, action) + def handle_no_decision_date(review_task) return if review_task.closed? || review_task.cancelled? - case action - when :on_hold + if request_issues_without_decision_dates? review_task.on_hold! - when :assigned + else review_task.assigned! end end From 450149821936d10d72b477f3286065980d9a17a1 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 11:25:43 -0600 Subject: [PATCH 07/36] attempting to fix a code climate issue --- app/models/claim_review.rb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 757a9b91242..fa56927498a 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -105,10 +105,6 @@ def handle_issues_with_no_decision_date! review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } return unless review_task - handle_no_decision_date(review_task) - end - - def handle_no_decision_date(review_task) return if review_task.closed? || review_task.cancelled? if request_issues_without_decision_dates? From fc68ef4edfb4da4523e38b55120898925aebed73 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 11:54:00 -0600 Subject: [PATCH 08/36] moved handle_issues_with_no_decision_date! to decision_review to fix code climate issue --- app/models/claim_review.rb | 16 ---------------- app/models/decision_review.rb | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index fa56927498a..e869223bec1 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -98,22 +98,6 @@ def add_user_to_business_line! business_line.add_user(RequestStore.store[:current_user]) end - def handle_issues_with_no_decision_date! - # Guard clause to only perform this update for VHA claim reviews for now - return nil unless benefit_type == "vha" - - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - return unless review_task - - return if review_task.closed? || review_task.cancelled? - - if request_issues_without_decision_dates? - review_task.on_hold! - else - review_task.assigned! - end - end - def request_issues_without_decision_dates? request_issues.active.any? { |issue| issue.decision_date.blank? } end diff --git a/app/models/decision_review.rb b/app/models/decision_review.rb index f7f7d155f75..094b68565f3 100644 --- a/app/models/decision_review.rb +++ b/app/models/decision_review.rb @@ -191,6 +191,22 @@ def copy_claimants!(source_claimants) end end + def handle_issues_with_no_decision_date! + # Guard clause to only perform this update for VHA claim reviews for now + return nil unless benefit_type == "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + return unless review_task + + return if review_task.closed? || review_task.cancelled? + + if request_issues_without_decision_dates? + review_task.on_hold! + else + review_task.assigned! + end + end + # Currently AMA only supports one claimant per decision review def claimant claimants.order(:id).last From 0cd37b820ce46e9fcd87d3ceff7d285b34a60897 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 13:34:51 -0600 Subject: [PATCH 09/36] Empty-Commit From d8fc619b1fdcd2d1dc45ecd3418dc76ca20a6d46 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 15:24:50 -0600 Subject: [PATCH 10/36] put function back --- app/models/claim_review.rb | 15 +++++++++++++++ app/models/decision_review.rb | 16 ---------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index e869223bec1..952236380c3 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -98,6 +98,21 @@ def add_user_to_business_line! business_line.add_user(RequestStore.store[:current_user]) end + def handle_issues_with_no_decision_date! + # Guard clause to only perform this update for VHA claim reviews for now + return nil if benefit_type != "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + + return nil unless review_task&.open? + + if request_issues_without_decision_dates? + review_task&.on_hold! + elsif !request_issues_without_decision_dates? + review_task&.assigned! + end + end + def request_issues_without_decision_dates? request_issues.active.any? { |issue| issue.decision_date.blank? } end diff --git a/app/models/decision_review.rb b/app/models/decision_review.rb index 094b68565f3..f7f7d155f75 100644 --- a/app/models/decision_review.rb +++ b/app/models/decision_review.rb @@ -191,22 +191,6 @@ def copy_claimants!(source_claimants) end end - def handle_issues_with_no_decision_date! - # Guard clause to only perform this update for VHA claim reviews for now - return nil unless benefit_type == "vha" - - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - return unless review_task - - return if review_task.closed? || review_task.cancelled? - - if request_issues_without_decision_dates? - review_task.on_hold! - else - review_task.assigned! - end - end - # Currently AMA only supports one claimant per decision review def claimant claimants.order(:id).last From b330918e0e1608d01bda764e92e426efdc858f0c Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Fri, 8 Dec 2023 15:09:02 -0600 Subject: [PATCH 11/36] fixed the failing tests in decision_review_task_spec --- spec/models/tasks/decision_review_task_spec.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spec/models/tasks/decision_review_task_spec.rb b/spec/models/tasks/decision_review_task_spec.rb index a7a25ff472f..97ccd76038c 100644 --- a/spec/models/tasks/decision_review_task_spec.rb +++ b/spec/models/tasks/decision_review_task_spec.rb @@ -5,6 +5,8 @@ let(:benefit_type) { "education" } + let(:user) { create(:default_user) } + describe "#label" do subject { create(:higher_level_review_task) } @@ -60,7 +62,7 @@ ] end let(:task) { create(:higher_level_review_task, trait, appeal: hlr) } - subject { task.complete_with_payload!(decision_issue_params, decision_date) } + subject { task.complete_with_payload!(decision_issue_params, decision_date, user) } context "assigned task" do it "can be completed" do From c6fb189a145054453c6269e3a39efc040aa54b75 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Mon, 11 Dec 2023 15:37:20 -0600 Subject: [PATCH 12/36] Added _current_user to complete_with_payload in business_line_task --- app/models/concerns/business_line_task.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/concerns/business_line_task.rb b/app/models/concerns/business_line_task.rb index 3faf4a5ee35..aedc012a497 100644 --- a/app/models/concerns/business_line_task.rb +++ b/app/models/concerns/business_line_task.rb @@ -3,7 +3,7 @@ module BusinessLineTask extend ActiveSupport::Concern - def complete_with_payload!(_decision_issue_params, _decision_date) + def complete_with_payload!(_decision_issue_params, _decision_date, _current_user) return false unless validate_task update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) From 1fe3d7e1c938ef0faad99090e05fc67c4877d372 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Tue, 12 Dec 2023 09:18:05 -0600 Subject: [PATCH 13/36] fixed a test in board_grant_effectuation_task_spec --- spec/models/tasks/board_grant_effectuation_task_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/models/tasks/board_grant_effectuation_task_spec.rb b/spec/models/tasks/board_grant_effectuation_task_spec.rb index a89cde82fce..a5ed6ed09e1 100644 --- a/spec/models/tasks/board_grant_effectuation_task_spec.rb +++ b/spec/models/tasks/board_grant_effectuation_task_spec.rb @@ -13,7 +13,7 @@ end describe "#complete_with_payload!" do - subject { task.complete_with_payload!(nil, nil) } + subject { task.complete_with_payload!(nil, nil, nil) } context "assigned task" do it "can be completed" do From 38fbd197b8eb2823bed015fae543d4b8dda8ed5b Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 08:41:49 -0600 Subject: [PATCH 14/36] created a new def in request_issues for active or decided --- app/models/request_issue.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/models/request_issue.rb b/app/models/request_issue.rb index e067788565f..bf1ed8a01fa 100644 --- a/app/models/request_issue.rb +++ b/app/models/request_issue.rb @@ -159,6 +159,10 @@ def active_or_ineligible_or_withdrawn active_or_ineligible.or(withdrawn) end + def active_or_decided + active.or(decided).order(id: :asc) + end + def active_or_decided_or_withdrawn active.or(decided).or(withdrawn).order(id: :asc) end From 8c1717dbd40298de8e901228c7687c9b8365d734 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 08:42:22 -0600 Subject: [PATCH 15/36] added the new def to the serializer --- .../serializers/work_queue/decision_review_task_serializer.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/serializers/work_queue/decision_review_task_serializer.rb b/app/models/serializers/work_queue/decision_review_task_serializer.rb index 7455091447b..297268de71d 100644 --- a/app/models/serializers/work_queue/decision_review_task_serializer.rb +++ b/app/models/serializers/work_queue/decision_review_task_serializer.rb @@ -72,7 +72,7 @@ def self.representative_tz(object) uuid: decision_review(object).uuid, isLegacyAppeal: false, issueCount: issue_count(object), - activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active.map(&:serialize), + activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), appellant_type: decision_review(object).claimant&.type } end From 7c754a14adc1c55f3126ec2a33a421c8b898b5db Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 09:20:01 -0600 Subject: [PATCH 16/36] changed the name of activeRequestIssues to activeOrDecidedRequestIssues --- .../decision_review_task_serializer.rb | 3 +- client/.storybook/utils.js | 28 +++++++++---------- client/app/nonComp/components/Disposition.jsx | 2 +- .../nonCompTaskPage/nonCompTaskPageData.js | 2 +- ...grant_effectuation_task_serializer_spec.rb | 6 ++-- .../decision_review_task_serializer_spec.rb | 8 +++--- .../models/tasks/decision_review_task_spec.rb | 4 +-- 7 files changed, 27 insertions(+), 26 deletions(-) diff --git a/app/models/serializers/work_queue/decision_review_task_serializer.rb b/app/models/serializers/work_queue/decision_review_task_serializer.rb index 297268de71d..3d7940f3ce7 100644 --- a/app/models/serializers/work_queue/decision_review_task_serializer.rb +++ b/app/models/serializers/work_queue/decision_review_task_serializer.rb @@ -72,7 +72,8 @@ def self.representative_tz(object) uuid: decision_review(object).uuid, isLegacyAppeal: false, issueCount: issue_count(object), - activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), + activeOrDecidedRequestIssues: + skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), appellant_type: decision_review(object).claimant&.type } end diff --git a/client/.storybook/utils.js b/client/.storybook/utils.js index ae01c37f17a..caa9039b69f 100644 --- a/client/.storybook/utils.js +++ b/client/.storybook/utils.js @@ -12,7 +12,7 @@ module.exports = { "id": "6115", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Eligibility", @@ -41,7 +41,7 @@ module.exports = { "id": "6114", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -70,7 +70,7 @@ module.exports = { "id": "17", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -99,7 +99,7 @@ module.exports = { "id": "3f67e4b2-392b-4248-a722-0845b2d3a29e", "isLegacyAppeal": false, "issueCount": 0, - "activeRequestIssues": 0 + "activeOrDecidedRequestIssues": 0 }, "issue_count": 0, "issue_types": "", @@ -128,7 +128,7 @@ module.exports = { "id": "14", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Revocation/Discharge", @@ -157,7 +157,7 @@ module.exports = { "id": "13", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -186,7 +186,7 @@ module.exports = { "id": "5061", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -243,7 +243,7 @@ module.exports = { "id": "5105", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Foreign Medical Program", @@ -272,7 +272,7 @@ module.exports = { "id": "5096", "isLegacyAppeal": false, "issueCount": 2, - "activeRequestIssues": 2 + "activeOrDecidedRequestIssues": 2 }, "issue_count": 2, "issue_types": "Foreign Medical Program,Spina Bifida Treatment (Non-Compensation)", @@ -301,7 +301,7 @@ module.exports = { "id": "5083", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Spina Bifida Treatment (Non-Compensation)", @@ -330,7 +330,7 @@ module.exports = { "id": "5081", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Camp Lejune Family Member", @@ -359,7 +359,7 @@ module.exports = { "id": "5106", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Camp Lejune Family Member", @@ -388,7 +388,7 @@ module.exports = { "id": "5101", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Other", @@ -417,7 +417,7 @@ module.exports = { "id": "5094", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Other", diff --git a/client/app/nonComp/components/Disposition.jsx b/client/app/nonComp/components/Disposition.jsx index 4818c8dfe5f..8cf7db47083 100644 --- a/client/app/nonComp/components/Disposition.jsx +++ b/client/app/nonComp/components/Disposition.jsx @@ -100,7 +100,7 @@ class NonCompDispositions extends React.PureComponent { this.state = { requestIssues: formatRequestIssuesWithDecisionIssues( - this.props.task.appeal.activeRequestIssues, this.props.appeal.decisionIssues), + this.props.task.appeal.activeOrDecidedRequestIssues, this.props.appeal.decisionIssues), decisionDate: '', isFilledOut: false }; diff --git a/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js b/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js index b1f9cacaf35..f9b5a73ea86 100644 --- a/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js +++ b/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js @@ -19,7 +19,7 @@ const completedHLRTaskData = { id: '17', isLegacyAppeal: false, issueCount: 1, - activeRequestIssues: [ + activeOrDecidedRequestIssues: [ { id: 3710, rating_issue_reference_id: null, diff --git a/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb b/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb index 298888ba62c..0ea771d2fe1 100644 --- a/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb +++ b/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb @@ -21,7 +21,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, @@ -75,7 +75,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, @@ -134,7 +134,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, diff --git a/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb b/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb index 950ed5d22bd..14bde4b4541 100644 --- a/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb +++ b/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb @@ -27,7 +27,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: "VeteranClaimant" }, @@ -76,7 +76,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: nil }, @@ -128,7 +128,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: claimant.type }, @@ -192,7 +192,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 2, - activeRequestIssues: serialized_issues, + activeOrDecidedRequestIssues: serialized_issues, appellant_type: "VeteranClaimant", uuid: task.appeal.uuid }, diff --git a/spec/models/tasks/decision_review_task_spec.rb b/spec/models/tasks/decision_review_task_spec.rb index 97ccd76038c..d10a1ee9d48 100644 --- a/spec/models/tasks/decision_review_task_spec.rb +++ b/spec/models/tasks/decision_review_task_spec.rb @@ -125,7 +125,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], appellant_type: "VeteranClaimant", uuid: hlr.uuid }, @@ -169,7 +169,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: hlr.uuid, appellant_type: "VeteranClaimant" }, From 6535e37735e9d1d7919017c7302a21b75866104f Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 11:51:02 -0600 Subject: [PATCH 17/36] updated business_line_task to set completed_by for board grants --- app/models/concerns/business_line_task.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/concerns/business_line_task.rb b/app/models/concerns/business_line_task.rb index aedc012a497..c71ba264d20 100644 --- a/app/models/concerns/business_line_task.rb +++ b/app/models/concerns/business_line_task.rb @@ -3,10 +3,10 @@ module BusinessLineTask extend ActiveSupport::Concern - def complete_with_payload!(_decision_issue_params, _decision_date, _current_user) + def complete_with_payload!(_decision_issue_params, _decision_date, current_user) return false unless validate_task - update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) + update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: current_user) end private From 41f5dd5812b9d4280e0b0d89686a2b2de15860e2 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:09:33 -0600 Subject: [PATCH 18/36] added basic code to meet ac --- app/models/claim_review.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index b56e7cd4a56..7cef62102e4 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -104,10 +104,10 @@ def handle_issues_with_no_decision_date! if request_issues_without_decision_dates? review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - review_task&.on_hold! + review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? elsif !request_issues_without_decision_dates? review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - review_task&.assigned! + review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? end end From cb3141094562459ca5ff35e999524fec1d968c14 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:10:17 -0600 Subject: [PATCH 19/36] updated code in decsion reveiw task --- app/models/tasks/decision_review_task.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/models/tasks/decision_review_task.rb b/app/models/tasks/decision_review_task.rb index 40c42443f5c..534e897e7cd 100644 --- a/app/models/tasks/decision_review_task.rb +++ b/app/models/tasks/decision_review_task.rb @@ -25,12 +25,15 @@ def ui_hash serialize_task[:attributes] end - def complete_with_payload!(decision_issue_params, decision_date) + def complete_with_payload!(decision_issue_params, decision_date, user) return false unless validate_task(decision_issue_params) transaction do appeal.create_decision_issues_for_tasks(decision_issue_params, decision_date) - update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) + update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: user) + decision_issue_params.each do |param| + RequestIssue.find(param[:request_issue_id]).close_decided_issue! + end end appeal.on_decision_issues_sync_processed if appeal.is_a?(HigherLevelReview) From 065b3cb73c8b6f3e48faabc1771282521d32da9f Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:10:41 -0600 Subject: [PATCH 20/36] updated code to set the completed_by as well --- app/controllers/decision_reviews_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/decision_reviews_controller.rb b/app/controllers/decision_reviews_controller.rb index fe8e0856729..255a67b0c8e 100644 --- a/app/controllers/decision_reviews_controller.rb +++ b/app/controllers/decision_reviews_controller.rb @@ -52,7 +52,7 @@ def show def update if task - if task.complete_with_payload!(decision_issue_params, decision_date) + if task.complete_with_payload!(decision_issue_params, decision_date, current_user) business_line.tasks.reload render json: { task_filter_details: task_filter_details }, status: :ok else From d064dea7be02700f1c1360911360313e74eda93c Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 10:24:33 -0600 Subject: [PATCH 21/36] started refactoring handle_issues_with_no_decision_date! --- app/models/claim_review.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 7cef62102e4..f868313ceaa 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -100,13 +100,14 @@ def add_user_to_business_line! def handle_issues_with_no_decision_date! # Guard clause to only perform this update for VHA claim reviews for now - return nil if benefit_type != "vha" + return nil unless benefit_type == "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + return unless review_task if request_issues_without_decision_dates? - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? elsif !request_issues_without_decision_dates? - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? end end From 3d44c192d734ecc5e4ac8593ead5d1462779f806 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 11:03:47 -0600 Subject: [PATCH 22/36] refactored function to reduce cyclomatic complexity --- app/models/claim_review.rb | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index f868313ceaa..618b513b0e5 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -106,9 +106,20 @@ def handle_issues_with_no_decision_date! return unless review_task if request_issues_without_decision_dates? - review_task&.on_hold! unless review_task&.closed? || review_task&.cancelled? + handle_no_decision_date(review_task, :on_hold) elsif !request_issues_without_decision_dates? - review_task&.assigned! unless review_task&.closed? || review_task&.cancelled? + handle_no_decision_date(review_task, :assigned) + end + end + + def handle_no_decision_date(review_task, action) + return if review_task.closed? || review_task.cancelled? + + case action + when :on_hold + review_task.on_hold! + when :assigned + review_task.assigned! end end From dd9e24d6bedd8ddc30eeef874c960b1c816c14eb Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 6 Dec 2023 14:16:34 -0600 Subject: [PATCH 23/36] fixed a code climate issue --- app/models/claim_review.rb | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 618b513b0e5..757a9b91242 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -105,20 +105,15 @@ def handle_issues_with_no_decision_date! review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } return unless review_task - if request_issues_without_decision_dates? - handle_no_decision_date(review_task, :on_hold) - elsif !request_issues_without_decision_dates? - handle_no_decision_date(review_task, :assigned) - end + handle_no_decision_date(review_task) end - def handle_no_decision_date(review_task, action) + def handle_no_decision_date(review_task) return if review_task.closed? || review_task.cancelled? - case action - when :on_hold + if request_issues_without_decision_dates? review_task.on_hold! - when :assigned + else review_task.assigned! end end From 27e0aedf669fa3b09c012a7fd2edbfdbebcdc58e Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 11:25:43 -0600 Subject: [PATCH 24/36] attempting to fix a code climate issue --- app/models/claim_review.rb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index 757a9b91242..fa56927498a 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -105,10 +105,6 @@ def handle_issues_with_no_decision_date! review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } return unless review_task - handle_no_decision_date(review_task) - end - - def handle_no_decision_date(review_task) return if review_task.closed? || review_task.cancelled? if request_issues_without_decision_dates? From 71e1f853b85adb23f6c8d44f040aa08af966ef23 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 11:54:00 -0600 Subject: [PATCH 25/36] moved handle_issues_with_no_decision_date! to decision_review to fix code climate issue --- app/models/claim_review.rb | 16 ---------------- app/models/decision_review.rb | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index fa56927498a..e869223bec1 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -98,22 +98,6 @@ def add_user_to_business_line! business_line.add_user(RequestStore.store[:current_user]) end - def handle_issues_with_no_decision_date! - # Guard clause to only perform this update for VHA claim reviews for now - return nil unless benefit_type == "vha" - - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - return unless review_task - - return if review_task.closed? || review_task.cancelled? - - if request_issues_without_decision_dates? - review_task.on_hold! - else - review_task.assigned! - end - end - def request_issues_without_decision_dates? request_issues.active.any? { |issue| issue.decision_date.blank? } end diff --git a/app/models/decision_review.rb b/app/models/decision_review.rb index f7f7d155f75..094b68565f3 100644 --- a/app/models/decision_review.rb +++ b/app/models/decision_review.rb @@ -191,6 +191,22 @@ def copy_claimants!(source_claimants) end end + def handle_issues_with_no_decision_date! + # Guard clause to only perform this update for VHA claim reviews for now + return nil unless benefit_type == "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + return unless review_task + + return if review_task.closed? || review_task.cancelled? + + if request_issues_without_decision_dates? + review_task.on_hold! + else + review_task.assigned! + end + end + # Currently AMA only supports one claimant per decision review def claimant claimants.order(:id).last From c3f4e4df896c30302cc7155da0ca843aebadf3e4 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 13:34:51 -0600 Subject: [PATCH 26/36] Empty-Commit From a0dc68e0b7ccfe078f0265026805de964d89b21f Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 7 Dec 2023 15:24:50 -0600 Subject: [PATCH 27/36] put function back --- app/models/claim_review.rb | 15 +++++++++++++++ app/models/decision_review.rb | 16 ---------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/app/models/claim_review.rb b/app/models/claim_review.rb index e869223bec1..952236380c3 100644 --- a/app/models/claim_review.rb +++ b/app/models/claim_review.rb @@ -98,6 +98,21 @@ def add_user_to_business_line! business_line.add_user(RequestStore.store[:current_user]) end + def handle_issues_with_no_decision_date! + # Guard clause to only perform this update for VHA claim reviews for now + return nil if benefit_type != "vha" + + review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } + + return nil unless review_task&.open? + + if request_issues_without_decision_dates? + review_task&.on_hold! + elsif !request_issues_without_decision_dates? + review_task&.assigned! + end + end + def request_issues_without_decision_dates? request_issues.active.any? { |issue| issue.decision_date.blank? } end diff --git a/app/models/decision_review.rb b/app/models/decision_review.rb index 094b68565f3..f7f7d155f75 100644 --- a/app/models/decision_review.rb +++ b/app/models/decision_review.rb @@ -191,22 +191,6 @@ def copy_claimants!(source_claimants) end end - def handle_issues_with_no_decision_date! - # Guard clause to only perform this update for VHA claim reviews for now - return nil unless benefit_type == "vha" - - review_task = tasks.find { |task| task.is_a?(DecisionReviewTask) } - return unless review_task - - return if review_task.closed? || review_task.cancelled? - - if request_issues_without_decision_dates? - review_task.on_hold! - else - review_task.assigned! - end - end - # Currently AMA only supports one claimant per decision review def claimant claimants.order(:id).last From ead6ec621b4d47d3a45d1690be92ac6c6854be94 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Fri, 8 Dec 2023 15:09:02 -0600 Subject: [PATCH 28/36] fixed the failing tests in decision_review_task_spec --- spec/models/tasks/decision_review_task_spec.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spec/models/tasks/decision_review_task_spec.rb b/spec/models/tasks/decision_review_task_spec.rb index a7a25ff472f..97ccd76038c 100644 --- a/spec/models/tasks/decision_review_task_spec.rb +++ b/spec/models/tasks/decision_review_task_spec.rb @@ -5,6 +5,8 @@ let(:benefit_type) { "education" } + let(:user) { create(:default_user) } + describe "#label" do subject { create(:higher_level_review_task) } @@ -60,7 +62,7 @@ ] end let(:task) { create(:higher_level_review_task, trait, appeal: hlr) } - subject { task.complete_with_payload!(decision_issue_params, decision_date) } + subject { task.complete_with_payload!(decision_issue_params, decision_date, user) } context "assigned task" do it "can be completed" do From 4c455808f3326f85ac75a1a5f0f7459f865cf83b Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Mon, 11 Dec 2023 15:37:20 -0600 Subject: [PATCH 29/36] Added _current_user to complete_with_payload in business_line_task --- app/models/concerns/business_line_task.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/concerns/business_line_task.rb b/app/models/concerns/business_line_task.rb index 3faf4a5ee35..aedc012a497 100644 --- a/app/models/concerns/business_line_task.rb +++ b/app/models/concerns/business_line_task.rb @@ -3,7 +3,7 @@ module BusinessLineTask extend ActiveSupport::Concern - def complete_with_payload!(_decision_issue_params, _decision_date) + def complete_with_payload!(_decision_issue_params, _decision_date, _current_user) return false unless validate_task update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) From 28e57ae0f447b090583fe7cfc0966f59843fd684 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Tue, 12 Dec 2023 09:18:05 -0600 Subject: [PATCH 30/36] fixed a test in board_grant_effectuation_task_spec --- spec/models/tasks/board_grant_effectuation_task_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/models/tasks/board_grant_effectuation_task_spec.rb b/spec/models/tasks/board_grant_effectuation_task_spec.rb index a89cde82fce..a5ed6ed09e1 100644 --- a/spec/models/tasks/board_grant_effectuation_task_spec.rb +++ b/spec/models/tasks/board_grant_effectuation_task_spec.rb @@ -13,7 +13,7 @@ end describe "#complete_with_payload!" do - subject { task.complete_with_payload!(nil, nil) } + subject { task.complete_with_payload!(nil, nil, nil) } context "assigned task" do it "can be completed" do From 052c8e194b45aa07d67f6a2ef1b6161a728207cf Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 08:41:49 -0600 Subject: [PATCH 31/36] created a new def in request_issues for active or decided --- app/models/request_issue.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/models/request_issue.rb b/app/models/request_issue.rb index 768670c6537..43fec6aef38 100644 --- a/app/models/request_issue.rb +++ b/app/models/request_issue.rb @@ -161,6 +161,10 @@ def active_or_ineligible_or_withdrawn active_or_ineligible.or(withdrawn) end + def active_or_decided + active.or(decided).order(id: :asc) + end + def active_or_decided_or_withdrawn active.or(decided).or(withdrawn).order(id: :asc) end From 3ef552bcef35c868c651672c693158049b57ce6a Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 08:42:22 -0600 Subject: [PATCH 32/36] added the new def to the serializer --- .../serializers/work_queue/decision_review_task_serializer.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/serializers/work_queue/decision_review_task_serializer.rb b/app/models/serializers/work_queue/decision_review_task_serializer.rb index 7455091447b..297268de71d 100644 --- a/app/models/serializers/work_queue/decision_review_task_serializer.rb +++ b/app/models/serializers/work_queue/decision_review_task_serializer.rb @@ -72,7 +72,7 @@ def self.representative_tz(object) uuid: decision_review(object).uuid, isLegacyAppeal: false, issueCount: issue_count(object), - activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active.map(&:serialize), + activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), appellant_type: decision_review(object).claimant&.type } end From 80d17458308bda925551facc2a779e03af28a8b6 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 09:20:01 -0600 Subject: [PATCH 33/36] changed the name of activeRequestIssues to activeOrDecidedRequestIssues --- .../decision_review_task_serializer.rb | 3 +- client/.storybook/utils.js | 28 +++++++++---------- client/app/nonComp/components/Disposition.jsx | 2 +- .../nonCompTaskPage/nonCompTaskPageData.js | 2 +- ...grant_effectuation_task_serializer_spec.rb | 6 ++-- .../decision_review_task_serializer_spec.rb | 8 +++--- .../models/tasks/decision_review_task_spec.rb | 4 +-- 7 files changed, 27 insertions(+), 26 deletions(-) diff --git a/app/models/serializers/work_queue/decision_review_task_serializer.rb b/app/models/serializers/work_queue/decision_review_task_serializer.rb index 297268de71d..3d7940f3ce7 100644 --- a/app/models/serializers/work_queue/decision_review_task_serializer.rb +++ b/app/models/serializers/work_queue/decision_review_task_serializer.rb @@ -72,7 +72,8 @@ def self.representative_tz(object) uuid: decision_review(object).uuid, isLegacyAppeal: false, issueCount: issue_count(object), - activeRequestIssues: skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), + activeOrDecidedRequestIssues: + skip_acquiring_request_issues || request_issues(object).active_or_decided.map(&:serialize), appellant_type: decision_review(object).claimant&.type } end diff --git a/client/.storybook/utils.js b/client/.storybook/utils.js index ae01c37f17a..caa9039b69f 100644 --- a/client/.storybook/utils.js +++ b/client/.storybook/utils.js @@ -12,7 +12,7 @@ module.exports = { "id": "6115", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Eligibility", @@ -41,7 +41,7 @@ module.exports = { "id": "6114", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -70,7 +70,7 @@ module.exports = { "id": "17", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -99,7 +99,7 @@ module.exports = { "id": "3f67e4b2-392b-4248-a722-0845b2d3a29e", "isLegacyAppeal": false, "issueCount": 0, - "activeRequestIssues": 0 + "activeOrDecidedRequestIssues": 0 }, "issue_count": 0, "issue_types": "", @@ -128,7 +128,7 @@ module.exports = { "id": "14", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Revocation/Discharge", @@ -157,7 +157,7 @@ module.exports = { "id": "13", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -186,7 +186,7 @@ module.exports = { "id": "5061", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Initial Eligibility and Enrollment in VHA Healthcare", @@ -243,7 +243,7 @@ module.exports = { "id": "5105", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Foreign Medical Program", @@ -272,7 +272,7 @@ module.exports = { "id": "5096", "isLegacyAppeal": false, "issueCount": 2, - "activeRequestIssues": 2 + "activeOrDecidedRequestIssues": 2 }, "issue_count": 2, "issue_types": "Foreign Medical Program,Spina Bifida Treatment (Non-Compensation)", @@ -301,7 +301,7 @@ module.exports = { "id": "5083", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Spina Bifida Treatment (Non-Compensation)", @@ -330,7 +330,7 @@ module.exports = { "id": "5081", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Camp Lejune Family Member", @@ -359,7 +359,7 @@ module.exports = { "id": "5106", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Camp Lejune Family Member", @@ -388,7 +388,7 @@ module.exports = { "id": "5101", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Other", @@ -417,7 +417,7 @@ module.exports = { "id": "5094", "isLegacyAppeal": false, "issueCount": 1, - "activeRequestIssues": 1 + "activeOrDecidedRequestIssues": 1 }, "issue_count": 1, "issue_types": "Caregiver | Other", diff --git a/client/app/nonComp/components/Disposition.jsx b/client/app/nonComp/components/Disposition.jsx index bbbae5ab3b6..14bb3dd0e12 100644 --- a/client/app/nonComp/components/Disposition.jsx +++ b/client/app/nonComp/components/Disposition.jsx @@ -100,7 +100,7 @@ class NonCompDispositions extends React.PureComponent { this.state = { requestIssues: formatRequestIssuesWithDecisionIssues( - this.props.task.appeal.activeRequestIssues, this.props.appeal.decisionIssues), + this.props.task.appeal.activeOrDecidedRequestIssues, this.props.appeal.decisionIssues), decisionDate: '', isFilledOut: false }; diff --git a/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js b/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js index b1f9cacaf35..f9b5a73ea86 100644 --- a/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js +++ b/client/test/data/queue/nonCompTaskPage/nonCompTaskPageData.js @@ -19,7 +19,7 @@ const completedHLRTaskData = { id: '17', isLegacyAppeal: false, issueCount: 1, - activeRequestIssues: [ + activeOrDecidedRequestIssues: [ { id: 3710, rating_issue_reference_id: null, diff --git a/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb b/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb index 298888ba62c..0ea771d2fe1 100644 --- a/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb +++ b/spec/models/serializers/work_queue/board_grant_effectuation_task_serializer_spec.rb @@ -21,7 +21,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, @@ -75,7 +75,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, @@ -134,7 +134,7 @@ id: appeal.external_id, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: appeal.uuid, appellant_type: appeal.claimant.type }, diff --git a/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb b/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb index 950ed5d22bd..14bde4b4541 100644 --- a/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb +++ b/spec/models/serializers/work_queue/decision_review_task_serializer_spec.rb @@ -27,7 +27,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: "VeteranClaimant" }, @@ -76,7 +76,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: nil }, @@ -128,7 +128,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: task.appeal.uuid, appellant_type: claimant.type }, @@ -192,7 +192,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 2, - activeRequestIssues: serialized_issues, + activeOrDecidedRequestIssues: serialized_issues, appellant_type: "VeteranClaimant", uuid: task.appeal.uuid }, diff --git a/spec/models/tasks/decision_review_task_spec.rb b/spec/models/tasks/decision_review_task_spec.rb index 97ccd76038c..d10a1ee9d48 100644 --- a/spec/models/tasks/decision_review_task_spec.rb +++ b/spec/models/tasks/decision_review_task_spec.rb @@ -125,7 +125,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], appellant_type: "VeteranClaimant", uuid: hlr.uuid }, @@ -169,7 +169,7 @@ id: hlr.id.to_s, isLegacyAppeal: false, issueCount: 0, - activeRequestIssues: [], + activeOrDecidedRequestIssues: [], uuid: hlr.uuid, appellant_type: "VeteranClaimant" }, From 2b97018824cc77040b33d784ea484cd0ab1b6430 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Wed, 13 Dec 2023 11:51:02 -0600 Subject: [PATCH 34/36] updated business_line_task to set completed_by for board grants --- app/models/concerns/business_line_task.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/concerns/business_line_task.rb b/app/models/concerns/business_line_task.rb index aedc012a497..c71ba264d20 100644 --- a/app/models/concerns/business_line_task.rb +++ b/app/models/concerns/business_line_task.rb @@ -3,10 +3,10 @@ module BusinessLineTask extend ActiveSupport::Concern - def complete_with_payload!(_decision_issue_params, _decision_date, _current_user) + def complete_with_payload!(_decision_issue_params, _decision_date, current_user) return false unless validate_task - update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now) + update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: current_user) end private From a1e034d8da09f5cb6e60669d6a5f647ca600c67c Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 14 Dec 2023 14:04:45 -0600 Subject: [PATCH 35/36] addressing first comment from review --- app/models/concerns/business_line_task.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/concerns/business_line_task.rb b/app/models/concerns/business_line_task.rb index c71ba264d20..978e6692316 100644 --- a/app/models/concerns/business_line_task.rb +++ b/app/models/concerns/business_line_task.rb @@ -3,10 +3,10 @@ module BusinessLineTask extend ActiveSupport::Concern - def complete_with_payload!(_decision_issue_params, _decision_date, current_user) + def complete_with_payload!(_decision_issue_params, _decision_date, user) return false unless validate_task - update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: current_user) + update!(status: Constants.TASK_STATUSES.completed, closed_at: Time.zone.now, completed_by: user) end private From d791947675a824f21db67c9f56a45576dfda6945 Mon Sep 17 00:00:00 2001 From: Sean Craig Date: Thu, 14 Dec 2023 14:33:53 -0600 Subject: [PATCH 36/36] addressed the second comment of review --- spec/models/tasks/decision_review_task_spec.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/spec/models/tasks/decision_review_task_spec.rb b/spec/models/tasks/decision_review_task_spec.rb index d10a1ee9d48..8268fe2ca42 100644 --- a/spec/models/tasks/decision_review_task_spec.rb +++ b/spec/models/tasks/decision_review_task_spec.rb @@ -87,6 +87,8 @@ caseflow_decision_date: caseflow_decision_date )).to_not be_nil expect(task.status).to eq "completed" + expect(task.completed_by_id).to eq user.id + expect(task.appeal.request_issues.first.closed_status).to eq "decided" remand_sc = hlr.remand_supplemental_claims.first expect(remand_sc).to_not be_nil