added endpoint for get cancelled invoices

This commit is contained in:
Oleg Hasjanov 2021-09-03 12:15:44 +03:00 committed by olegphenomenon
parent 5a19149129
commit 62ce5ff561
4 changed files with 70 additions and 4 deletions

View file

@ -0,0 +1,32 @@
module Api
module V1
module AccreditationCenter
class InvoiceStatusController < ::Api::V1::AccreditationCenter::BaseController
def index
username, password = Base64.urlsafe_decode64(basic_token).split(':')
@current_user ||= ApiUser.find_by(username: username, plain_text_password: password)
return render json: { errors: 'No user found' }, status: :not_found if @current_user.nil?
@invoices = @current_user.registrar.invoices.select { |i| i.cancelled_at != nil }
if @invoices
render json: { code: 1000, invoices: @invoices },
status: :found
else
render json: { errors: 'No invoices' }, status: :not_found
end
end
private
def basic_token
pattern = /^Basic /
header = request.headers['Authorization']
header = header.gsub(pattern, '') if header&.match(pattern)
header.strip
end
end
end
end
end