* Move single person details if person 2 details are missing
* Allow reimporting details for any single missing person
* Reimport multiple missing person details, skip logs with no extra person details
* Skip update if record does not have hhmemb value
* Refactor
* Rebase change
* Extract method
* Confirm scharge, pscharge and supcharge soft validations for completed logs
* This test seems flaky, likely because of the order, so reducing #of logs
* feat: allow missing day/month/year values if CompletionDate exists as we don't always receive these from old core
* feat: make safe string as decimal nil safer too
* feat: add test
* Only blank tenancy lenght when it is invalid for tenancy type
* Update spec/services/imports/lettings_logs_import_service_spec.rb
Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com>
---------
Co-authored-by: natdeanlewissoftwire <94526761+natdeanlewissoftwire@users.noreply.github.com>
* Add generate_missing_answers_report task and method
* Create example report
* change task description
* refactor
* Report old form id instead of old id
* feat: ensure offered is an integer (decimal 0 was triggering validation errors)
* feat: allow decimals but clear when not integer equivalent as per new requirements
* Set user to unassigned in lettings logs if the legacy user exists but belongs to a different organisation
* Set user to unassigned in sales logs if the legacy user exists but belongs to a different organisation
* Lint
* Add imported_at columns
* Set imported at date for lettings logs
* Set imported at for sales logs
* Export logs migrated since the previous partial export
* Rename column
* rebase changes
* Re-add test
* Add unassigned user if we can't find a legacy user for a log
* Add generate_unassigned_logs_report
* Log user email address if validation fails on user import
* feat: make offered unsafe as 0.00 is an expected value
* feat: add correct refused options for sex and relat questions
* refactor: lint
* feat: use safe_string_as_decimal
* Make has_other_client_group a mandatory question
* Add a rake task to update has_other_client_group
* test and lint
* Set has_other_client group on import
* Add import report service
* Call ImportReportService from rake task
* Move generate_logs_report to import service
* Add organisations without active data coordinators to the report
* pluralize method names
* update suffixes
* some minor refactoring
remove methods from child class that replicate methods on the parent class
tidy up check for nil
remove gubbins and inline method body given only used once
* update import services for lettings and sales to import creation method
write tests to cover this
* create sales log field import service and associated spec file, with methods and tests for importing the creation method of logs that have already been imported
* update lettings log field import service and related spec to allow importing creation method of logs
* use the methods dynamically created by active record in all relevant places, removing obsolete methods in teh process.
various tests tweaked to suppor this change.
rake task from another ticket folded into this ticket to prevent merge conflicts
* rename method for ruby conventions
* update PR for altered spec
upload id now decided to be a better indicator of bulk upload status, import service amended accordingly
tests updated in line with this
* update field import services in line with import services to use upload id rather than upload method as the source of truth for how a log was created
* slight refactor to reduce nesting and dodge linter complaints
* minor amendment to log creator spec in bulk upload to use enum dynamic methods