Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Acd/appeals 43853 43854 #21971

Merged
merged 8 commits into from
Jun 28, 2024
258 changes: 217 additions & 41 deletions app/models/vacols/case_docket.rb

Large diffs are not rendered by default.

310 changes: 310 additions & 0 deletions db/seeds/legacy_affinity_cases.rb

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion spec/factories/document.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

FactoryBot.define do
factory :document do
sequence(:vbms_document_id, 10_000) # start with initial high value to reserve manual assignment range
sequence(:vbms_document_id, 10_000) { |n| "#{Time.zone.today.day}#{n}#{Time.zone.now.to_i.to_s.last(1)}" }

type { "VA 8 Certification of Appeal" }
end
Expand Down
12 changes: 12 additions & 0 deletions spec/factories/user.rb
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,11 @@
roles { ["Hearing Prep"] }
end

trait :judge_with_appeals_excluded_from_affinity do
with_appeals_excluded_from_affinity_judge_team
roles { ["Hearing Prep"] }
end

trait :ama_only_judge do
after(:create) do |judge|
JudgeTeam.for_judge(judge)&.update(ama_only_push: true, ama_only_request: true) ||
Expand Down Expand Up @@ -95,6 +100,13 @@
end
end

trait :with_appeals_excluded_from_affinity_judge_team do
after(:create) do |judge|
judge_team = JudgeTeam.for_judge(judge) || JudgeTeam.create_for_judge(judge)
judge_team.update!(exclude_appeals_from_affinity: true)
end
end

trait :with_vacols_attorney_record do
after(:create) do |user|
create(:staff, :attorney_role, user: user)
Expand Down
76 changes: 64 additions & 12 deletions spec/factories/vacols/case.rb
Original file line number Diff line number Diff line change
Expand Up @@ -197,10 +197,18 @@
end
end

# You can change the judge, attorney, AOD status, and Appeal Affinity of your Legacy CAVC Appeal.
# The Appeal_Affinity is default but the AOD must be toggled on. Example:
# "FactoryBot.create(:legacy_cavc_appeal, judge: judge, aod: true, affinity_start_date: 2.weeks.ago)"

factory :legacy_cavc_appeal do
transient do
judge { nil }
attorney { nil }
aod { false }
appeal_affinity { true }
affinity_start_date { 1.month.ago }
tied_to { true }
end

bfmpro { "HIS" }
Expand Down Expand Up @@ -234,17 +242,28 @@
vacols_case.correspondent.update!(ssn: vacols_case.bfcorlid.chomp("S"))
vacols_case.save

create(
:veteran,
first_name: vacols_case.correspondent.snamef,
last_name: vacols_case.correspondent.snamel,
name_suffix: vacols_case.correspondent.ssalut,
ssn: vacols_case.correspondent.ssn,
file_number: vacols_case.correspondent.ssn
)

create(
:case,
unless Veteran.find_by_file_number_or_ssn(vacols_case.correspondent.ssn)
create(
:veteran,
first_name: vacols_case.correspondent.snamef,
last_name: vacols_case.correspondent.snamel,
name_suffix: vacols_case.correspondent.ssalut,
ssn: vacols_case.correspondent.ssn,
file_number: vacols_case.correspondent.ssn
)
end

if evaluator.tied_to
create(
:case_hearing,
:disposition_held,
folder_nr: vacols_case.bfkey,
hearing_date: 5.days.ago.to_date,
user: User.find_by_css_id(evaluator.judge.sdomainid)
)
end

params = {
bfdpdcn: vacols_case.bfddec,
bfac: "7",
bfcurloc: "81",
Expand All @@ -259,7 +278,24 @@
original_case: vacols_case,
case_issues_equal: true,
original_case_issues: vacols_case.case_issues
)
}

cavc_appeal = if evaluator.aod
create(
:case,
:aod,
params
)
else
create(
:case,
params
)
end

if evaluator.appeal_affinity
create(:appeal_affinity, appeal: cavc_appeal, affinity_start_date: evaluator.affinity_start_date)
end
end
end
end
Expand Down Expand Up @@ -295,6 +331,22 @@
end
end

trait :tied_to_previous_judge do
transient do
previous_tied_judge { nil }
end

after(:create) do |vacols_case, evaluator|
create(
:case_hearing,
:disposition_held,
folder_nr: vacols_case.bfkey,
hearing_date: 5.days.ago.to_date,
user: evaluator.previous_tied_judge
)
end
end

trait :type_original do
bfac { "1" }
end
Expand Down
1 change: 1 addition & 0 deletions spec/jobs/incomplete_distributions_job_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
create(:case_distribution_lever, :nod_adjustment)
create(:case_distribution_lever, :batch_size_per_attorney)
create(:case_distribution_lever, :cavc_affinity_days)
create(:case_distribution_lever, :cavc_aod_affinity_days)
create(:case_distribution_lever, :ama_hearing_case_affinity_days)
create(:case_distribution_lever, :ama_hearing_case_aod_affinity_days)
create(:case_distribution_lever, :ama_direct_review_start_distribution_prior_to_goals)
Expand Down
2 changes: 2 additions & 0 deletions spec/models/concerns/by_docket_date_distribution_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ def batch_size
create(:case_distribution_lever, :batch_size_per_attorney)
create(:case_distribution_lever, :ama_hearing_case_affinity_days)
create(:case_distribution_lever, :ama_hearing_case_aod_affinity_days)
create(:case_distribution_lever, :cavc_affinity_days)
create(:case_distribution_lever, :cavc_aod_affinity_days)
end

# used to put {num} ambiguous objects into an array to mock the return array from requested_distribution
Expand Down
1 change: 1 addition & 0 deletions spec/models/distribution_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
create(:case_distribution_lever, :alternative_batch_size)
create(:case_distribution_lever, :nod_adjustment)
create(:case_distribution_lever, :cavc_affinity_days)
create(:case_distribution_lever, :cavc_aod_affinity_days)
create(:case_distribution_lever, :ama_hearing_case_affinity_days)
create(:case_distribution_lever, :ama_hearing_case_aod_affinity_days)
end
Expand Down
2 changes: 2 additions & 0 deletions spec/models/dockets/legacy_docket_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
before do
create(:case_distribution_lever, :request_more_cases_minimum)
create(:case_distribution_lever, :nod_adjustment)
create(:case_distribution_lever, :cavc_affinity_days)
create(:case_distribution_lever, :cavc_aod_affinity_days)
end

let(:docket) do
Expand Down
Loading
Loading