Fix copy operation for stock orders

Stock orders have the supplier_id set to zero, which will be ignored
in the url-method by rails. Only use the order_id to fix this.
This commit is contained in:
Patrick Gansterer 2019-11-11 11:32:23 +01:00
parent 3a4519757e
commit d73c206e29
3 changed files with 11 additions and 4 deletions

View file

@ -60,8 +60,15 @@ class OrdersController < ApplicationController
# Page to create a new order.
def new
@order = Order.new(supplier_id: params[:supplier_id]).init_dates
@order.article_ids = Order.find(params[:order_id]).article_ids if params[:order_id]
if params[:order_id]
old_order = Order.find(params[:order_id])
@order = Order.new(supplier_id: old_order.supplier_id).init_dates
@order.article_ids = old_order.article_ids
else
@order = Order.new(supplier_id: params[:supplier_id]).init_dates
end
rescue => error
redirect_to orders_url, alert: t('errors.general_msg', msg: error.message)
end
# Save a new order.

View file

@ -17,5 +17,5 @@
%td= format_time(order.ends)
%td= t(order.state, scope: 'orders.state')
%td
= link_to t('ui.copy'), new_order_path(order_id: order, supplier_id: order.supplier), class: 'btn btn-small'
= link_to t('ui.copy'), new_order_path(order_id: order), class: 'btn btn-small'
= link_to t('ui.show'), order, class: 'btn btn-small'

View file

@ -60,7 +60,7 @@
= receive_button order, class: 'btn-small'
%td
= link_to t('ui.copy'), new_order_path(order_id: order, supplier_id: order.supplier), class: 'btn btn-small'
= link_to t('ui.copy'), new_order_path(order_id: order), class: 'btn btn-small'
= link_to t('ui.show'), order, class: 'btn btn-small'
= link_to t('ui.delete'), order, data: {confirm: t('.confirm_delete')}, method: :delete,
class: 'btn btn-small btn-danger'