Moving a method in my controller (Invoices
) into the corresponding model and I'm missing something. I've tried following this and this and even this and there are small issues I'm having that I need extra eyes on.
My working controller method is this.
def array_of_disbursable_invoices
sql = "SELECT MIN(departure_date), ch_invoice.invoice_id
FROM ch_invoice
INNER JOIN ch_trip
ON ch_invoice.invoice_id = ch_trip.invoice_id
WHERE departure_date <= (SELECT SYS_EXTRACT_UTC(SYSTIMESTAMP)FROM DUAL)
AND service_rendered = 0
AND paid = 1
Group By ch_invoice.invoice_id"
report = ActiveRecord::Base.connection.exec_query(sql)
render json: report
end
And I'm trying to turn it into this.
def array_of_disbursable_invoices
report = report.array_of_disbursable_invoices
render json: report
end
With the logic in my model here.
def array_of_disbursable_invoices
sql = "SELECT MIN(departure_date), ch_invoice.invoice_id
FROM ch_invoice
INNER JOIN ch_trip
ON ch_invoice.invoice_id = ch_trip.invoice_id
WHERE departure_date <= (SELECT SYS_EXTRACT_UTC(SYSTIMESTAMP)FROM DUAL)
AND service_rendered = 0
AND paid = 1
Group By ch_invoice.invoice_id"
ActiveRecord::Base.connection.exec_query(sql)
end
Current error message
undefined method `array_of_disbursable_invoices' for nil:NilClass