Browse Source

update more field types

pull/79/head
Kat 4 years ago
parent
commit
6cdec64783
  1. 32
      app/constants/db_enums.rb
  2. 4
      app/models/case_log.rb
  3. 16
      db/migrate/20211103090530_change_field_types.rb
  4. 17
      db/schema.rb
  5. 4
      spec/fixtures/complete_case_log.json
  6. 6
      spec/helpers/tasklist_helper_spec.rb

32
app/constants/db_enums.rb

@ -204,4 +204,36 @@ module DbEnums
"Other" => 6, "Other" => 6,
} }
end end
def self.incfreq
{
"Weekly" => 1,
"Monthly" => 2,
"Yearly" => 3,
}
end
def self.benefits
{
"All" => 1,
"Some" => 2,
"None" => 3,
"Do not know" => 4,
}
end
def self.period
{
"Weekly for 52 weeks" => 1,
"Fortnightly" => 2,
"Four-weekly" => 3,
"Calendar monthly" => 4,
"Weekly for 50 weeks" => 5,
"Weekly for 49 weeks" => 6,
"Weekly for 48 weeks" => 7,
"Weekly for 47 weeks" => 8,
"Weekly for 46 weeks" => 9,
"Weekly for 53 weeks" => 10,
}
end
end end

4
app/models/case_log.rb

@ -94,6 +94,10 @@ class CaseLog < ApplicationRecord
enum cbl: DbEnums.polar2, _suffix: true enum cbl: DbEnums.polar2, _suffix: true
enum chr: DbEnums.polar2, _suffix: true enum chr: DbEnums.polar2, _suffix: true
enum cap: DbEnums.polar2, _suffix: true enum cap: DbEnums.polar2, _suffix: true
enum wchair: DbEnums.polar2, _suffix: true
enum incfreq: DbEnums.incfreq, _suffix: true
enum benefits: DbEnums.benefits, _suffix: true
enum period: DbEnums.period, _suffix: true
AUTOGENERATED_FIELDS = %w[id status created_at updated_at discarded_at].freeze AUTOGENERATED_FIELDS = %w[id status created_at updated_at discarded_at].freeze

16
db/migrate/20211103090530_change_field_types.rb

@ -48,6 +48,14 @@ class ChangeFieldTypes < ActiveRecord::Migration[6.1]
t.change :landlord, "integer USING landlord::integer" t.change :landlord, "integer USING landlord::integer"
t.change :rsnvac, "integer USING rsnvac::integer" t.change :rsnvac, "integer USING rsnvac::integer"
t.change :unittype_gn, "integer USING unittype_gn::integer" t.change :unittype_gn, "integer USING unittype_gn::integer"
t.change :beds, "integer USING beds::integer"
t.change :wchair, "integer USING wchair::integer"
t.change :incfreq, "integer USING incfreq::integer"
t.change :benefits, "integer USING benefits::integer"
t.change :period, "integer USING period::integer"
t.change :brent, "integer USING brent::integer"
t.change :scharge, "integer USING scharge::integer"
t.change :pscharge, "integer USING pscharge::integer"
end end
end end
@ -100,6 +108,14 @@ class ChangeFieldTypes < ActiveRecord::Migration[6.1]
t.change :landlord, :string t.change :landlord, :string
t.change :rsnvac, :string t.change :rsnvac, :string
t.change :unittype_gn, :string t.change :unittype_gn, :string
t.change :beds, :string
t.change :wchair, :string
t.change :incfreq, :string
t.change :benefits, :string
t.change :period, :string
t.change :brent, :string
t.change :scharge, :string
t.change :pscharge, :string
end end
end end
end end

17
db/schema.rb

@ -80,19 +80,20 @@ ActiveRecord::Schema.define(version: 2021_11_03_090530) do
t.string "property_reference" t.string "property_reference"
t.integer "unittype_gn" t.integer "unittype_gn"
t.string "property_building_type" t.string "property_building_type"
t.string "beds" t.integer "beds"
t.string "property_void_date" t.string "property_void_date"
t.string "property_major_repairs" t.string "property_major_repairs"
t.string "property_major_repairs_date" t.string "property_major_repairs_date"
t.string "wchair" t.integer "offered"
t.integer "wchair"
t.integer "earnings" t.integer "earnings"
t.string "incfreq" t.integer "incfreq"
t.string "benefits" t.integer "benefits"
t.string "housing_benefit" t.string "housing_benefit"
t.string "period" t.integer "period"
t.string "brent" t.integer "brent"
t.string "scharge" t.integer "scharge"
t.string "pscharge" t.integer "pscharge"
t.string "supcharge" t.string "supcharge"
t.string "tcharge" t.string "tcharge"
t.string "outstanding_amount" t.string "outstanding_amount"

4
spec/fixtures/complete_case_log.json vendored

@ -66,13 +66,13 @@
"property_major_repairs": "Yes", "property_major_repairs": "Yes",
"property_major_repairs_date": "05/05/2020", "property_major_repairs_date": "05/05/2020",
"offered": 2, "offered": 2,
"wchair": true, "wchair": "Yes",
"net_income_known": "Yes", "net_income_known": "Yes",
"earnings": 0, "earnings": 0,
"incfreq": null, "incfreq": null,
"benefits": "Some", "benefits": "Some",
"housing_benefit": "Universal Credit with housing element, but not Housing Benefit", "housing_benefit": "Universal Credit with housing element, but not Housing Benefit",
"period": "Weekly", "period": "Fortnightly",
"brent": 200, "brent": 200,
"scharge": 50, "scharge": 50,
"pscharge": 40, "pscharge": 40,

6
spec/helpers/tasklist_helper_spec.rb

@ -30,7 +30,11 @@ RSpec.describe TasklistHelper do
end end
it "returns completed if all the questions in the subsection have been answered" do it "returns completed if all the questions in the subsection have been answered" do
%w[earnings incfreq benefits housing_benefit].each { |x| case_log[x] = "value" } case_log["earnings"] = "value"
case_log["incfreq"] = "Weekly"
case_log["benefits"] = "All"
case_log["housing_benefit"] = "Do not know"
status = get_subsection_status("income_and_benefits", case_log, income_and_benefits_questions) status = get_subsection_status("income_and_benefits", case_log, income_and_benefits_questions)
expect(status).to eq(:completed) expect(status).to eq(:completed)
end end

Loading…
Cancel
Save