exports: add condition with distinct alias on join clauses

This commit is contained in:
2022-09-07 19:58:38 +02:00
parent 81359877c4
commit 1dcff2f23c
49 changed files with 343 additions and 220 deletions

View File

@@ -48,12 +48,12 @@ final class HouseholdPositionAggregator implements AggregatorInterface, ExportEl
$qb->resetDQLPart('from');
$qb->from(HouseholdMember::class, 'member');
if (!in_array('person', $qb->getAllAliases(), true)) {
$qb->join('member.person', 'person');
if (!in_array('memberperson', $qb->getAllAliases(), true)) {
$qb->join('member.person', 'memberperson');
}
if (!in_array('center', $qb->getAllAliases(), true)) {
$qb->join('person.center', 'center');
if (!in_array('membercenter', $qb->getAllAliases(), true)) {
$qb->join('memberperson.center', 'membercenter');
}
$qb->andWhere($qb->expr()->andX(

View File

@@ -37,8 +37,11 @@ final class MaritalStatusAggregator implements AggregatorInterface
public function alterQuery(QueryBuilder $qb, $data)
{
$qb->join('person.maritalStatus', 'ms');
$qb->addSelect('ms.id as marital_status_aggregator');
if (!in_array('personmarital', $qb->getAllAliases(), true)) {
$qb->join('person.maritalStatus', 'personmarital');
}
$qb->addSelect('personmarital.id as marital_status_aggregator');
$groupBy = $qb->getDQLPart('groupBy');