From 2e59cd4653156deaccb07f59e27292676881379d Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Mon, 6 Oct 2025 10:42:55 +0300 Subject: [PATCH] drop alias usage --- .../Espo/Core/Select/AccessControl/Filter.php | 4 +- .../AccessControl/Filters/Mandatory.php | 4 +- .../Core/Select/AccessControl/Filters/No.php | 4 +- .../Select/AccessControl/Filters/OnlyOwn.php | 6 +-- .../Select/AccessControl/Filters/OnlyTeam.php | 6 +-- .../AccessControl/Filters/PortalAll.php | 4 +- .../Filters/PortalOnlyAccount.php | 8 ++-- .../Filters/PortalOnlyContact.php | 6 +-- .../AccessControl/Filters/PortalOnlyOwn.php | 4 +- application/Espo/Core/Select/Bool/Applier.php | 8 ++-- application/Espo/Core/Select/Bool/Filter.php | 4 +- .../Core/Select/Bool/Filters/Followed.php | 4 +- .../Espo/Core/Select/Bool/Filters/OnlyMy.php | 6 +-- .../Espo/Core/Select/Bool/Filters/Shared.php | 6 +-- .../Espo/Core/Select/Primary/Applier.php | 4 +- .../Espo/Core/Select/Primary/Filter.php | 4 +- .../Espo/Core/Select/Select/Applier.php | 4 +- application/Espo/Core/Select/Text/Applier.php | 12 +++--- .../Espo/Core/Select/Text/DefaultFilter.php | 8 ++-- .../Espo/Core/Select/Where/Converter.php | 12 +++--- .../Espo/Core/Select/Where/ItemConverter.php | 4 +- .../Select/Where/ItemGeneralConverter.php | 42 +++++++++---------- 22 files changed, 83 insertions(+), 81 deletions(-) diff --git a/application/Espo/Core/Select/AccessControl/Filter.php b/application/Espo/Core/Select/AccessControl/Filter.php index a9f355f2ac..ecb8f9b669 100644 --- a/application/Espo/Core/Select/AccessControl/Filter.php +++ b/application/Espo/Core/Select/AccessControl/Filter.php @@ -29,7 +29,7 @@ namespace Espo\Core\Select\AccessControl; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * An access filter. @@ -42,5 +42,5 @@ use Espo\ORM\Query\SelectBuilder as QueryBuilder; */ interface Filter { - public function apply(QueryBuilder $queryBuilder): void; + public function apply(SelectBuilder $queryBuilder): void; } diff --git a/application/Espo/Core/Select/AccessControl/Filters/Mandatory.php b/application/Espo/Core/Select/AccessControl/Filters/Mandatory.php index d4161b59ff..5b6f1fccda 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/Mandatory.php +++ b/application/Espo/Core/Select/AccessControl/Filters/Mandatory.php @@ -30,10 +30,10 @@ namespace Espo\Core\Select\AccessControl\Filters; use Espo\Core\Select\AccessControl\Filter; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class Mandatory implements Filter { - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void {} } diff --git a/application/Espo/Core/Select/AccessControl/Filters/No.php b/application/Espo/Core/Select/AccessControl/Filters/No.php index 57ab24e4c7..9a2a7812e3 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/No.php +++ b/application/Espo/Core/Select/AccessControl/Filters/No.php @@ -31,11 +31,11 @@ namespace Espo\Core\Select\AccessControl\Filters; use Espo\Core\Select\AccessControl\Filter; use Espo\ORM\Name\Attribute; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class No implements Filter { - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { $queryBuilder->where([Attribute::ID => null]); } diff --git a/application/Espo/Core/Select/AccessControl/Filters/OnlyOwn.php b/application/Espo/Core/Select/AccessControl/Filters/OnlyOwn.php index bbf80ea992..cf0f2041ad 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/OnlyOwn.php +++ b/application/Espo/Core/Select/AccessControl/Filters/OnlyOwn.php @@ -37,7 +37,7 @@ use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Where\OrGroup; use Espo\ORM\Query\Part\WhereClause; use Espo\ORM\Query\Part\WhereItem; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class OnlyOwn implements Filter { @@ -48,7 +48,7 @@ class OnlyOwn implements Filter private RelationQueryHelper $relationQueryHelper, ) {} - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { $ownItem = $this->getOwnWhereItem(); @@ -67,7 +67,7 @@ class OnlyOwn implements Filter $queryBuilder->where($ownItem); } - private function applyCollaborators(QueryBuilder $queryBuilder, ?WhereItem $ownItem): void + private function applyCollaborators(SelectBuilder $queryBuilder, ?WhereItem $ownItem): void { $sharedItem = $this->relationQueryHelper->prepareCollaboratorsWhere($this->entityType, $this->user->getId()); diff --git a/application/Espo/Core/Select/AccessControl/Filters/OnlyTeam.php b/application/Espo/Core/Select/AccessControl/Filters/OnlyTeam.php index 790b4cdd57..17bb81c022 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/OnlyTeam.php +++ b/application/Espo/Core/Select/AccessControl/Filters/OnlyTeam.php @@ -36,7 +36,7 @@ use Espo\Entities\Team; use Espo\Entities\User; use Espo\ORM\Defs; use Espo\ORM\Name\Attribute; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * @noinspection PhpUnused @@ -50,7 +50,7 @@ class OnlyTeam implements Filter private Defs $defs ) {} - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { if (!$this->fieldHelper->hasTeamsField()) { $queryBuilder->where([Attribute::ID => null]); @@ -58,7 +58,7 @@ class OnlyTeam implements Filter return; } - $subQueryBuilder = QueryBuilder::create() + $subQueryBuilder = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin(Team::RELATIONSHIP_ENTITY_TEAM, 'entityTeam', [ diff --git a/application/Espo/Core/Select/AccessControl/Filters/PortalAll.php b/application/Espo/Core/Select/AccessControl/Filters/PortalAll.php index f3744f0af9..50118060fa 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/PortalAll.php +++ b/application/Espo/Core/Select/AccessControl/Filters/PortalAll.php @@ -30,10 +30,10 @@ namespace Espo\Core\Select\AccessControl\Filters; use Espo\Core\Select\AccessControl\Filter; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class PortalAll implements Filter { - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void {} } diff --git a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyAccount.php b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyAccount.php index 41a194d065..33532c0b45 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyAccount.php +++ b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyAccount.php @@ -41,7 +41,7 @@ use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Where\OrGroup; use Espo\ORM\Query\Part\WhereClause; use Espo\ORM\Query\Part\WhereItem; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class PortalOnlyAccount implements Filter { @@ -53,7 +53,7 @@ class PortalOnlyAccount implements Filter private RelationQueryHelper $relationQueryHelper, ) {} - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { $orBuilder = OrGroup::createBuilder(); @@ -96,7 +96,7 @@ class PortalOnlyAccount implements Filter /** * @param string[] $ids */ - private function prepareAccountWhere(QueryBuilder $queryBuilder, array $ids): ?WhereItem + private function prepareAccountWhere(SelectBuilder $queryBuilder, array $ids): ?WhereItem { $defs = $this->metadataProvider->getAccountLink($this->entityType); @@ -107,7 +107,7 @@ class PortalOnlyAccount implements Filter return $this->relationQueryHelper->prepareLinkWhere($defs, Account::ENTITY_TYPE, $ids, $queryBuilder); } - private function prepareContactWhere(QueryBuilder $queryBuilder, string $id): ?WhereItem + private function prepareContactWhere(SelectBuilder $queryBuilder, string $id): ?WhereItem { $defs = $this->metadataProvider->getContactLink($this->entityType); diff --git a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyContact.php b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyContact.php index 0cce32576c..59c521808e 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyContact.php +++ b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyContact.php @@ -40,7 +40,7 @@ use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Where\OrGroup; use Espo\ORM\Query\Part\WhereClause; use Espo\ORM\Query\Part\WhereItem; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class PortalOnlyContact implements Filter { @@ -52,7 +52,7 @@ class PortalOnlyContact implements Filter private RelationQueryHelper $relationQueryHelper, ) {} - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { $orBuilder = OrGroup::createBuilder(); @@ -83,7 +83,7 @@ class PortalOnlyContact implements Filter $queryBuilder->where($orGroup); } - private function prepareContactWhere(QueryBuilder $queryBuilder, string $id): ?WhereItem + private function prepareContactWhere(SelectBuilder $queryBuilder, string $id): ?WhereItem { $defs = $this->metadataProvider->getContactLink($this->entityType); diff --git a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyOwn.php b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyOwn.php index 244303e97c..c4f565acdd 100644 --- a/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyOwn.php +++ b/application/Espo/Core/Select/AccessControl/Filters/PortalOnlyOwn.php @@ -33,14 +33,14 @@ use Espo\Core\Select\AccessControl\Filter; use Espo\Core\Select\Helpers\FieldHelper; use Espo\Entities\User; use Espo\ORM\Name\Attribute; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class PortalOnlyOwn implements Filter { public function __construct(private User $user, private FieldHelper $fieldHelper) {} - public function apply(QueryBuilder $queryBuilder): void + public function apply(SelectBuilder $queryBuilder): void { if ($this->fieldHelper->hasCreatedByField()) { $queryBuilder->where([ diff --git a/application/Espo/Core/Select/Bool/Applier.php b/application/Espo/Core/Select/Bool/Applier.php index d048851be5..ecda64ade2 100644 --- a/application/Espo/Core/Select/Bool/Applier.php +++ b/application/Espo/Core/Select/Bool/Applier.php @@ -34,7 +34,7 @@ use Espo\Core\Select\OrmSelectBuilder; use Espo\Core\Select\SelectManager; use Espo\Core\Select\Bool\FilterFactory as BoolFilterFactory; use Espo\ORM\Query\Select; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use Espo\ORM\Query\Part\Where\OrGroupBuilder; use Espo\ORM\Query\Part\WhereClause; @@ -53,7 +53,7 @@ class Applier * @param string[] $boolFilterNameList * @throws BadRequest */ - public function apply(QueryBuilder $queryBuilder, array $boolFilterNameList): void + public function apply(SelectBuilder $queryBuilder, array $boolFilterNameList): void { $orGroupBuilder = new OrGroupBuilder(); @@ -80,7 +80,7 @@ class Applier * @throws BadRequest */ private function applyBoolFilter( - QueryBuilder $queryBuilder, + SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder, string $filterName ): void { @@ -110,7 +110,7 @@ class Applier throw new BadRequest("No bool filter '$filterName' for '$this->entityType'."); } - private function handleMultiple(Select $queryBefore, QueryBuilder $queryBuilder): void + private function handleMultiple(Select $queryBefore, SelectBuilder $queryBuilder): void { $queryAfter = $queryBuilder->build(); diff --git a/application/Espo/Core/Select/Bool/Filter.php b/application/Espo/Core/Select/Bool/Filter.php index 00d830a5e8..e35f179ac0 100644 --- a/application/Espo/Core/Select/Bool/Filter.php +++ b/application/Espo/Core/Select/Bool/Filter.php @@ -30,12 +30,12 @@ namespace Espo\Core\Select\Bool; use Espo\ORM\Query\Part\Where\OrGroupBuilder; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * Applies a bool filter. A where item should be added to OrGroupBuilder. */ interface Filter { - public function apply(QueryBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void; + public function apply(SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void; } diff --git a/application/Espo/Core/Select/Bool/Filters/Followed.php b/application/Espo/Core/Select/Bool/Filters/Followed.php index ff29f38644..e090daddcb 100644 --- a/application/Espo/Core/Select/Bool/Filters/Followed.php +++ b/application/Espo/Core/Select/Bool/Filters/Followed.php @@ -35,14 +35,14 @@ use Espo\Entities\User; use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Where\OrGroupBuilder; use Espo\ORM\Query\Part\WhereClause; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class Followed implements Filter { public function __construct(private string $entityType, private User $user) {} - public function apply(QueryBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void + public function apply(SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void { $alias = 'subscriptionFollowedBoolFilter'; diff --git a/application/Espo/Core/Select/Bool/Filters/OnlyMy.php b/application/Espo/Core/Select/Bool/Filters/OnlyMy.php index 70600e2505..f60c941443 100644 --- a/application/Espo/Core/Select/Bool/Filters/OnlyMy.php +++ b/application/Espo/Core/Select/Bool/Filters/OnlyMy.php @@ -37,7 +37,7 @@ use Espo\ORM\Defs; use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Condition as Cond; use Espo\ORM\Query\Part\Where\OrGroupBuilder; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * @noinspection PhpUnused @@ -53,7 +53,7 @@ class OnlyMy implements Filter private Defs $defs ) {} - public function apply(QueryBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void + public function apply(SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void { if ($this->user->isPortal()) { $orGroupBuilder->add( @@ -75,7 +75,7 @@ class OnlyMy implements Filter $key1 = $relationDefs->getMidKey(); $key2 = $relationDefs->getForeignMidKey(); - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($middleEntityType, 'assignedUsersMiddle', [ diff --git a/application/Espo/Core/Select/Bool/Filters/Shared.php b/application/Espo/Core/Select/Bool/Filters/Shared.php index c8238f38b5..27cf6a87c9 100644 --- a/application/Espo/Core/Select/Bool/Filters/Shared.php +++ b/application/Espo/Core/Select/Bool/Filters/Shared.php @@ -37,7 +37,7 @@ use Espo\ORM\Defs; use Espo\ORM\Name\Attribute; use Espo\ORM\Query\Part\Condition as Cond; use Espo\ORM\Query\Part\Where\OrGroupBuilder; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * @noinspection PhpUnused @@ -53,7 +53,7 @@ class Shared implements Filter private Defs $defs ) {} - public function apply(QueryBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void + public function apply(SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder): void { if (!$this->fieldHelper->hasCollaboratorsField()) { return; @@ -67,7 +67,7 @@ class Shared implements Filter $key1 = $relationDefs->getMidKey(); $key2 = $relationDefs->getForeignMidKey(); - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($middleEntityType, 'collaboratorsMiddle', [ diff --git a/application/Espo/Core/Select/Primary/Applier.php b/application/Espo/Core/Select/Primary/Applier.php index 954ee61c9d..d41edd3376 100644 --- a/application/Espo/Core/Select/Primary/Applier.php +++ b/application/Espo/Core/Select/Primary/Applier.php @@ -32,7 +32,7 @@ namespace Espo\Core\Select\Primary; use Espo\Core\Exceptions\BadRequest; use Espo\Core\Select\SelectManager; use Espo\Core\Select\OrmSelectBuilder; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use Espo\Entities\User; class Applier @@ -47,7 +47,7 @@ class Applier /** * @throws BadRequest */ - public function apply(QueryBuilder $queryBuilder, string $filterName): void + public function apply(SelectBuilder $queryBuilder, string $filterName): void { if ($this->primaryFilterFactory->has($this->entityType, $filterName)) { $filter = $this->primaryFilterFactory->create($this->entityType, $this->user, $filterName); diff --git a/application/Espo/Core/Select/Primary/Filter.php b/application/Espo/Core/Select/Primary/Filter.php index 5b89a03951..8816d66110 100644 --- a/application/Espo/Core/Select/Primary/Filter.php +++ b/application/Espo/Core/Select/Primary/Filter.php @@ -29,12 +29,12 @@ namespace Espo\Core\Select\Primary; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * A primary filter. */ interface Filter { - public function apply(QueryBuilder $queryBuilder): void; + public function apply(SelectBuilder $queryBuilder): void; } diff --git a/application/Espo/Core/Select/Select/Applier.php b/application/Espo/Core/Select/Select/Applier.php index 893bd947d7..7b251f7190 100644 --- a/application/Espo/Core/Select/Select/Applier.php +++ b/application/Espo/Core/Select/Select/Applier.php @@ -35,7 +35,7 @@ use Espo\Core\Utils\FieldUtil; use Espo\Entities\User; use Espo\ORM\Entity; use Espo\ORM\Name\Attribute; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; class Applier { @@ -60,7 +60,7 @@ class Applier private MetadataProvider $metadataProvider ) {} - public function apply(QueryBuilder $queryBuilder, SearchParams $searchParams): void + public function apply(SelectBuilder $queryBuilder, SearchParams $searchParams): void { $attributeList = $this->getSelectAttributeList($searchParams); diff --git a/application/Espo/Core/Select/Text/Applier.php b/application/Espo/Core/Select/Text/Applier.php index a11dfea80f..49e20f18fc 100644 --- a/application/Espo/Core/Select/Text/Applier.php +++ b/application/Espo/Core/Select/Text/Applier.php @@ -33,7 +33,7 @@ use Espo\Core\Select\Text\FullTextSearch\Data as FullTextSearchData; use Espo\Core\Select\Text\FullTextSearch\DataComposerFactory as FullTextSearchDataComposerFactory; use Espo\Core\Select\Text\FullTextSearch\DataComposer\Params as FullTextSearchDataComposerParams; use Espo\Core\Select\Text\Filter\Data as FilterData; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use Espo\ORM\Query\Part\Order as OrderExpr; use Espo\ORM\Query\Part\Expression as Expr; use Espo\ORM\Query\Part\WhereItem; @@ -62,8 +62,10 @@ class Applier private ConfigProvider $config ) {} - /** @noinspection PhpUnusedParameterInspection */ - public function apply(QueryBuilder $queryBuilder, string $filter, FilterParams $params): void + /** + * @noinspection PhpUnusedParameterInspection + */ + public function apply(SelectBuilder $queryBuilder, string $filter, FilterParams $params): void { $forceFullText = false; $skipFullText = false; @@ -97,7 +99,7 @@ class Applier return $composer->compose($filter, $params); } - private function processFullTextSearch(QueryBuilder $queryBuilder, FullTextSearchData $data): WhereItem + private function processFullTextSearch(SelectBuilder $queryBuilder, FullTextSearchData $data): WhereItem { $expression = $data->getExpression(); @@ -203,7 +205,7 @@ class Applier ->withFullTextSearchWhereItem($fullTextWhere); } - private function applyFilter(QueryBuilder $queryBuilder, FilterData $filterData): void + private function applyFilter(SelectBuilder $queryBuilder, FilterData $filterData): void { $filterObj = $this->filterFactory->create($this->entityType, $this->user); diff --git a/application/Espo/Core/Select/Text/DefaultFilter.php b/application/Espo/Core/Select/Text/DefaultFilter.php index 786f07dbf9..1d6ab41f6a 100644 --- a/application/Espo/Core/Select/Text/DefaultFilter.php +++ b/application/Espo/Core/Select/Text/DefaultFilter.php @@ -32,7 +32,7 @@ namespace Espo\Core\Select\Text; use Espo\Core\ORM\Type\FieldType; use Espo\Core\Select\Text\Filter\Data; use Espo\ORM\Name\Attribute; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use Espo\ORM\Query\Part\Where\OrGroup; use Espo\ORM\Query\Part\Where\OrGroupBuilder; use Espo\ORM\Query\Part\Where\Comparison as Cmp; @@ -49,7 +49,7 @@ class DefaultFilter implements Filter private ConfigProvider $config ) {} - public function apply(QueryBuilder $queryBuilder, Data $data): void + public function apply(SelectBuilder $queryBuilder, Data $data): void { $orGroupBuilder = OrGroup::createBuilder(); @@ -78,7 +78,7 @@ class DefaultFilter implements Filter * @todo AttributeFilterFactory. */ private function applyAttribute( - QueryBuilder $queryBuilder, + SelectBuilder $queryBuilder, OrGroupBuilder $orGroupBuilder, string $attribute, Data $data @@ -147,7 +147,7 @@ class DefaultFilter implements Filter ); } - private function getAttributeTypeAndApplyJoin(QueryBuilder $queryBuilder, string $attribute): string + private function getAttributeTypeAndApplyJoin(SelectBuilder $queryBuilder, string $attribute): string { if (str_contains($attribute, '.')) { [$link, $foreignField] = explode('.', $attribute); diff --git a/application/Espo/Core/Select/Where/Converter.php b/application/Espo/Core/Select/Where/Converter.php index 2bc356e401..ced736b27c 100644 --- a/application/Espo/Core/Select/Where/Converter.php +++ b/application/Espo/Core/Select/Where/Converter.php @@ -37,7 +37,7 @@ use Espo\ORM\Query\Part\Expression as Expr; use Espo\ORM\Query\Part\Where\Comparison; use Espo\ORM\Query\Part\WhereClause; use Espo\ORM\Query\Part\WhereItem; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use InvalidArgumentException; use RuntimeException; @@ -54,7 +54,7 @@ class Converter /** * @throws BadRequest */ - public function convert(QueryBuilder $queryBuilder, Item $item, ?Converter\Params $params = null): WhereItem + public function convert(SelectBuilder $queryBuilder, Item $item, ?Converter\Params $params = null): WhereItem { if ($params && $params->useSubQueryIfMany() && $this->hasRelatedMany($queryBuilder, $item)) { return $this->convertSubQuery($queryBuilder, $item); @@ -83,7 +83,7 @@ class Converter return WhereClause::fromRaw($whereClause); } - private function hasRelatedMany(QueryBuilder $queryBuilder, Item $item): bool + private function hasRelatedMany(SelectBuilder $queryBuilder, Item $item): bool { $entityType = $queryBuilder->build()->getFrom(); @@ -119,7 +119,7 @@ class Converter * @return array * @throws BadRequest */ - private function processItem(QueryBuilder $queryBuilder, Item $item): array + private function processItem(SelectBuilder $queryBuilder, Item $item): array { return $this->itemConverter->convert($queryBuilder, $item)->getRaw(); } @@ -127,11 +127,11 @@ class Converter /** * @throws BadRequest */ - private function convertSubQuery(QueryBuilder $queryBuilder, Item $item): Comparison + private function convertSubQuery(SelectBuilder $queryBuilder, Item $item): Comparison { $entityType = $queryBuilder->build()->getFrom() ?? throw new RuntimeException(); - $subQueryBuilder = QueryBuilder::create() + $subQueryBuilder = SelectBuilder::create() ->from($entityType) ->select(Attribute::ID); diff --git a/application/Espo/Core/Select/Where/ItemConverter.php b/application/Espo/Core/Select/Where/ItemConverter.php index 55f863b408..bf8e5039a3 100644 --- a/application/Espo/Core/Select/Where/ItemConverter.php +++ b/application/Espo/Core/Select/Where/ItemConverter.php @@ -31,7 +31,7 @@ namespace Espo\Core\Select\Where; use Espo\Core\Exceptions\BadRequest; use Espo\ORM\Query\Part\WhereItem as WhereClauseItem; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; /** * Converts a where item to a where clause item (for ORM). @@ -41,5 +41,5 @@ interface ItemConverter /** * @throws BadRequest */ - public function convert(QueryBuilder $queryBuilder, Item $item): WhereClauseItem; + public function convert(SelectBuilder $queryBuilder, Item $item): WhereClauseItem; } diff --git a/application/Espo/Core/Select/Where/ItemGeneralConverter.php b/application/Espo/Core/Select/Where/ItemGeneralConverter.php index 7e2860c300..ba245d23a2 100644 --- a/application/Espo/Core/Select/Where/ItemGeneralConverter.php +++ b/application/Espo/Core/Select/Where/ItemGeneralConverter.php @@ -49,7 +49,7 @@ use Espo\ORM\Query\Part\Join; use Espo\ORM\Query\Part\WhereClause; use Espo\ORM\Query\Part\WhereItem as WhereClauseItem; use Espo\ORM\Query\Select; -use Espo\ORM\Query\SelectBuilder as QueryBuilder; +use Espo\ORM\Query\SelectBuilder; use Exception; use RuntimeException; @@ -75,7 +75,7 @@ class ItemGeneralConverter implements ItemConverter /** * @throws BadRequest */ - public function convert(QueryBuilder $queryBuilder, Item $item): WhereClauseItem + public function convert(SelectBuilder $queryBuilder, Item $item): WhereClauseItem { $type = $item->getType(); $value = $item->getValue(); @@ -360,7 +360,7 @@ class ItemGeneralConverter implements ItemConverter * @return array * @throws BadRequest */ - private function groupProcessAndOr(QueryBuilder $queryBuilder, string $type, $value): array + private function groupProcessAndOr(SelectBuilder $queryBuilder, string $type, $value): array { if (!is_array($value)) { throw new BadRequest("Bad where item."); @@ -396,7 +396,7 @@ class ItemGeneralConverter implements ItemConverter throw new BadRequest("Bad where item."); } - $sqQueryBuilder = QueryBuilder::create() + $sqQueryBuilder = SelectBuilder::create() ->from($this->entityType); $whereItem = Item::fromRaw([ @@ -440,7 +440,7 @@ class ItemGeneralConverter implements ItemConverter throw new BadRequest("Bad where item 'column'."); } - $subQueryBuilder = QueryBuilder::create() + $subQueryBuilder = SelectBuilder::create() ->from($this->entityType) ->select(Attribute::ID) ->leftJoin($link); @@ -480,7 +480,7 @@ class ItemGeneralConverter implements ItemConverter * @throws BadRequest */ private function groupProcessArray( - QueryBuilder $queryBuilder, + SelectBuilder $queryBuilder, string $type, string $attribute, $value @@ -540,7 +540,7 @@ class ItemGeneralConverter implements ItemConverter throw new BadRequest("Bad where item. No value."); } - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select('entityId') ->from(ArrayValue::ENTITY_TYPE) ->where([ @@ -560,7 +560,7 @@ class ItemGeneralConverter implements ItemConverter return Cond::not( Cond::exists( - QueryBuilder::create() + SelectBuilder::create() ->select('entityId') ->from(ArrayValue::ENTITY_TYPE) ->where([ @@ -577,7 +577,7 @@ class ItemGeneralConverter implements ItemConverter if ($type === Type::ARRAY_IS_EMPTY) { return Cond::not( Cond::exists( - QueryBuilder::create() + SelectBuilder::create() ->select('entityId') ->from(ArrayValue::ENTITY_TYPE) ->where([ @@ -591,7 +591,7 @@ class ItemGeneralConverter implements ItemConverter } if ($type === Type::ARRAY_IS_NOT_EMPTY) { - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select('entityId') ->from(ArrayValue::ENTITY_TYPE) ->where([ @@ -616,7 +616,7 @@ class ItemGeneralConverter implements ItemConverter foreach ($value as $arrayValue) { $whereList[] = [ - $idPart .'=s' => QueryBuilder::create() + $idPart .'=s' => SelectBuilder::create() ->from(ArrayValue::ENTITY_TYPE) ->select('entityId') ->where([ @@ -1361,7 +1361,7 @@ class ItemGeneralConverter implements ItemConverter // The foreign table is not joined as it would perform much slower. // Trade off is that if a foreign record is deleted but the middle table // is not yet deleted, it will give a non-actual result. - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($middleEntityType, $alias, [ @@ -1380,7 +1380,7 @@ class ItemGeneralConverter implements ItemConverter $relationType == Entity::BELONGS_TO || $relationType === Entity::HAS_CHILDREN ) { - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($link, $alias) @@ -1413,7 +1413,7 @@ class ItemGeneralConverter implements ItemConverter // The foreign table is not joined as it would perform much slower. // Trade off is that if a foreign record is deleted but the middle table // is not yet deleted, it will give a non-actual result. - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($middleEntityType, $alias, [ @@ -1432,7 +1432,7 @@ class ItemGeneralConverter implements ItemConverter $relationType == Entity::BELONGS_TO || $relationType == Entity::HAS_CHILDREN ) { - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($link, $alias) @@ -1484,7 +1484,7 @@ class ItemGeneralConverter implements ItemConverter // MariaDB and PostgreSQL perform fast, MySQL – slow. return Cond::in( Cond::column(Attribute::ID), - QueryBuilder::create() + SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin( @@ -1506,7 +1506,7 @@ class ItemGeneralConverter implements ItemConverter $relationType == Entity::HAS_MANY || $relationType == Entity::HAS_ONE ) { - $subQuery = QueryBuilder::create() + $subQuery = SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType) ->leftJoin($link, $alias) @@ -1560,7 +1560,7 @@ class ItemGeneralConverter implements ItemConverter // MariaDB and MySQL perform slow, PostgreSQL – fast. return Cond::not( Cond::exists( - QueryBuilder::create() + SelectBuilder::create() ->from($this->entityType, 'sq') ->join( Join::create($link, $alias) @@ -1584,7 +1584,7 @@ class ItemGeneralConverter implements ItemConverter ) { return Cond::not( Cond::exists( - QueryBuilder::create() + SelectBuilder::create() ->select(Attribute::ID) ->from($this->entityType, 'sq') ->join($link, $alias) @@ -1642,7 +1642,7 @@ class ItemGeneralConverter implements ItemConverter foreach ($value as $targetId) { // Only-middle join performs slower on MariaDB. - $sq = QueryBuilder::create() + $sq = SelectBuilder::create() ->from($this->entityType) ->select(Attribute::ID) ->leftJoin($link) @@ -1661,7 +1661,7 @@ class ItemGeneralConverter implements ItemConverter $whereList = []; foreach ($value as $targetId) { - $sq = QueryBuilder::create() + $sq = SelectBuilder::create() ->from($this->entityType) ->select(Attribute::ID) ->leftJoin($link)