Merge pull request #9390 from binarygit/feature/update-orders-table

Feature/update orders table
This commit is contained in:
Rachel Arnould
2022-08-02 10:10:03 +02:00
committed by GitHub
6 changed files with 21 additions and 13 deletions

View File

@@ -4,6 +4,8 @@ module Spree
class OrdersController < ::BaseController
include OrderCyclesHelper
include Rails.application.routes.url_helpers
include CablecarResponses
layout 'darkswarm'
@@ -99,7 +101,8 @@ module Spree
else
flash[:error] = I18n.t(:orders_could_not_cancel)
end
redirect_to request.referer || main_app.order_path(@order)
render status: :found,
operations: cable_car.redirect_to(url: request.referer || main_app.order_path(@order))
end
private

View File

@@ -11,8 +11,7 @@
%th.order7.show-for-large-up.text-right= t('.cancel')
%tbody.transaction-group{"ng-repeat" => "order in Orders.changeable", "ng-class-odd"=>"'odd'", "ng-class-even"=>"'even'"}
%tr.order-row
%td.order1
%a{"ng-href" => "{{::order.path}}", "ng-bind" => "::order.number"}
%td.order1{"ng-bind" => "::order.number"}
%td.order2
%a{"ng-href" => "{{::Orders.shopsByID[order.shop_id].hash}}#{main_app.shop_path}", "ng-bind" => "::Orders.shopsByID[order.shop_id].name"}
%td.order3.show-for-large-up{"ng-bind" => "::order.changes_allowed_until"}

View File

@@ -8,16 +8,16 @@
%th.order4.show-for-large-up= t('.items')
%th.order5.text-right= t('.total')
%th.order6.text-right.show-for-large-up= t('.paid?')
%th.order7.text-right= t('.view')
%th.order7.text-right= t('.status')
%tbody.transaction-group{"ng-repeat" => "order in Orders.all | filter:{changes_allowed:false} as pastOrders", "ng-class-odd"=>"'odd'", "ng-class-even"=>"'even'"}
%tr.order-row
%td.order1
%a{"ng-href" => "{{::order.path}}", "ng-bind" => "::order.number"}
%td.order1{"ng-bind" => "::order.number"}
%td.order2
%a{"ng-href" => "{{::Orders.shopsByID[order.shop_id].hash}}#{main_app.shop_path}", "ng-bind" => "::Orders.shopsByID[order.shop_id].name"}
%td.order3.show-for-large-up{"ng-bind" => "::order.completed_at"}
%td.order4.show-for-large-up{"ng-bind" => "::order.item_count"}
%td.order5.text-right{"ng-class" => "{'debit': order.payment_state != 'paid', 'credit': order.payment_state == 'paid'}","ng-bind" => "::order.total | localizeCurrency"}
%td.order6.text-right.show-for-large-up{"ng-class" => "{'debit': order.payment_state != 'paid', 'credit': order.payment_state == 'paid'}", "ng-bind" => "::(order.payment_state == 'paid' ? 'say_yes' : 'say_no') | t"}
%td.order7.text-right
%a{"ng-href" => "{{::order.path}}" }= t('.view')
%td.order7.text-right{ "ng-switch" => "::order.state" }
%a{ "ng-switch-when" => "complete", "ng-href" => "{{::order.path}}" }= t('.completed')
%span{ "ng-switch-when" => "canceled" }= t('.cancelled')

View File

@@ -4226,7 +4226,9 @@ See the %{link} to find out more about %{sitename}'s features and to start using
items: Items
total: Total
paid?: Paid?
view: View
status: Status
completed: Completed
cancelled: Cancelled
saved_cards:
default?: Default?
delete?: Delete?

View File

@@ -457,7 +457,9 @@ describe Spree::OrdersController, type: :controller do
context "when the order is not yet complete" do
it "responds with forbidden" do
spree_put :cancel, params
expect(response.status).to redirect_to order_path(order)
expect(response).to have_http_status(:found)
expect(response.body).to match(order_path(order)).and match("redirect")
expect(flash[:error]).to eq I18n.t(:orders_could_not_cancel)
end
end
@@ -474,7 +476,9 @@ describe Spree::OrdersController, type: :controller do
it "responds with success" do
spree_put :cancel, params
expect(response.status).to redirect_to order_path(order)
expect(response).to have_http_status(:found)
expect(response.body).to match(order_path(order)).and match("redirect")
expect(flash[:success]).to eq I18n.t(:orders_your_order_has_been_cancelled)
end
end

View File

@@ -93,8 +93,8 @@ describe '
visit '/account'
expect(page).to have_content I18n.t('spree.users.orders.open_orders')
expect(page).to have_link d1o1.number, href: order_path(d1o1)
expect(page).to have_link d1o2.number, href: order_path(d1o2)
expect(page).to have_link 'Edit', href: order_path(d1o1)
expect(page).to have_link 'Edit', href: order_path(d1o2)
expect(page).to have_link(distributor1.name,
href: "#{distributor1.permalink}/shop", count: 2)
expect(page).to have_link I18n.t('spree.users.open_orders.cancel'),