diff --git a/app/models/bulk_upload.rb b/app/models/bulk_upload.rb index ed1e9ab21..5e6f1f9e5 100644 --- a/app/models/bulk_upload.rb +++ b/app/models/bulk_upload.rb @@ -72,6 +72,21 @@ class BulkUpload < ApplicationRecord end end + def unpend_and_confirm_soft_validations + logs.find_each do |log| + log.skip_update_status = true + log.status = log.status_cache + log.retirement_value_check = 0 + log.pregnancy_value_check = 0 + log.major_repairs_date_value_check = 0 + log.void_date_value_check = 0 + log.rent_value_check = 0 + log.net_income_value_check = 0 + log.carehome_charges_value_check = 0 + log.save! + end + end + private def generate_identifier diff --git a/app/models/forms/bulk_upload_lettings_data_check/confirm.rb b/app/models/forms/bulk_upload_lettings_data_check/confirm.rb index f777ce849..18e12db4a 100644 --- a/app/models/forms/bulk_upload_lettings_data_check/confirm.rb +++ b/app/models/forms/bulk_upload_lettings_data_check/confirm.rb @@ -16,7 +16,14 @@ module Forms end def next_path - page_bulk_upload_lettings_resume_path(bulk_upload, page: "fix-choice") + resume_bulk_upload_lettings_result_path(bulk_upload) + end + + def save! + processor = BulkUpload::Processor.new(bulk_upload:) + processor.approve_and_confirm_soft_validations + + true end end end diff --git a/app/services/bulk_upload/lettings/log_creator.rb b/app/services/bulk_upload/lettings/log_creator.rb index b227167ad..721ccdcd6 100644 --- a/app/services/bulk_upload/lettings/log_creator.rb +++ b/app/services/bulk_upload/lettings/log_creator.rb @@ -19,17 +19,6 @@ class BulkUpload::Lettings::LogCreator row_parser.log.status = "pending" row_parser.log.status_cache = row_parser.log.calculate_status - # confirm soft validations - if @confirm_soft_validations - row_parser.log.retirement_value_check = 0 - row_parser.log.pregnancy_value_check = 0 - row_parser.log.major_repairs_date_value_check = 0 - row_parser.log.void_date_value_check = 0 - row_parser.log.rent_value_check = 0 - row_parser.log.net_income_value_check = 0 - row_parser.log.carehome_charges_value_check = 0 - end - begin row_parser.log.save! rescue StandardError => e diff --git a/app/services/bulk_upload/processor.rb b/app/services/bulk_upload/processor.rb index a77a68de9..6b097c067 100644 --- a/app/services/bulk_upload/processor.rb +++ b/app/services/bulk_upload/processor.rb @@ -40,6 +40,10 @@ class BulkUpload::Processor bulk_upload.unpend end + def approve_and_confirm_soft_validations + bulk_upload.unpend_and_confirm_soft_validations + end + private def send_how_fix_upload_mail diff --git a/spec/services/bulk_upload/lettings/log_creator_spec.rb b/spec/services/bulk_upload/lettings/log_creator_spec.rb index 12e2c26e5..b1b9213d0 100644 --- a/spec/services/bulk_upload/lettings/log_creator_spec.rb +++ b/spec/services/bulk_upload/lettings/log_creator_spec.rb @@ -164,30 +164,6 @@ RSpec.describe BulkUpload::Lettings::LogCreator do service.call expect(LettingsLog.last.status).to eql("pending") end - - context "when confirming soft validations" do - subject(:service) { described_class.new(bulk_upload:, path:, confirm_soft_validations: true) } - - it "sets unanswered soft validations to yes" do - service.call - - log = LettingsLog.last - expect(log.age1).to be(22) - expect(log.ecstat1).to be(5) - expect(log.retirement_value_check).to be(0) - end - end - - context "when not confirming soft validations" do - it "does not set unanswered soft validations" do - service.call - - log = LettingsLog.last - expect(log.age1).to be(22) - expect(log.ecstat1).to be(5) - expect(log.retirement_value_check).to be(nil) - end - end end context "when valid csv with existing log" do