mirror of
https://github.com/espocrm/espocrm.git
synced 2026-06-30 07:56:05 +00:00
portal access filters support hasOne
This commit is contained in:
@@ -39,6 +39,7 @@ use Espo\ORM\Query\Part\Expression as Expr;
|
||||
use Espo\ORM\Query\Part\Where\OrGroup;
|
||||
use Espo\ORM\Query\Part\WhereClause;
|
||||
use Espo\ORM\Query\SelectBuilder as QueryBuilder;
|
||||
use Espo\ORM\Type\RelationType;
|
||||
|
||||
class PortalOnlyAccount implements Filter
|
||||
{
|
||||
@@ -62,6 +63,10 @@ class PortalOnlyAccount implements Filter
|
||||
$accountIdList
|
||||
)
|
||||
);
|
||||
|
||||
if ($this->fieldHelper->getRelationDefs('account')->getType() === RelationType::HAS_ONE) {
|
||||
$queryBuilder->leftJoin('account');
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->fieldHelper->hasAccountsRelation()) {
|
||||
@@ -103,6 +108,10 @@ class PortalOnlyAccount implements Filter
|
||||
$orBuilder->add(
|
||||
WhereClause::fromRaw(['contactId' => $contactId])
|
||||
);
|
||||
|
||||
if ($this->fieldHelper->getRelationDefs('contact')->getType() === RelationType::HAS_ONE) {
|
||||
$queryBuilder->leftJoin('contact');
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->fieldHelper->hasContactsRelation()) {
|
||||
|
||||
@@ -38,6 +38,7 @@ use Espo\ORM\Query\Part\Expression as Expr;
|
||||
use Espo\ORM\Query\Part\Where\OrGroup;
|
||||
use Espo\ORM\Query\Part\WhereClause;
|
||||
use Espo\ORM\Query\SelectBuilder as QueryBuilder;
|
||||
use Espo\ORM\Type\RelationType;
|
||||
|
||||
class PortalOnlyContact implements Filter
|
||||
{
|
||||
@@ -57,6 +58,10 @@ class PortalOnlyContact implements Filter
|
||||
$orBuilder->add(
|
||||
WhereClause::fromRaw(['contactId' => $contactId])
|
||||
);
|
||||
|
||||
if ($this->fieldHelper->getRelationDefs('contact')->getType() === RelationType::HAS_ONE) {
|
||||
$queryBuilder->leftJoin('contact');
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->fieldHelper->hasContactsRelation()) {
|
||||
|
||||
Reference in New Issue
Block a user