Class: Api::V1::InvoicesController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/api/v1/invoices_controller.rb

Instance Method Summary collapse

Instance Method Details

#indexObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/controllers/api/v1/invoices_controller.rb', line 5

def index
  query_filter = params[:query_filter].blank? ? {} : JSON.parse(params[:query_filter]).symbolize_keys

  invoices = Invoice.apply_filters(query_filter)

  # scope by dba organization
  invoices = invoices.joins("inner join invoice_party_roles as invoice_party_reln on
                    (invoice_party_reln.invoice_id = invoices.id
                    and
                    invoice_party_reln.party_id in (#{current_user.party.dba_organization.id})
                    and
                    invoice_party_reln.role_type_id = #{RoleType.iid('dba_org').id}
                    )")

  total_count = invoices.count

  render json: {total_count: total_count, invoices: invoices.collect{|invoice| invoice.to_data_hash} }
end