diff --git a/app/controllers/bulk_upload_lettings_soft_validations_check_controller.rb b/app/controllers/bulk_upload_lettings_soft_validations_check_controller.rb index a70af3c4b..faaf60302 100644 --- a/app/controllers/bulk_upload_lettings_soft_validations_check_controller.rb +++ b/app/controllers/bulk_upload_lettings_soft_validations_check_controller.rb @@ -36,11 +36,11 @@ private def form @form ||= case params[:page] when "confirm-soft-errors" - Forms::BulkUploadLettingsSoftValidationsCheck::ConfirmSoftErrors.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::ConfirmSoftErrors.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "lettings")) when "chosen" - Forms::BulkUploadLettingsSoftValidationsCheck::Chosen.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::Chosen.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "lettings")) when "confirm" - Forms::BulkUploadLettingsSoftValidationsCheck::Confirm.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::Confirm.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "lettings")) else raise "invalid form" end diff --git a/app/controllers/bulk_upload_sales_soft_validations_check_controller.rb b/app/controllers/bulk_upload_sales_soft_validations_check_controller.rb index 5b71b2c40..0795ad81e 100644 --- a/app/controllers/bulk_upload_sales_soft_validations_check_controller.rb +++ b/app/controllers/bulk_upload_sales_soft_validations_check_controller.rb @@ -36,11 +36,11 @@ private def form @form ||= case params[:page] when "confirm-soft-errors" - Forms::BulkUploadSalesSoftValidationsCheck::ConfirmSoftErrors.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::ConfirmSoftErrors.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "sales")) when "chosen" - Forms::BulkUploadSalesSoftValidationsCheck::Chosen.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::Chosen.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "sales")) when "confirm" - Forms::BulkUploadSalesSoftValidationsCheck::Confirm.new(form_params.merge(bulk_upload: @bulk_upload)) + Forms::BulkUploadSoftValidationsCheck::Confirm.new(form_params.merge(bulk_upload: @bulk_upload, log_type: "sales")) else raise "invalid form" end diff --git a/app/models/forms/bulk_upload_lettings_soft_validations_check/confirm.rb b/app/models/forms/bulk_upload_lettings_soft_validations_check/confirm.rb deleted file mode 100644 index aba75791e..000000000 --- a/app/models/forms/bulk_upload_lettings_soft_validations_check/confirm.rb +++ /dev/null @@ -1,47 +0,0 @@ -module Forms - module BulkUploadLettingsSoftValidationsCheck - class Confirm - include ActiveModel::Model - include ActiveModel::Attributes - include Rails.application.routes.url_helpers - - attribute :bulk_upload - - def view_path - "bulk_upload_lettings_soft_validations_check/confirm" - end - - def back_path - page_bulk_upload_lettings_soft_validations_check_path(bulk_upload, page: "confirm-soft-errors") - end - - def next_path - lettings_logs_path - end - - def save! - ApplicationRecord.transaction do - processor = BulkUpload::Processor.new(bulk_upload:) - processor.approve_and_confirm_soft_validations - - bulk_upload.update!(choice: "bulk-confirm-soft-validations") - end - - true - end - - def preflight_valid? - bulk_upload.choice != "bulk-confirm-soft-validations" && bulk_upload.choice != "create-fix-inline" - end - - def preflight_redirect - case bulk_upload.choice - when "bulk-confirm-soft-validations" - page_bulk_upload_lettings_soft_validations_check_path(bulk_upload, :chosen) - when "create-fix-inline" - page_bulk_upload_lettings_resume_path(bulk_upload, :chosen) - end - end - end - end -end diff --git a/app/models/forms/bulk_upload_sales_soft_validations_check/chosen.rb b/app/models/forms/bulk_upload_sales_soft_validations_check/chosen.rb deleted file mode 100644 index 2286d3b39..000000000 --- a/app/models/forms/bulk_upload_sales_soft_validations_check/chosen.rb +++ /dev/null @@ -1,31 +0,0 @@ -module Forms - module BulkUploadSalesSoftValidationsCheck - class Chosen - include ActiveModel::Model - include ActiveModel::Attributes - include Rails.application.routes.url_helpers - - attribute :bulk_upload - - def view_path - "bulk_upload_sales_soft_validations_check/chosen" - end - - def back_path - sales_logs_path - end - - def next_path - sales_logs_path - end - - def save! - true - end - - def preflight_valid? - true - end - end - end -end diff --git a/app/models/forms/bulk_upload_sales_soft_validations_check/confirm_soft_errors.rb b/app/models/forms/bulk_upload_sales_soft_validations_check/confirm_soft_errors.rb deleted file mode 100644 index 041647cf0..000000000 --- a/app/models/forms/bulk_upload_sales_soft_validations_check/confirm_soft_errors.rb +++ /dev/null @@ -1,53 +0,0 @@ -module Forms - module BulkUploadSalesSoftValidationsCheck - class ConfirmSoftErrors - include ActiveModel::Model - include ActiveModel::Attributes - include Rails.application.routes.url_helpers - - attribute :bulk_upload - attribute :confirm_soft_errors, :string - - validates :confirm_soft_errors, presence: true - - def options - [ - OpenStruct.new(id: "yes", name: "Yes, these fields are correct"), - OpenStruct.new(id: "no", name: "No, there are errors"), - ] - end - - def view_path - "bulk_upload_sales_soft_validations_check/confirm_soft_errors" - end - - def next_path - case confirm_soft_errors - when "no" - page_bulk_upload_sales_resume_path(bulk_upload, page: "fix-choice", soft_errors_only: true) - when "yes" - page_bulk_upload_sales_soft_validations_check_path(bulk_upload, page: "confirm") - else - raise "invalid choice" - end - end - - def save! - true - end - - def preflight_valid? - bulk_upload.choice != "bulk-confirm-soft-validations" && bulk_upload.choice != "create-fix-inline" - end - - def preflight_redirect - case bulk_upload.choice - when "bulk-confirm-soft-validations" - page_bulk_upload_sales_soft_validations_check_path(bulk_upload, :chosen) - when "create-fix-inline" - page_bulk_upload_sales_resume_path(bulk_upload, :chosen) - end - end - end - end -end diff --git a/app/models/forms/bulk_upload_lettings_soft_validations_check/chosen.rb b/app/models/forms/bulk_upload_soft_validations_check/chosen.rb similarity index 65% rename from app/models/forms/bulk_upload_lettings_soft_validations_check/chosen.rb rename to app/models/forms/bulk_upload_soft_validations_check/chosen.rb index b3091bc51..359eea9dd 100644 --- a/app/models/forms/bulk_upload_lettings_soft_validations_check/chosen.rb +++ b/app/models/forms/bulk_upload_soft_validations_check/chosen.rb @@ -1,22 +1,23 @@ module Forms - module BulkUploadLettingsSoftValidationsCheck + module BulkUploadSoftValidationsCheck class Chosen include ActiveModel::Model include ActiveModel::Attributes include Rails.application.routes.url_helpers + attribute :log_type attribute :bulk_upload def view_path - "bulk_upload_lettings_soft_validations_check/chosen" + "bulk_upload_#{log_type}_soft_validations_check/chosen" end def back_path - lettings_logs_path + send("#{log_type}_logs_path") end def next_path - lettings_logs_path + send("#{log_type}_logs_path") end def save! diff --git a/app/models/forms/bulk_upload_sales_soft_validations_check/confirm.rb b/app/models/forms/bulk_upload_soft_validations_check/confirm.rb similarity index 65% rename from app/models/forms/bulk_upload_sales_soft_validations_check/confirm.rb rename to app/models/forms/bulk_upload_soft_validations_check/confirm.rb index 894f55123..8700937cb 100644 --- a/app/models/forms/bulk_upload_sales_soft_validations_check/confirm.rb +++ b/app/models/forms/bulk_upload_soft_validations_check/confirm.rb @@ -1,22 +1,23 @@ module Forms - module BulkUploadSalesSoftValidationsCheck + module BulkUploadSoftValidationsCheck class Confirm include ActiveModel::Model include ActiveModel::Attributes include Rails.application.routes.url_helpers + attribute :log_type attribute :bulk_upload def view_path - "bulk_upload_sales_soft_validations_check/confirm" + "bulk_upload_#{log_type}_soft_validations_check/confirm" end def back_path - page_bulk_upload_sales_soft_validations_check_path(bulk_upload, page: "confirm-soft-errors") + send("page_bulk_upload_#{log_type}_soft_validations_check_path", bulk_upload, page: "confirm-soft-errors") end def next_path - sales_logs_path + send("#{log_type}_logs_path") end def save! @@ -37,9 +38,9 @@ module Forms def preflight_redirect case bulk_upload.choice when "bulk-confirm-soft-validations" - page_bulk_upload_sales_soft_validations_check_path(bulk_upload, :chosen) + send("page_bulk_upload_#{log_type}_soft_validations_check_path", bulk_upload, :chosen) when "create-fix-inline" - page_bulk_upload_sales_resume_path(bulk_upload, :chosen) + send("page_bulk_upload_#{log_type}_resume_path", bulk_upload, :chosen) end end end diff --git a/app/models/forms/bulk_upload_lettings_soft_validations_check/confirm_soft_errors.rb b/app/models/forms/bulk_upload_soft_validations_check/confirm_soft_errors.rb similarity index 65% rename from app/models/forms/bulk_upload_lettings_soft_validations_check/confirm_soft_errors.rb rename to app/models/forms/bulk_upload_soft_validations_check/confirm_soft_errors.rb index 34b4b97f3..aeb072152 100644 --- a/app/models/forms/bulk_upload_lettings_soft_validations_check/confirm_soft_errors.rb +++ b/app/models/forms/bulk_upload_soft_validations_check/confirm_soft_errors.rb @@ -1,10 +1,11 @@ module Forms - module BulkUploadLettingsSoftValidationsCheck + module BulkUploadSoftValidationsCheck class ConfirmSoftErrors include ActiveModel::Model include ActiveModel::Attributes include Rails.application.routes.url_helpers + attribute :log_type attribute :bulk_upload attribute :confirm_soft_errors, :string @@ -18,15 +19,15 @@ module Forms end def view_path - "bulk_upload_lettings_soft_validations_check/confirm_soft_errors" + "bulk_upload_#{log_type}_soft_validations_check/confirm_soft_errors" end def next_path case confirm_soft_errors when "no" - page_bulk_upload_lettings_resume_path(bulk_upload, page: "fix-choice", soft_errors_only: true) + send("page_bulk_upload_#{log_type}_resume_path", bulk_upload, page: "fix-choice", soft_errors_only: true) when "yes" - page_bulk_upload_lettings_soft_validations_check_path(bulk_upload, page: "confirm") + send("page_bulk_upload_#{log_type}_soft_validations_check_path", bulk_upload, page: "confirm") else raise "invalid choice" end @@ -43,9 +44,9 @@ module Forms def preflight_redirect case bulk_upload.choice when "bulk-confirm-soft-validations" - page_bulk_upload_lettings_soft_validations_check_path(bulk_upload, :chosen) + send("page_bulk_upload_#{log_type}_soft_validations_check_path", bulk_upload, :chosen) when "create-fix-inline" - page_bulk_upload_lettings_resume_path(bulk_upload, :chosen) + send("page_bulk_upload_#{log_type}_resume_path", bulk_upload, :chosen) end end end diff --git a/config/locales/en.yml b/config/locales/en.yml index cd2cada1b..97a6a4bff 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -80,11 +80,7 @@ en: choice: blank: "Select how you would like to fix these errors." inclusion: "You must select one of the following options for how you would like to fix these errors." - forms/bulk_upload_lettings_soft_validations_check/confirm_soft_errors: - attributes: - confirm_soft_errors: - blank: "You must select if there are errors in these fields." - forms/bulk_upload_sales_soft_validations_check/confirm_soft_errors: + forms/bulk_upload_soft_validations_check/confirm_soft_errors: attributes: confirm_soft_errors: blank: "You must select if there are errors in these fields."