Skip to content

Commit

Permalink
Merge pull request #11732 from yasirazgar/11612_keep_data_range_reports
Browse files Browse the repository at this point in the history
Maintain date range values in the report forms
  • Loading branch information
drummer83 authored Nov 21, 2023
2 parents a30c000 + 72089d8 commit 40f5fad
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 3 deletions.
7 changes: 5 additions & 2 deletions app/views/admin/reports/_date_range_form.html.haml
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
-# Field used for ransack search. This date range is mostly used for Spree::Order
-# so default field is 'completed_at'
- field ||= 'completed_at'
- start_date ||= params[:q].try(:[], :completed_at_gt)
- end_date ||= params[:q].try(:[], :completed_at_lt)

.row.date-range-filter
.alpha.two.columns= label_tag nil, t(:date_range)
.omega.fourteen.columns
= f.text_field "#{field}_gt", :class => 'datetimepicker datepicker-from', :placeholder => t(:start), data: { controller: "flatpickr", "flatpickr-enable-time-value": true, "flatpickr-default-date-value": "startOfDay" }
= f.text_field "#{field}_gt", :class => 'datetimepicker datepicker-from', :placeholder => t(:start), data: { controller: "flatpickr", "flatpickr-enable-time-value": true, "flatpickr-default-date-value": "startOfDay" }, value: start_date
%span.range-divider
%i.icon-arrow-right
= f.text_field "#{field}_lt", :class => 'datetimepicker datepicker-to', :placeholder => t(:stop), data: { controller: "flatpickr", "flatpickr-enable-time-value": true, "flatpickr-default-date-value": "endOfDay" }
= f.text_field "#{field}_lt", :class => 'datetimepicker datepicker-to', :placeholder => t(:stop), data: { controller: "flatpickr", "flatpickr-enable-time-value": true, "flatpickr-default-date-value": "endOfDay" }, value: end_date
3 changes: 2 additions & 1 deletion app/views/admin/reports/filters/_packing.html.haml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
= render partial: 'admin/reports/date_range_form', locals: { f: f, field: 'order_completed_at' }
= render partial: 'admin/reports/date_range_form',
locals: { f: f, field: 'order_completed_at', start_date: params[:q].try(:[], :order_completed_at_gt), end_date: params[:q].try(:[], :order_completed_at_lt) }

.row
.alpha.two.columns= label_tag nil, t(:report_hubs)
Expand Down
12 changes: 12 additions & 0 deletions spec/system/admin/reports/packing_report_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,9 @@
"Quantity", "TempControlled?"].map(&:upcase)
])
expect(page).to have_selector 'table.report__table tbody tr', count: 5 # Totals row/order

# date range is kept after form submission
check_prefilled_dates
end

it "sorts alphabetically" do
Expand All @@ -84,6 +87,9 @@
order2.bill_address.lastname,
""
])

# date range is kept after form submission
check_prefilled_dates
end
end

Expand All @@ -106,6 +112,9 @@
])

expect(all('table.report__table tbody tr').count).to eq(3) # Totals row per supplier

# date range is kept after form submission
check_prefilled_dates
end
end
end
Expand Down Expand Up @@ -144,6 +153,9 @@
find("button[type='submit']").click
expect(page).to have_content li1.product.name
expect(page).to have_content li2.product.name

# date range is kept after form submission
check_prefilled_dates
end
end
end
Expand Down

0 comments on commit 40f5fad

Please sign in to comment.