monthTopClientsSellCashOnly<C extends ContactAbstract> method

Map<String, C> monthTopClientsSellCashOnly<C extends ContactAbstract>(
  1. DateTime date,
  2. List<C> contactsList
)

Implementation

Map<String, C> monthTopClientsSellCashOnly<C extends ContactAbstract>(
    DateTime date, List<C> contactsList) {
  Map<String, C> map = {};
  for (var herder in contactsList) {
    final soldPerClient = where((t) => t.status == true)
        .where((t) => t.date.year == date.year && t.date.month == date.month)
        .where((t) => t.ticketType == TicketType.sell)
        .where((t) => t.paymentType == PaymentType.cash)
        .where((t) => t.contactIdString == herder.id.toString())
        .fold(
            0.0,
            (num prev, T element) =>
                prev + element.totalPriceTaxAndPromoIncluded);

    map[soldPerClient.toString()] = herder;
  }
  return map;
}