makeListOfContactBalance method

List<ContactBalance> makeListOfContactBalance(
  1. Iterable<TicketWeebi> tickets,
  2. Iterable<ClosingLedgerContact> closingsLedgerContacts, {
  3. DateTime? end,
})

Implementation

List<ContactBalance> makeListOfContactBalance(Iterable<TicketWeebi> tickets,
    Iterable<ClosingLedgerContact> closingsLedgerContacts,
    {DateTime? end}) {
  final listOfContactBalance = <ContactBalance>[];
  toList().sort((a, b) => a.id.compareTo(b.id));
  for (final herder in this) {
    final endNotNull = end ?? DateTime.now();

    final lastClosingBalance =
        closingsLedgerContacts.closingContactLastBalance(herder.id);

    final lent = 0;
    final ticketsPP =
        tickets.herderTicketsPurchasingPowerDateEnd(herder.id, endNotNull);

    final purchasingPower = ticketsPP + lastClosingBalance + lent;

    final bb = ContactBalance(herder.id, purchasingPower);
    listOfContactBalance.add(bb);
  }
  return listOfContactBalance;
}