| @@ 193-218 (lines=26) @@ | ||
| 190 | * |
|
| 191 | * @return QueryBuilder |
|
| 192 | */ |
|
| 193 | protected function createLeadsCountQb( |
|
| 194 | \DateTime $start = null, |
|
| 195 | \DateTime $end = null, |
|
| 196 | $owners = [] |
|
| 197 | ) { |
|
| 198 | $qb = $this |
|
| 199 | ->createQueryBuilder('l') |
|
| 200 | ->select('COUNT(DISTINCT l.id)'); |
|
| 201 | ||
| 202 | if ($start) { |
|
| 203 | $qb |
|
| 204 | ->andWhere('l.createdAt >= :start') |
|
| 205 | ->setParameter('start', $start); |
|
| 206 | } |
|
| 207 | if ($end) { |
|
| 208 | $qb |
|
| 209 | ->andWhere('l.createdAt <= :end') |
|
| 210 | ->setParameter('end', $end); |
|
| 211 | } |
|
| 212 | ||
| 213 | if ($owners) { |
|
| 214 | QueryUtils::applyOptimizedIn($qb, 'l.owner', $owners); |
|
| 215 | } |
|
| 216 | ||
| 217 | return $qb; |
|
| 218 | } |
|
| 219 | } |
|
| 220 | ||
| @@ 379-399 (lines=21) @@ | ||
| 376 | * |
|
| 377 | * @return QueryBuilder |
|
| 378 | */ |
|
| 379 | public function createOpportunitiesCountQb(\DateTime $start = null, \DateTime $end = null, $owners = []) |
|
| 380 | { |
|
| 381 | $qb = $this->createQueryBuilder('o'); |
|
| 382 | $qb->select('COUNT(o.id)'); |
|
| 383 | if ($start) { |
|
| 384 | $qb |
|
| 385 | ->andWhere('o.createdAt >= :start') |
|
| 386 | ->setParameter('start', $start); |
|
| 387 | } |
|
| 388 | if ($end) { |
|
| 389 | $qb |
|
| 390 | ->andWhere('o.createdAt <= :end') |
|
| 391 | ->setParameter('end', $end); |
|
| 392 | } |
|
| 393 | ||
| 394 | if ($owners) { |
|
| 395 | QueryUtils::applyOptimizedIn($qb, 'o.owner', $owners); |
|
| 396 | } |
|
| 397 | ||
| 398 | return $qb; |
|
| 399 | } |
|
| 400 | ||
| 401 | /** |
|
| 402 | * @param AclHelper $aclHelper |
|