def get_datatable_organisations(draw, start=0, length=25, order=None): page = start/length if start and length else 0 q = organisations.get_organisations_statement() total_records = _total_records(q) response = {"draw": draw, "length": length, "start": start, \ "recordsTotal": total_records, "recordsFiltered": total_records,\ "data": [[t.id, t.name, format_amount(t.inflow), format_amount(t.outflow), format_amount(t.balance)]\ for t in _get_page(q, page, length, order)]} return response
def get_datatable_intermediaries(draw, start=0, length=25, order=None): page = start/length if start and length else 0 q = banks.get_intermediaries_statement() total_records = _total_records(q) response = {"draw": draw, "length": length, "start": start, \ "recordsTotal": total_records, "recordsFiltered": total_records,\ "data": [[\ format_amount(t.inflow), format_amount(t.outflow), format_amount(t.balance),\ t.intermediary_org, t.intermediary_acc]\ for t in _get_page(q, page, length, order)]} return response
def __repr__(self): if not self.expanded: return "(Unexpanded) %d %s in %d ticks" % (self.start_amount, self.start_item, self.ticks) output = ["For %d %s in %d ticks:" % (self.start_amount, self.start_item, self.ticks)] if len(self.machines) > 0: machines = '\n'.join("%s %s" % (format_amount(amount), item) for item, amount in self.machines.iteritems()) output.append("Machines:") output.append(machines) if len(self.raws) > 0: raws = '\n'.join("%s %s" % (format_amount(amount), item) for item, amount in self.raws.iteritems()) output.append("Raws:") output.append(raws) return '\n'.join(output)
def get_datatable_outgoing(org_id, draw, start=0, length=25, order=None): page = start/length if start and length else 0 q = organisations.get_outgoing_statement(org_id) total_records = _total_records(q) response = {"draw": draw, "length": length, "start": start, \ "recordsTotal": total_records, "recordsFiltered": total_records,\ "data": [[format_amount(t.total), t.destination]\ for t in _get_page(q, page, length, order)]} return response
def query_total_amount(): stmt = """ select sum(tint.inflow) inflow, sum(tint.outflow) outflow from intermediary tint """ s = Session() result = s.execute(stmt).first() s.close() return format_amount(min(result.inflow, result.outflow))
def get_datatable_transactions(draw, start=0, length=25, order=None): page = start/length if start and length else 0 q = banks.get_transactions_statement() total_records = _total_records(q) response = {"draw": draw, "length": length, "start": start, \ "recordsTotal": total_records, "recordsFiltered": total_records,\ "data": [[format_amount(t.amount_usd),\ t.payee_org, t.payee_acc,\ t.beneficiary_org, t.beneficiary_acc, t.currency, t.date.date().isoformat()]\ for t in _get_page(q, page, length, order)]} return response
def json(self): return {"amount_eur": util.format_amount(self.amount_eur), "amount_usd": util.format_amount(self.amount_usd),\ "amount": util.format_amount(self.amount_orig), "currency": self.currency,\ "date": self.date_created.date().isoformat(),\ "payee": self.payee.code, "beneficiary": self.beneficiary.code}
def __repr__(self): inputs = ", ".join("%d %s" % (amount, item) for item, amount in self.inputs.iteritems()) return "%s %s = %s + %s ticks across %s buildings" % \ (format_amount(self.amount), self.name, inputs, self.ticks, format_amount(self.buildings))