Browse Source

feat: update 24/25 lettings paper form (#2275)

* feat: update 24/25 lettings paper form

* feat: update renewal answer options accordingly

* refactor: remove extra spaces from other

* refactor: reorder field_118 and 119 in 2024 row parser
pull/2276/head v0.4.21
natdeanlewissoftwire 10 months ago committed by GitHub
parent
commit
d2aee4328d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      app/models/form/lettings/questions/reason.rb
  2. 2
      app/models/form/lettings/questions/reason_renewal.rb
  3. 16
      app/services/bulk_upload/lettings/year2024/row_parser.rb
  4. BIN
      public/files/2024_25_lettings_paper_form.pdf
  5. BIN
      public/files/bulk-upload-lettings-specification-2024-25.xlsx
  6. BIN
      public/files/bulk-upload-lettings-template-2024-25.xlsx
  7. 2
      spec/models/form/lettings/questions/reason_renewal_spec.rb
  8. 2
      spec/models/form/lettings/questions/reason_spec.rb
  9. 10
      spec/services/bulk_upload/lettings/year2024/row_parser_spec.rb

2
app/models/form/lettings/questions/reason.rb

@ -21,7 +21,7 @@ class Form::Lettings::Questions::Reason < ::Form::Question
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"53" => { "value" => "End of fixed term tenancy - evicted for any other reason" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"2" => { "value" => "Left home country as a refugee" },
"45" => { "value" => "Discharged from prison" },

2
app/models/form/lettings/questions/reason_renewal.rb

@ -21,7 +21,7 @@ class Form::Lettings::Questions::ReasonRenewal < ::Form::Question
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"53" => { "value" => "End of fixed term tenancy - evicted for any other reason" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },

16
app/services/bulk_upload/lettings/year2024/row_parser.rb

@ -121,8 +121,8 @@ class BulkUpload::Lettings::Year2024::RowParser
field_115: "Was the letting made under the Accessible Register?",
field_116: "What was the source of referral for this letting?",
field_117: "Do you know the household's combined total income after tax?",
field_119: "How often does the household receive income?",
field_118: "How much income does the household have in total?",
field_118: "How often does the household receive income?",
field_119: "How much income does the household have in total?",
field_120: "Is the tenant likely to be receiving any of these housing-related benefits?",
field_121: "How much of the household's income is from Universal Credit, state pensions or benefits?",
field_122: "Does the household pay rent or other charges for the accommodation?",
@ -258,8 +258,8 @@ class BulkUpload::Lettings::Year2024::RowParser
attribute :field_115, :integer
attribute :field_116, :integer
attribute :field_117, :integer
attribute :field_119, :integer
attribute :field_118, :decimal
attribute :field_118, :integer
attribute :field_119, :decimal
attribute :field_120, :integer
attribute :field_121, :integer
attribute :field_122, :integer
@ -968,8 +968,8 @@ private
referral: %i[field_116],
net_income_known: %i[field_117],
earnings: %i[field_118],
incfreq: %i[field_119],
incfreq: %i[field_118],
earnings: %i[field_119],
hb: %i[field_120],
benefits: %i[field_121],
@ -1156,7 +1156,7 @@ private
attributes["net_income_known"] = net_income_known
attributes["earnings"] = earnings
attributes["incfreq"] = field_119
attributes["incfreq"] = field_118
attributes["hb"] = field_120
attributes["benefits"] = field_121
@ -1442,7 +1442,7 @@ private
end
def earnings
field_118.round if field_118.present?
field_119.round if field_119.present?
end
def tshortfall_known

BIN
public/files/2024_25_lettings_paper_form.pdf

Binary file not shown.

BIN
public/files/bulk-upload-lettings-specification-2024-25.xlsx

Binary file not shown.

BIN
public/files/bulk-upload-lettings-template-2024-25.xlsx

Binary file not shown.

2
spec/models/form/lettings/questions/reason_renewal_spec.rb

@ -74,7 +74,7 @@ RSpec.describe Form::Lettings::Questions::ReasonRenewal, type: :model do
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"53" => { "value" => "End of fixed term tenancy - evicted for any other reason" },
"20" => { "value" => "Other" },
"47" => { "value" => "Tenant prefers not to say" },
"divider" => { "value" => true },

2
spec/models/form/lettings/questions/reason_spec.rb

@ -108,7 +108,7 @@ RSpec.describe Form::Lettings::Questions::Reason, type: :model do
"50" => { "value" => "End of social housing tenancy - no fault" },
"51" => { "value" => "End of social housing tenancy - evicted due to anti-social behaviour (ASB)" },
"52" => { "value" => "End of social housing tenancy - evicted due to rent arrears" },
"53" => { "value" => "End of social housing tenancy - evicted for any other reason" },
"53" => { "value" => "End of fixed term tenancy - evicted for any other reason" },
"1" => { "value" => "Permanently decanted from another property owned by this landlord" },
"2" => { "value" => "Left home country as a refugee" },
"45" => { "value" => "Discharged from prison" },

10
spec/services/bulk_upload/lettings/year2024/row_parser_spec.rb

@ -206,8 +206,8 @@ RSpec.describe BulkUpload::Lettings::Year2024::RowParser do
field_116: "2",
field_117: "1",
field_118: "2300",
field_119: "2",
field_118: "2",
field_119: "2300",
field_120: "1",
field_121: "1",
@ -1122,8 +1122,8 @@ RSpec.describe BulkUpload::Lettings::Year2024::RowParser do
end
end
describe "#field_112, 117, 118" do
context "when none of field_112, 117, 118 are given" do
describe "#field_112, 117, 119" do
context "when none of field_112, 117, 119 are given" do
let(:attributes) { { bulk_upload:, field_112: "", field_113: "", field_114: "", field_85: "1" } }
it "sets correct errors" do
@ -2117,7 +2117,7 @@ RSpec.describe BulkUpload::Lettings::Year2024::RowParser do
end
describe "#earnings" do
let(:attributes) { { bulk_upload:, field_118: "104.50" } }
let(:attributes) { { bulk_upload:, field_119: "104.50" } }
it "rounds to the nearest whole pound" do
expect(parser.log.earnings).to eq(105)

Loading…
Cancel
Save