Submit social housing lettings and sales data (CORE)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

306 lines
7.4 KiB

FactoryBot.define do
factory :sales_log do
assigned_to { association :user }
before(:create) { |log, _evaluator| log.assigned_to ||= create(:user) }
created_by { assigned_to }
owning_organisation { assigned_to.organisation }
managing_organisation { assigned_to.organisation }
created_at { Time.zone.now }
updated_at { Time.zone.now }
CLDC-3787: Autocomplete address uprn search (#2967) * Prototype * Remove git from dockerfile * UPRN search too * Revert address client and use uprn client * Add address search to lettings too * Updates with lettings logs * Update copy * Move guidance to partial * Fix uprn return * Delete new db file, restore old * Lint * Remove old db file * Lint * Add new db file, remove old * JS lint * Update schema * Add manual entry option * Update derived variables * Comment out old version of find address in 2024 * Remove db column * Add new db columns * Update guidance partial * Add unless to migration * Add migration files to remove and readd * authenticate user * Remove file * Delete migration files * Add search url * Add search url * Fix onConfirm * Add manual entry button instead of change skip link * Revert "Add manual entry button instead of change skip link" This reverts commit 22577c801aca940acfc16caf94d3159071ea8258. * Revert "Revert "Add manual entry button instead of change skip link"" This reverts commit 9f0a2111a58e933a28105e54aba6ca08c2d043b7. * Replace uprn question * Update question copy * Allow changing the address search value * Rename address autocomplete to address search * Add buttons to switch between address questions * Fix controller logic * Enable adding question numbers to page headers * Update skip links * Add js disabled message to select * Alternative way to handle js disabled users * Revert "Alternative way to handle js disabled users" This reverts commit 10da3d61e2f89ec29ef9f9071c63eb99aa2bb482. * Fix typo * Fix address options for address search question * Reuse AddressDataPresenter where appropriate * Lint * Remove uprn selection question tests * Reuse UprnDataPresenter where appropriate * CSV export, exclude address_search * Add address search to sales and lettings factory bots * Exclude old address questions from routing, keep as exported values * lint * Update uprn value * Add address search input boolean and switch between questions * Reword copy, remove "Find" and "Search by" * Align address questions, add question number and question text * Remove old wip depends on * Update some tests * Update migration, move default value from db to model * Update test * Remove binding pry * Lint * Update test * Lint * Update test * Update routes with underscores * Remove debugging * Limit visible logs to user * Add manual address entry selected variable * Change address search min length to 3chars * Remove binding.pry * Update factory bots, manual_address_entry_selected to true for preexisting tests * Update model tests * Update sales model tests excl E-code tests * Update address search request test * Reuse uprn id instead of address_search * Set manual address entry selected as false when creating test logs * Update model test * Update request tests and remove old questions * Add back test * Update services * Update more tests Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com> * Update request tests * update model tests * Also update sales log * Update service csv uprn_selection values to 1 * Add tests for pages and questions * Update test * Update uprn_known * Lint * Add feature test * Update test * Update tests * Remove test * pre-consolidate migration files * Indentation * Controller method improvements * Update question numbers for 2025/26 * Update question numbers tests * consolidate and delete old migration files * undo changes to schema.rb * Update 2025 property information translation files * Update answer options to show singular previously selected result if present * Move buttons to bottom guidance partials * Small improvements, make address search and existing search more similar * Validate entered addresses as within England * Update test * Revert "Validate entered addresses as within England" This reverts commit 2dbfbcc8a5188cde7fb0ac0dcdbc5919eefd6a12. * Add missing button to sales address page * Change error code * Clear invalid options * Edit no results message method * Keep no result logic just change text * Display uprn value with address value * Still show no results message when characters entered is less than 3 rather than nothing * Fix uprn result when query is ambiguous * Reduce min match for address search * Hide no result found message just before results are populated * Prevent changing logs to 2025 with invalid addresses * Correct attribute name * Handle nil * Remove custom error message * Remove unused variables from factory * Update tests, remove address and postcode from old find address * Fix bug clearing uprn from see all answers * Revert "Fix bug clearing uprn from see all answers" This reverts commit a66c47a1abf7a429f25e0a016fedb0b92e92f15c. * Undo changes to validation method * Fix unchanged uprn_selection when clearing or changing uprn * Undo a change * Update bulk upload 2025 * Fix typo * Remove redundant line --------- Co-authored-by: Kat <54268893+kosiakkatrina@users.noreply.github.com> Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com>
1 week ago
manual_address_entry_selected { true }
trait :in_progress do
purchid { "PC123" }
ownershipsch { 2 }
type { 8 }
jointpur { 2 }
saledate_today
end
trait :shared_ownership do
ownershipsch { 1 }
type { 30 }
end
trait :privacy_notice_seen do
privacynotice { 1 }
end
trait :saledate_today do
saledate { Time.zone.today }
end
trait :shared_ownership_setup_complete do
saledate_today
ownershipsch { 1 }
type { 30 }
jointpur { 2 }
noint { 2 }
privacynotice { 1 }
purchid { rand(999_999_999).to_s }
staircase { 1 }
end
trait :discounted_ownership_setup_complete do
saledate_today
ownershipsch { 2 }
type { 9 }
jointpur { 1 }
jointmore { 1 }
noint { 2 }
privacynotice { 1 }
purchid { rand(999_999_999).to_s }
end
trait :outright_sale_setup_complete do
saledate_today
ownershipsch { 3 }
type { 10 }
companybuy { 2 }
buylivein { 1 }
jointpur { 2 }
noint { 2 }
privacynotice { 1 }
purchid { rand(999_999_999).to_s }
end
trait :duplicate do
shared_ownership_setup_complete
purchid { "PC123" }
saledate_today
age1_known { 1 }
age1 { 20 }
sex1 { "F" }
ecstat1 { 1 }
postcode_full { "A1 1AA" }
noint { 2 }
uprn_known { 0 }
staircase { 1 }
end
trait :completed do
purchid { rand(999_999_999).to_s }
ownershipsch { 2 }
type { 8 }
saledate_today
jointpur { 1 }
beds { 2 }
jointmore { 1 }
noint { 2 }
privacynotice { 1 }
age1_known { 0 }
age1 { Faker::Number.within(range: 27..45) }
sex1 { %w[F M X R].sample }
national { 18 }
buy1livein { 1 }
relat2 { "P" }
proptype { 1 }
age2_known { 0 }
age2 { Faker::Number.within(range: 25..45) }
builtype { 1 }
ethnic { 3 }
ethnic_group { 17 }
sex2 { "X" }
buy2livein { "1" }
ecstat1 { "1" }
ecstat2 { "1" }
hholdcount { "4" }
wheel { 1 }
details_known_3 { 1 }
age3_known { 0 }
age3 { 14 }
details_known_4 { 1 }
age4_known { 0 }
age4 { 18 }
details_known_5 { 1 }
age5_known { 0 }
age5 { 40 }
details_known_6 { 1 }
age6_known { 0 }
age6 { 40 }
income1nk { 0 }
income1 { 13_400 }
inc1mort { 1 }
income2nk { 0 }
income2 { 13_400 }
inc2mort { 1 }
uprn_known { 0 }
address_line1 { "Address line 1" }
town_or_city { Faker::Address.city }
la_known { 1 }
la { "E09000003" }
savingsnk { 1 }
prevown { 1 }
prevshared { 2 }
sex3 { %w[F M X R].sample }
sex4 { %w[F M X R].sample }
sex5 { %w[F M X R].sample }
sex6 { %w[F M X R].sample }
mortgage { 20_000 }
ecstat3 { 9 }
ecstat4 { 3 }
ecstat5 { 2 }
ecstat6 { 1 }
Cldc 1440 household situation section (#1132) * feat: add question page and subsection (#1120) * feat: add question page and subsection * refactor: linting * feat: remove schema rows from other branch * feat: slight refactor, fix tag behaviour and add section tests * test: update and add tests * feat: update status behaviour * feat: update subsection status tag * refactor: linting * [CLDC-857] Add household wheelchair check (#1122) * [CLDC-857] Add household wheelchair check * Hide only if answered * Cldc 1497 ever served armed forces (#1124) * feat: add question and page * test: update tests * refactor: linting and slight test updates * test: fix tests * Cldc 1498 still serving armed forces (#1123) * feat: new question and tests * test: update subsection spec * test: update tests * feat: (future) conflict resolving * feat: more conflict resolution * feat: update db field * test: update id * test: updates * Cldc 1488 last accomodation (#1125) * Add postcode fields * Add previous postcode page and questions * Add last accommodation page to household situation subsection * add previous la known to the db * infer correct location fields * styling * Reorder disability questions (#1127) * [CLDC-1487] Add buyer1 previous tenure question (#1133) * use collection_start_year instead of the startdate (#1128) * [CLDC-1487] Add buyer 1 previous tenure Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * feat: fix routing (#1141) * Add last accommodation la question (#1142) * move hint text (#1146) Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com> Co-authored-by: Jack S <113976590+bibblobcode@users.noreply.github.com>
2 years ago
disabled { 1 }
deposit { 80_000 }
Cldc 1776 sales information sections (#1106) * Mark subsection as completed if it is not displayed in the tasklist and hide it from the UI * Add sale_information section * add sales information subsections * Cldc 1531 staircasing (#1109) * Add staircase field to sales_logs table * Add staircase question and page * add staircase page to the shared ownership scheme subsection fix file name * Cldc 1539 previous bedrooms (#1108) * add frombeds field * Add previous_bedrooms page and question * add Previous Bedrooms page to the shared ownership subsection * Cldc 1532 about staircasing (#1110) * Add stairboughts and stairowned fields to the database * Add about staircasing page and questions * Add about staircasing page to the shared wnership scheme subsection * Add a space before percent * Cldc 1546 monthly rent (#1111) * Add monthly rent column to sales logs table * Add monthly rent question and page * Add monthly rent page to the shared ownership scheme subsection * Cldc 1535 exchange contracts (#1112) * Add exdate to sales logs table * Add exchange date page and question * Add exchange contracts page to the shared ownership subsection * derive exday, exmonth and exyear, tests and lint * rebase tests * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * Cldc 1545 about the deposit (#1113) * feat: add question(s) without depends_on behaviour * feat: separate ids for diff sections * test: update tests * test: add tests * tests: test tweaks * refactor: linting * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * feat: add question(s) without depends_on behaviour Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * Cldc 1533 is resale (#1118) * feat: add resale question and page * tests: add new tests * test: update previous tests * refactor: linting * refactor: linting * Cldc 1576 buyer prp (#1117) * Add soctenant field to sales logs * Add buyer previous page and question * Add buyer previous page to shared ownership scheme subsection * rebase migrate * rebase too * Cldc 1540 about price (#1121) * add price fields to the sales logs table * Add about proce questions * add about proce pages * Add about price pages to sale information sections * rebase changes * happy new year * Switch the order of sales log sections * Cldc 1540 fixes (#1130) * Update order of pages and remove wrong id's * Add spacing to the hint text * Cldc 1521 living before purchase (#1129) * feat: add new page and question and update db * test: add and update tests * feat: reset db * Only display from beds for social housing (#1131) * Cldc 1544 mortgage amount (#1136) * feat: add sales log seeds * feat: add question and page and update db * tests: add and update tests * Cldc 1540 fixes part two (#1135) * Change about_price_social_housing to about_price_shared_ownership and display it in all shared ownership cases * Change about_price to purchase_price and display it for outright sale * lint * Move exchange contracts date page (#1143) * feat: PO fix and tests (#1144) * feat: PO fix and tests * feat: simmplification * refactor: linting * feat: copy tweak Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com> Co-authored-by: natdeanlewissoftwire <nat.dean-lewis@softwire.com>
2 years ago
value { 110_000 }
value_value_check { 0 }
grant { 10_000 }
Cldc 1776 sales information sections (#1106) * Mark subsection as completed if it is not displayed in the tasklist and hide it from the UI * Add sale_information section * add sales information subsections * Cldc 1531 staircasing (#1109) * Add staircase field to sales_logs table * Add staircase question and page * add staircase page to the shared ownership scheme subsection fix file name * Cldc 1539 previous bedrooms (#1108) * add frombeds field * Add previous_bedrooms page and question * add Previous Bedrooms page to the shared ownership subsection * Cldc 1532 about staircasing (#1110) * Add stairboughts and stairowned fields to the database * Add about staircasing page and questions * Add about staircasing page to the shared wnership scheme subsection * Add a space before percent * Cldc 1546 monthly rent (#1111) * Add monthly rent column to sales logs table * Add monthly rent question and page * Add monthly rent page to the shared ownership scheme subsection * Cldc 1535 exchange contracts (#1112) * Add exdate to sales logs table * Add exchange date page and question * Add exchange contracts page to the shared ownership subsection * derive exday, exmonth and exyear, tests and lint * rebase tests * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * Cldc 1545 about the deposit (#1113) * feat: add question(s) without depends_on behaviour * feat: separate ids for diff sections * test: update tests * test: add tests * tests: test tweaks * refactor: linting * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * feat: add question(s) without depends_on behaviour Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * Cldc 1533 is resale (#1118) * feat: add resale question and page * tests: add new tests * test: update previous tests * refactor: linting * refactor: linting * Cldc 1576 buyer prp (#1117) * Add soctenant field to sales logs * Add buyer previous page and question * Add buyer previous page to shared ownership scheme subsection * rebase migrate * rebase too * Cldc 1540 about price (#1121) * add price fields to the sales logs table * Add about proce questions * add about proce pages * Add about price pages to sale information sections * rebase changes * happy new year * Switch the order of sales log sections * Cldc 1540 fixes (#1130) * Update order of pages and remove wrong id's * Add spacing to the hint text * Cldc 1521 living before purchase (#1129) * feat: add new page and question and update db * test: add and update tests * feat: reset db * Only display from beds for social housing (#1131) * Cldc 1544 mortgage amount (#1136) * feat: add sales log seeds * feat: add question and page and update db * tests: add and update tests * Cldc 1540 fixes part two (#1135) * Change about_price_social_housing to about_price_shared_ownership and display it in all shared ownership cases * Change about_price to purchase_price and display it for outright sale * lint * Move exchange contracts date page (#1143) * feat: PO fix and tests (#1144) * feat: PO fix and tests * feat: simmplification * refactor: linting * feat: copy tweak Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com> Co-authored-by: natdeanlewissoftwire <nat.dean-lewis@softwire.com>
2 years ago
proplen { 10 }
Cldc 1440 household situation section (#1132) * feat: add question page and subsection (#1120) * feat: add question page and subsection * refactor: linting * feat: remove schema rows from other branch * feat: slight refactor, fix tag behaviour and add section tests * test: update and add tests * feat: update status behaviour * feat: update subsection status tag * refactor: linting * [CLDC-857] Add household wheelchair check (#1122) * [CLDC-857] Add household wheelchair check * Hide only if answered * Cldc 1497 ever served armed forces (#1124) * feat: add question and page * test: update tests * refactor: linting and slight test updates * test: fix tests * Cldc 1498 still serving armed forces (#1123) * feat: new question and tests * test: update subsection spec * test: update tests * feat: (future) conflict resolving * feat: more conflict resolution * feat: update db field * test: update id * test: updates * Cldc 1488 last accomodation (#1125) * Add postcode fields * Add previous postcode page and questions * Add last accommodation page to household situation subsection * add previous la known to the db * infer correct location fields * styling * Reorder disability questions (#1127) * [CLDC-1487] Add buyer1 previous tenure question (#1133) * use collection_start_year instead of the startdate (#1128) * [CLDC-1487] Add buyer 1 previous tenure Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * feat: fix routing (#1141) * Add last accommodation la question (#1142) * move hint text (#1146) Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com> Co-authored-by: Jack S <113976590+bibblobcode@users.noreply.github.com>
2 years ago
pregyrha { 1 }
pregla { 1 }
pregother { 1 }
pregghb { 1 }
hhregres { 7 }
Cldc 1440 household situation section (#1132) * feat: add question page and subsection (#1120) * feat: add question page and subsection * refactor: linting * feat: remove schema rows from other branch * feat: slight refactor, fix tag behaviour and add section tests * test: update and add tests * feat: update status behaviour * feat: update subsection status tag * refactor: linting * [CLDC-857] Add household wheelchair check (#1122) * [CLDC-857] Add household wheelchair check * Hide only if answered * Cldc 1497 ever served armed forces (#1124) * feat: add question and page * test: update tests * refactor: linting and slight test updates * test: fix tests * Cldc 1498 still serving armed forces (#1123) * feat: new question and tests * test: update subsection spec * test: update tests * feat: (future) conflict resolving * feat: more conflict resolution * feat: update db field * test: update id * test: updates * Cldc 1488 last accomodation (#1125) * Add postcode fields * Add previous postcode page and questions * Add last accommodation page to household situation subsection * add previous la known to the db * infer correct location fields * styling * Reorder disability questions (#1127) * [CLDC-1487] Add buyer1 previous tenure question (#1133) * use collection_start_year instead of the startdate (#1128) * [CLDC-1487] Add buyer 1 previous tenure Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * feat: fix routing (#1141) * Add last accommodation la question (#1142) * move hint text (#1146) Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com> Co-authored-by: Jack S <113976590+bibblobcode@users.noreply.github.com>
2 years ago
ppcodenk { 1 }
prevten { 1 }
previous_la_known { 0 }
relat3 { "C" }
relat4 { "X" }
relat5 { "R" }
relat6 { "R" }
hb { 4 }
mortgageused { 1 }
wchair { 1 }
armedforcesspouse { 5 }
has_mscharge { 1 }
Cldc 1547 leasehold charges (#1134) * Mark subsection as completed if it is not displayed in the tasklist and hide it from the UI * Add sale_information section * add sales information subsections * Cldc 1531 staircasing (#1109) * Add staircase field to sales_logs table * Add staircase question and page * add staircase page to the shared ownership scheme subsection fix file name * Cldc 1539 previous bedrooms (#1108) * add frombeds field * Add previous_bedrooms page and question * add Previous Bedrooms page to the shared ownership subsection * Cldc 1532 about staircasing (#1110) * Add stairboughts and stairowned fields to the database * Add about staircasing page and questions * Add about staircasing page to the shared wnership scheme subsection * Add a space before percent * Cldc 1546 monthly rent (#1111) * Add monthly rent column to sales logs table * Add monthly rent question and page * Add monthly rent page to the shared ownership scheme subsection * Cldc 1535 exchange contracts (#1112) * Add exdate to sales logs table * Add exchange date page and question * Add exchange contracts page to the shared ownership subsection * derive exday, exmonth and exyear, tests and lint * rebase tests * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * Cldc 1545 about the deposit (#1113) * feat: add question(s) without depends_on behaviour * feat: separate ids for diff sections * test: update tests * test: add tests * tests: test tweaks * refactor: linting * Cldc 1538 la nominations (#1115) * Add la nominations column to sales logs table * Add La nominations page and questions * Add la nominations to the shared ownership subsection * Add accidentally removed files * feat: add question(s) without depends_on behaviour Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com> * Cldc 1533 is resale (#1118) * feat: add resale question and page * tests: add new tests * test: update previous tests * refactor: linting * refactor: linting * Cldc 1576 buyer prp (#1117) * Add soctenant field to sales logs * Add buyer previous page and question * Add buyer previous page to shared ownership scheme subsection * rebase migrate * rebase too * Cldc 1540 about price (#1121) * add price fields to the sales logs table * Add about proce questions * add about proce pages * Add about price pages to sale information sections * rebase changes * happy new year * Switch the order of sales log sections * Cldc 1540 fixes (#1130) * Update order of pages and remove wrong id's * Add spacing to the hint text * feat: add page, question, and update db * Cldc 1521 living before purchase (#1129) * feat: add new page and question and update db * test: add and update tests * feat: reset db * feat: infer mscharge if mscharge_known == No * test: add and update tests * feat: add page, question, and update db * feat: infer mscharge if mscharge_known == No * test: add and update tests * feat: update to main * test: update tests * tests: update tests * faet: move mscharge derivation Co-authored-by: Kat <katrina@kosiak.co.uk> Co-authored-by: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com>
2 years ago
mscharge { 100 }
mortlen { 10 }
CLDC-1633 build feature csv download of sales logs (#1568) * create a method on the FormHandler that returns the sales form questions for all years in the order that they appear in the form * update csv email job to accomodate sales log export as well as lettings add to tests to reflec the changes made * write tests to cover the desired functionality of the SalesLogCsvService * create the SalesLogCsvService create a necessary method on the log to enable submission method to be included on the csv derive values for the two halves of previous postcode for export * add relevant links in the UI and pipe everything together in controllers amend organisations controller to have flexibility to download logs of either type add necessary methods to sales log controller, raising shared method to logs controller update routing for amendments and additions extract helper method to build urls for downloading logs within an organisation * correct various linter complaints and tech review suggestions * minor amendment to add old_id and reorder early columns * undo my 'clever' refactor that broke things * refactoring of csv service after some tech review and some UI testing in review app * update tests to include a test of a full export and all values in teh csv * correct minor routing error to ensure correct url is shown and tab selected after requesting csv email * update organisations controller requests spec file to cover new functionality and make a minor amendment to authentication scope in the controller after error found in testing * write request tests for the new functionality in the sales log controller, define authorisation in the controller * minor correction after rubocop's kind suggestion' * various corrections from first pass at PO, tech review, linter, etc * refactor :ordered_sales_questions_for_all_years * first pass at implementing flexible code-based form fixtures for testing * second pass * refactor all tests of :ordered_sales_questions_for_all_years to use new factories * some refactoring in the testing of the csv service * use that fact that params is always available in controllers and don't pass it around, inline some methods calls * correct minor bug to ensure that "Return to logs" link returns to the correct index page * remove reminder comments * write further tests on the manipulation of questions into the csv headers, update factories of form constituents to allow the creation of forms with richer questions * fix linter complaints * minor alterations after rebase to account for changes made on other branches * refactor after code review * tweak fixtures after rebase containing alterations to the factory defaults
2 years ago
pcodenk { 0 }
postcode_full { "SW1A 1AA" }
is_la_inferred { false }
mortgagelender { 5 }
extrabor { 1 }
ethnic_group2 { 17 }
nationalbuy2 { 13 }
buy2living { 3 }
proplen_asked { 1 }
CLDC-3787: Autocomplete address uprn search (#2967) * Prototype * Remove git from dockerfile * UPRN search too * Revert address client and use uprn client * Add address search to lettings too * Updates with lettings logs * Update copy * Move guidance to partial * Fix uprn return * Delete new db file, restore old * Lint * Remove old db file * Lint * Add new db file, remove old * JS lint * Update schema * Add manual entry option * Update derived variables * Comment out old version of find address in 2024 * Remove db column * Add new db columns * Update guidance partial * Add unless to migration * Add migration files to remove and readd * authenticate user * Remove file * Delete migration files * Add search url * Add search url * Fix onConfirm * Add manual entry button instead of change skip link * Revert "Add manual entry button instead of change skip link" This reverts commit 22577c801aca940acfc16caf94d3159071ea8258. * Revert "Revert "Add manual entry button instead of change skip link"" This reverts commit 9f0a2111a58e933a28105e54aba6ca08c2d043b7. * Replace uprn question * Update question copy * Allow changing the address search value * Rename address autocomplete to address search * Add buttons to switch between address questions * Fix controller logic * Enable adding question numbers to page headers * Update skip links * Add js disabled message to select * Alternative way to handle js disabled users * Revert "Alternative way to handle js disabled users" This reverts commit 10da3d61e2f89ec29ef9f9071c63eb99aa2bb482. * Fix typo * Fix address options for address search question * Reuse AddressDataPresenter where appropriate * Lint * Remove uprn selection question tests * Reuse UprnDataPresenter where appropriate * CSV export, exclude address_search * Add address search to sales and lettings factory bots * Exclude old address questions from routing, keep as exported values * lint * Update uprn value * Add address search input boolean and switch between questions * Reword copy, remove "Find" and "Search by" * Align address questions, add question number and question text * Remove old wip depends on * Update some tests * Update migration, move default value from db to model * Update test * Remove binding pry * Lint * Update test * Lint * Update test * Update routes with underscores * Remove debugging * Limit visible logs to user * Add manual address entry selected variable * Change address search min length to 3chars * Remove binding.pry * Update factory bots, manual_address_entry_selected to true for preexisting tests * Update model tests * Update sales model tests excl E-code tests * Update address search request test * Reuse uprn id instead of address_search * Set manual address entry selected as false when creating test logs * Update model test * Update request tests and remove old questions * Add back test * Update services * Update more tests Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com> * Update request tests * update model tests * Also update sales log * Update service csv uprn_selection values to 1 * Add tests for pages and questions * Update test * Update uprn_known * Lint * Add feature test * Update test * Update tests * Remove test * pre-consolidate migration files * Indentation * Controller method improvements * Update question numbers for 2025/26 * Update question numbers tests * consolidate and delete old migration files * undo changes to schema.rb * Update 2025 property information translation files * Update answer options to show singular previously selected result if present * Move buttons to bottom guidance partials * Small improvements, make address search and existing search more similar * Validate entered addresses as within England * Update test * Revert "Validate entered addresses as within England" This reverts commit 2dbfbcc8a5188cde7fb0ac0dcdbc5919eefd6a12. * Add missing button to sales address page * Change error code * Clear invalid options * Edit no results message method * Keep no result logic just change text * Display uprn value with address value * Still show no results message when characters entered is less than 3 rather than nothing * Fix uprn result when query is ambiguous * Reduce min match for address search * Hide no result found message just before results are populated * Prevent changing logs to 2025 with invalid addresses * Correct attribute name * Handle nil * Remove custom error message * Remove unused variables from factory * Update tests, remove address and postcode from old find address * Fix bug clearing uprn from see all answers * Revert "Fix bug clearing uprn from see all answers" This reverts commit a66c47a1abf7a429f25e0a016fedb0b92e92f15c. * Undo changes to validation method * Fix unchanged uprn_selection when clearing or changing uprn * Undo a change * Update bulk upload 2025 * Fix typo * Remove redundant line --------- Co-authored-by: Kat <54268893+kosiakkatrina@users.noreply.github.com> Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com>
1 week ago
after(:build) do |log, evaluator|
if log.saledate >= Time.zone.local(2024, 4, 1)
log.nationality_all_group = 826
log.nationality_all_buyer2_group = 826
CLDC-3787: Autocomplete address uprn search (#2967) * Prototype * Remove git from dockerfile * UPRN search too * Revert address client and use uprn client * Add address search to lettings too * Updates with lettings logs * Update copy * Move guidance to partial * Fix uprn return * Delete new db file, restore old * Lint * Remove old db file * Lint * Add new db file, remove old * JS lint * Update schema * Add manual entry option * Update derived variables * Comment out old version of find address in 2024 * Remove db column * Add new db columns * Update guidance partial * Add unless to migration * Add migration files to remove and readd * authenticate user * Remove file * Delete migration files * Add search url * Add search url * Fix onConfirm * Add manual entry button instead of change skip link * Revert "Add manual entry button instead of change skip link" This reverts commit 22577c801aca940acfc16caf94d3159071ea8258. * Revert "Revert "Add manual entry button instead of change skip link"" This reverts commit 9f0a2111a58e933a28105e54aba6ca08c2d043b7. * Replace uprn question * Update question copy * Allow changing the address search value * Rename address autocomplete to address search * Add buttons to switch between address questions * Fix controller logic * Enable adding question numbers to page headers * Update skip links * Add js disabled message to select * Alternative way to handle js disabled users * Revert "Alternative way to handle js disabled users" This reverts commit 10da3d61e2f89ec29ef9f9071c63eb99aa2bb482. * Fix typo * Fix address options for address search question * Reuse AddressDataPresenter where appropriate * Lint * Remove uprn selection question tests * Reuse UprnDataPresenter where appropriate * CSV export, exclude address_search * Add address search to sales and lettings factory bots * Exclude old address questions from routing, keep as exported values * lint * Update uprn value * Add address search input boolean and switch between questions * Reword copy, remove "Find" and "Search by" * Align address questions, add question number and question text * Remove old wip depends on * Update some tests * Update migration, move default value from db to model * Update test * Remove binding pry * Lint * Update test * Lint * Update test * Update routes with underscores * Remove debugging * Limit visible logs to user * Add manual address entry selected variable * Change address search min length to 3chars * Remove binding.pry * Update factory bots, manual_address_entry_selected to true for preexisting tests * Update model tests * Update sales model tests excl E-code tests * Update address search request test * Reuse uprn id instead of address_search * Set manual address entry selected as false when creating test logs * Update model test * Update request tests and remove old questions * Add back test * Update services * Update more tests Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com> * Update request tests * update model tests * Also update sales log * Update service csv uprn_selection values to 1 * Add tests for pages and questions * Update test * Update uprn_known * Lint * Add feature test * Update test * Update tests * Remove test * pre-consolidate migration files * Indentation * Controller method improvements * Update question numbers for 2025/26 * Update question numbers tests * consolidate and delete old migration files * undo changes to schema.rb * Update 2025 property information translation files * Update answer options to show singular previously selected result if present * Move buttons to bottom guidance partials * Small improvements, make address search and existing search more similar * Validate entered addresses as within England * Update test * Revert "Validate entered addresses as within England" This reverts commit 2dbfbcc8a5188cde7fb0ac0dcdbc5919eefd6a12. * Add missing button to sales address page * Change error code * Clear invalid options * Edit no results message method * Keep no result logic just change text * Display uprn value with address value * Still show no results message when characters entered is less than 3 rather than nothing * Fix uprn result when query is ambiguous * Reduce min match for address search * Hide no result found message just before results are populated * Prevent changing logs to 2025 with invalid addresses * Correct attribute name * Handle nil * Remove custom error message * Remove unused variables from factory * Update tests, remove address and postcode from old find address * Fix bug clearing uprn from see all answers * Revert "Fix bug clearing uprn from see all answers" This reverts commit a66c47a1abf7a429f25e0a016fedb0b92e92f15c. * Undo changes to validation method * Fix unchanged uprn_selection when clearing or changing uprn * Undo a change * Update bulk upload 2025 * Fix typo * Remove redundant line --------- Co-authored-by: Kat <54268893+kosiakkatrina@users.noreply.github.com> Co-authored-by: kosiakkatrina <kosiakkatrina@users.noreply.github.com>
1 week ago
log.uprn = evaluator.uprn || "10033558653"
log.uprn_selection = evaluator.uprn_selection || "10033558653"
end
if log.saledate >= Time.zone.local(2025, 4, 1)
log.relat2 = "X" if log.relat2 == "C"
log.relat3 = "X" if log.relat3 == "C"
log.relat4 = "X" if log.relat4 == "C"
log.relat5 = "X" if log.relat5 == "C"
log.relat6 = "X" if log.relat6 == "C"
end
end
end
trait :with_uprn do
uprn { rand(999_999_999_999).to_s }
uprn_known { 1 }
end
trait :deleted do
status { 4 }
discarded_at { Time.zone.now }
end
CLDC-2810 Send missing addresses template (#1952) * Add missing addresses csv job * Update missing addresses csv service methods * Add rake task * Update the job to send missing town or city templates * Update service to create mising town or city templates * Add send missing town or city csv rake task * Add IDs to the CSVs * Put all log in the same csv * Add issue type column * Write wrong uprn logs to csv * Add mailer methods * Skip uprn issue for specified orgs * Add sales csv rake task * set SKIP_UPRN_ISSUE_ORG_IDS on review apps * test * Update notify template IDs for testing * Initialize service with organisation instead of a hash * Add expiration time to url * Add optional tags and remove LA from csv * Extract log to csv methods * Update casing * Update old IDs in factories * Move constant * Extract some repeating scopes * Pass in organisations to skip instead of using an env var * update template id for sales * Update link expiry time and headers * Lower the threshold for testing * Add issue explanation to the email * Add how to fix * update emails * CLDC-2810 Create all addresses CSV (#1953) * Add rake tasks for creating all addresses CSV * Write headers if logs don't exist, update header names * Rename method * CLDC-2810 Correct addresses from csv (#1957) * Updating importing lettings addresses form csv * Add import_sales_addresses_from_csv rake * Allow correcting addresses from both templates * escape . * Reinfer LA if the postcode hasn't changed * Update labels and email content * Update missing addresses threshold * Remove unused env var
1 year ago
trait :imported do
old_id { Random.hex }
end
trait :ignore_validation_errors do
to_create do |instance|
instance.valid?
instance.errors.clear
instance.save!(validate: false)
end
end
trait :export do
purchid { "123" }
ownershipsch { 2 }
type { 8 }
saledate_today
jointpur { 1 }
beds { 2 }
jointmore { 1 }
noint { 2 }
privacynotice { 1 }
age1_known { 0 }
age1 { 27 }
sex1 { "F" }
national { 18 }
buy1livein { 1 }
relat2 { "P" }
proptype { 1 }
age2_known { 0 }
age2 { 33 }
builtype { 1 }
ethnic { 3 }
ethnic_group { 17 }
sex2 { "X" }
buy2livein { "1" }
ecstat1 { "1" }
ecstat2 { "1" }
hholdcount { "4" }
wheel { 1 }
details_known_3 { 1 }
age3_known { 0 }
age3 { 14 }
details_known_4 { 1 }
age4_known { 0 }
age4 { 18 }
details_known_5 { 1 }
age5_known { 0 }
age5 { 40 }
details_known_6 { 1 }
age6_known { 0 }
age6 { 40 }
income1nk { 0 }
income1 { 10_000 }
inc1mort { 1 }
income2nk { 0 }
income2 { 10_000 }
inc2mort { 1 }
uprn_known { 0 }
address_line1 { "Address line 1" }
town_or_city { "City" }
la_known { 1 }
la { "E09000003" }
savingsnk { 1 }
prevown { 1 }
prevshared { 2 }
sex3 { "F" }
sex4 { "X" }
sex5 { "M" }
sex6 { "X" }
mortgage { 20_000 }
ecstat3 { 9 }
ecstat4 { 3 }
ecstat5 { 2 }
ecstat6 { 1 }
disabled { 1 }
deposit { 80_000 }
value { 110_000 }
value_value_check { 0 }
grant { 10_000 }
hhregres { 7 }
ppcodenk { 1 }
prevten { 1 }
previous_la_known { 0 }
relat3 { "X" }
relat4 { "X" }
relat5 { "R" }
relat6 { "R" }
hb { 4 }
mortgageused { 1 }
wchair { 1 }
armedforcesspouse { 5 }
has_mscharge { 1 }
mscharge { 100 }
mortlen { 10 }
pcodenk { 0 }
postcode_full { "SW1A 1AA" }
is_la_inferred { false }
mortgagelender { 5 }
extrabor { 1 }
ethnic_group2 { 17 }
nationalbuy2 { 13 }
buy2living { 3 }
proplen_asked { 1 }
address_line1_input { "Address line 1" }
postcode_full_input { "SW1A 1AA" }
nationality_all_group { 826 }
nationality_all_buyer2_group { 826 }
uprn { "10033558653" }
uprn_selection { 1 }
end
end
end