add specs
This commit is contained in:
parent
e902aa0d5a
commit
45db0575b1
46 changed files with 714 additions and 238 deletions
44
app/controllers/order_invoices_controller_base.rb
Normal file
44
app/controllers/order_invoices_controller_base.rb
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
class OrderInvoicesControllerBase < ApplicationController
|
||||
before_action :authenticate_finance
|
||||
|
||||
def select_sepa_sequence_type
|
||||
@invoice = invoice_class.find(params[:id])
|
||||
return unless params[:sepa_sequence_type]
|
||||
|
||||
@group_order = set_related_group_order(@invoice)
|
||||
@multi_group_order = set_related_group_order(@invoice)
|
||||
|
||||
@invoice.sepa_sequence_type = params[:sepa_sequence_type]
|
||||
save_and_respond(@invoice)
|
||||
end
|
||||
|
||||
def toggle_paid
|
||||
@invoice = invoice_class.find(params[:id])
|
||||
@invoice.paid = !@invoice.paid
|
||||
save_and_respond(@invoice)
|
||||
end
|
||||
|
||||
def toggle_sepa_downloaded
|
||||
@invoice = invoice_class.find(params[:id])
|
||||
@invoice.sepa_downloaded = !@invoice.sepa_downloaded
|
||||
save_and_respond(@invoice)
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def save_and_respond(record)
|
||||
if record.save!
|
||||
respond_to { |format| format.js }
|
||||
else
|
||||
respond_to { |format| format.json { render json: record.errors, status: :unprocessable_entity } }
|
||||
end
|
||||
end
|
||||
|
||||
def invoice_class
|
||||
raise NotImplementedError
|
||||
end
|
||||
|
||||
def set_related_group_order(invoice)
|
||||
raise NotImplementedError
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue