From c015b2066fc2817e4e072a49171d3b09b51eacf9 Mon Sep 17 00:00:00 2001 From: cyrillefr Date: Mon, 20 Feb 2023 21:41:58 +0100 Subject: [PATCH] Sort correctly in Bulk Order Managment Converting date to utc + iso8601 format is sufficient to ensure proper sorting. --- app/serializers/api/admin/order_serializer.rb | 7 ++++++- app/views/spree/admin/orders/bulk_management.html.haml | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/serializers/api/admin/order_serializer.rb b/app/serializers/api/admin/order_serializer.rb index c13d22240b..49df02bf89 100644 --- a/app/serializers/api/admin/order_serializer.rb +++ b/app/serializers/api/admin/order_serializer.rb @@ -3,7 +3,8 @@ module Api module Admin class OrderSerializer < ActiveModel::Serializer - attributes :id, :number, :user_id, :full_name, :email, :phone, :completed_at, :display_total, + attributes :id, :number, :user_id, :full_name, :email, :phone, :completed_at, + :completed_at_utc_iso8601, :display_total, :edit_path, :state, :payment_state, :shipment_state, :payments_path, :ready_to_ship, :ready_to_capture, :created_at, :distributor_name, :special_instructions, :display_outstanding_balance, @@ -73,6 +74,10 @@ module Api object.line_items.count end + def completed_at_utc_iso8601 + object.completed_at.blank? ? "" : object.completed_at.utc.iso8601 + end + private def spree_routes_helper diff --git a/app/views/spree/admin/orders/bulk_management.html.haml b/app/views/spree/admin/orders/bulk_management.html.haml index 099f8e3bf9..2c3090a17c 100644 --- a/app/views/spree/admin/orders/bulk_management.html.haml +++ b/app/views/spree/admin/orders/bulk_management.html.haml @@ -138,7 +138,7 @@ %a{ :href => '', 'ng-click' => "sorting.toggle('order.phone')" } = t("admin.phone") %th.date{ 'ng-show' => 'columns.order_date.visible' } - %a{ :href => '', 'ng-click' => "sorting.toggle('order.completed_at')" } + %a{ :href => '', 'ng-click' => "sorting.toggle('order.completed_at_utc_iso8601')" } = t("admin.orders.bulk_management.order_date") %th.producer{ 'ng-show' => 'columns.producer.visible' } %a{ :href => '', 'ng-click' => "sorting.toggle('supplier.name')" }