Release 2.6.0 (#4472)

- Added: calendar entry title combination for customer, project and activity
- Added: show not_invoiced and not_exported data in detail screens
- Added: force logout if user is disabled
- Added: reduced amount of database queries on several screens
- Fixed: open-close status on work-contract screen for users without configuration
- Fixed: failsafe order/orderBy in query if manually manipulated to be null
- Fixed: unify statistic calculation (not_invoiced and not_exported) across screens
- Tech: bump packages
- Tech: Symfony 6.4
This commit is contained in:
Kevin Papst
2023-12-17 16:19:50 +01:00
committed by GitHub
parent af82fd040d
commit 5f4b6d3cfa
77 changed files with 1362 additions and 1242 deletions

View File

@@ -148,12 +148,9 @@ class TeamRepository extends EntityRepository
private function getQueryBuilderForQuery(TeamQuery $query): QueryBuilder
{
$qb = $this->getEntityManager()->createQueryBuilder();
$qb = $this->createQueryBuilder('t');
$qb
->select('t')
->from(Team::class, 't')
;
$qb->select('t');
$orderBy = $query->getOrderBy();
switch ($orderBy) {
@@ -162,6 +159,30 @@ class TeamRepository extends EntityRepository
break;
}
if ($query->hasCustomers()) {
$qb->leftJoin('t.customers', 'qCustomers');
$qb->orWhere(
$qb->expr()->in('qCustomers', ':customers')
);
$qb->setParameter('customers', $query->getCustomers());
}
if ($query->hasProjects()) {
$qb->leftJoin('t.projects', 'qProjects');
$qb->orWhere(
$qb->expr()->in('qProjects', ':projects')
);
$qb->setParameter('projects', $query->getProjects());
}
if ($query->hasActivities()) {
$qb->leftJoin('t.activities', 'qActivities');
$qb->orWhere(
$qb->expr()->in('qActivities', ':activities')
);
$qb->setParameter('activities', $query->getActivities());
}
if ($query->hasUsers()) {
$qb->leftJoin('t.members', 'qMembers');
$qb->orWhere(