diff --git a/app/models/form/sales/pages/living_before_purchase.rb b/app/models/form/sales/pages/living_before_purchase.rb new file mode 100644 index 000000000..e76b8fd63 --- /dev/null +++ b/app/models/form/sales/pages/living_before_purchase.rb @@ -0,0 +1,14 @@ +class Form::Sales::Pages::LivingBeforePurchase < ::Form::Page + def initialize(id, hsh, subsection) + super + @header = "" + @description = "" + @subsection = subsection + end + + def questions + @questions ||= [ + Form::Sales::Questions::LivingBeforePurchase.new(nil, nil, self), + ] + end +end diff --git a/app/models/form/sales/questions/living_before_purchase.rb b/app/models/form/sales/questions/living_before_purchase.rb new file mode 100644 index 000000000..fbcc9a92e --- /dev/null +++ b/app/models/form/sales/questions/living_before_purchase.rb @@ -0,0 +1,16 @@ +class Form::Sales::Questions::LivingBeforePurchase < ::Form::Question + def initialize(id, hsh, page) + super + @id = "proplen" + @check_answer_label = "Number of years buyers living in the property before purchase" + @header = "How long did the buyer(s) live in the property before purchase?" + @hint_text = "You should round this up to the nearest year. If the buyers haven't been living in the property, enter '0'" + @type = "numeric" + @page = page + @min = 0 + @max = 80 + @step = 1 + @width = 5 + @suffix = " years" + end +end diff --git a/app/models/form/sales/subsections/discounted_ownership_scheme.rb b/app/models/form/sales/subsections/discounted_ownership_scheme.rb index b432e0700..fb684e874 100644 --- a/app/models/form/sales/subsections/discounted_ownership_scheme.rb +++ b/app/models/form/sales/subsections/discounted_ownership_scheme.rb @@ -9,6 +9,7 @@ class Form::Sales::Subsections::DiscountedOwnershipScheme < ::Form::Subsection def pages @pages ||= [ + Form::Sales::Pages::LivingBeforePurchase.new("living_before_purchase_discounted_ownership", nil, self), Form::Sales::Pages::AboutDeposit.new("about_deposit_discounted_ownership", nil, self), Form::Sales::Pages::AboutPriceRtb.new("about_deposit_discounted_ownership", nil, self), Form::Sales::Pages::AboutPriceNotRtb.new("about_deposit_discounted_ownership", nil, self), diff --git a/app/models/form/sales/subsections/shared_ownership_scheme.rb b/app/models/form/sales/subsections/shared_ownership_scheme.rb index b22adc11e..74dba4351 100644 --- a/app/models/form/sales/subsections/shared_ownership_scheme.rb +++ b/app/models/form/sales/subsections/shared_ownership_scheme.rb @@ -9,6 +9,7 @@ class Form::Sales::Subsections::SharedOwnershipScheme < ::Form::Subsection def pages @pages ||= [ + Form::Sales::Pages::LivingBeforePurchase.new("living_before_purchase_shared_ownership", nil, self), Form::Sales::Pages::Staircase.new(nil, nil, self), Form::Sales::Pages::AboutStaircase.new(nil, nil, self), Form::Sales::Pages::Resale.new(nil, nil, self), diff --git a/db/migrate/20230103094948_add_proplen_to_sales.rb b/db/migrate/20230103094948_add_proplen_to_sales.rb new file mode 100644 index 000000000..f373d22a8 --- /dev/null +++ b/db/migrate/20230103094948_add_proplen_to_sales.rb @@ -0,0 +1,7 @@ +class AddProplenToSales < ActiveRecord::Migration[7.0] + def change + change_table :sales_logs, bulk: true do |t| + t.column :proplen, :integer + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 0b85e7f1d..7889b2872 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.0].define(version: 2022_12_22_133600) do +ActiveRecord::Schema[7.0].define(version: 2023_01_03_094948) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -415,6 +415,14 @@ ActiveRecord::Schema[7.0].define(version: 2022_12_22_133600) do t.integer "ecstat4" t.integer "ecstat5" t.integer "ecstat6" + t.integer "pregyrha" + t.integer "pregla" + t.integer "pregghb" + t.integer "pregother" + t.integer "disabled" + t.integer "wheel_value_check" + t.integer "hhregres" + t.integer "hhregresstill" t.integer "frombeds" t.integer "staircase" t.integer "stairbought" @@ -427,13 +435,13 @@ ActiveRecord::Schema[7.0].define(version: 2022_12_22_133600) do t.integer "resale" t.decimal "deposit", precision: 10, scale: 2 t.decimal "cashdis", precision: 10, scale: 2 - t.integer "disabled" t.integer "lanomagr" t.integer "soctenant" t.decimal "value", precision: 10, scale: 2 t.decimal "equity", precision: 10, scale: 2 t.decimal "discount", precision: 10, scale: 2 t.decimal "grant", precision: 10, scale: 2 + t.integer "proplen" t.index ["created_by_id"], name: "index_sales_logs_on_created_by_id" t.index ["managing_organisation_id"], name: "index_sales_logs_on_managing_organisation_id" t.index ["owning_organisation_id"], name: "index_sales_logs_on_owning_organisation_id"