Browse Source

Add status tags

pull/2653/head
Manny Dinssa 2 years ago
parent
commit
e5a7646ac3
  1. 2
      app/components/bulk_upload_summary_component.rb
  2. 4
      app/frontend/styles/_tag.scss
  3. 16
      app/helpers/tag_helper.rb
  4. 29
      app/models/bulk_upload.rb

2
app/components/bulk_upload_summary_component.rb

@ -8,7 +8,7 @@ class BulkUploadSummaryComponent < ViewComponent::Base
end
def upload_status
helpers.status_tag("in_progress")
helpers.status_tag(bulk_upload.status, ["app-tag--small govuk-!-font-weight-regular no-max-width"])
end
def setup_errors_count

4
app/frontend/styles/_tag.scss

@ -5,3 +5,7 @@
padding-bottom: 2px;
padding-left: 6px;
}
.no-max-width {
max-width: none;
}

16
app/helpers/tag_helper.rb

@ -19,6 +19,14 @@ module TagHelper
request_merged: "Merged",
ready_to_merge: "Ready to merge",
processing: "Processing",
blank_template: "Blank template",
wrong_template: "Wrong template used",
important_errors: "Errors on important questions in CSV",
critical_errors: "Critical errors in CSV",
potential_errors: "Potential errors in CSV",
logs_uploaded_with_errors: "Logs uploaded with errors",
errors_fixed_in_service: "Errors fixed on site",
logs_uploaded_no_errors: "Logs uploaded with no errors",
}.freeze
COLOUR = {
@ -39,6 +47,14 @@ module TagHelper
request_merged: "green",
ready_to_merge: "blue",
processing: "yellow",
blank_template: "red",
wrong_template: "red",
important_errors: "red",
critical_errors: "red",
potential_errors: "red",
logs_uploaded_with_errors: "blue",
errors_fixed_in_service: "green",
logs_uploaded_no_errors: "green",
}.freeze
def status_tag(status, classes = [])

29
app/models/bulk_upload.rb

@ -2,6 +2,17 @@ class BulkUpload < ApplicationRecord
enum log_type: { lettings: "lettings", sales: "sales" }
enum rent_type_fix_status: { not_applied: "not_applied", applied: "applied", not_needed: "not_needed" }
enum status: {
blank_template: 0,
wrong_template: 1,
important_errors: 2,
critical_errors: 3,
potential_errors: 4,
logs_uploaded_with_errors: 5,
errors_fixed_in_service: 6,
logs_uploaded_no_errors: 7,
}
belongs_to :user
has_many :bulk_upload_errors, dependent: :destroy
@ -39,6 +50,24 @@ class BulkUpload < ApplicationRecord
!incomplete_logs.exists?
end
def status
return :logs_uploaded_no_errors if bulk_upload_errors.none?
if logs.exists?
return :errors_fixed_in_service if completed? && bulk_upload_errors.any?
return :logs_uploaded_with_errors if bulk_upload_errors.any?
end
case bulk_upload_errors.map(&:category).uniq
when ["setup"]
:important_errors
when ["soft_validations"]
:potential_errors
else
:critical_errors
end
end
def year_combo
"#{year}/#{year - 2000 + 1}"
end

Loading…
Cancel
Save