monthTopClientsSellAndSellDeferred method

Map<String, ContactWeebi> monthTopClientsSellAndSellDeferred(
  1. DateTime date,
  2. List<ContactWeebi> contactsList
)

Implementation

Map<String, ContactWeebi> monthTopClientsSellAndSellDeferred(
    DateTime date, List<ContactWeebi> contactsList) {
  final map = <String, ContactWeebi>{};
  for (final herder in contactsList) {
    final soldPerClient = where((t) => t.status == true)
        .where((t) => t.date.year == date.year)
        .where((t) => t.date.month == date.month)
        .where((t) =>
            t.ticketType == TicketType.sellDeferred ||
            t.ticketType == TicketType.sell)
        .where((t) => t.contactId == herder.id)
        .fold(
            0,
            (num prev, element) =>
                prev + element.totalPriceTaxAndPromoIncluded);

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