IcingaServiceSetServiceTable: Change table alias for director branches

This commit is contained in:
raviks789 2023-09-22 13:44:09 +02:00
parent ca855c6ee7
commit 76509bb7c8

View file

@ -199,11 +199,13 @@ class IcingaServiceSetServiceTable extends ZfQueryBasedTable
assert($connection instanceof Db);
$builder = new ServiceSetQueryBuilder($connection, $this->branchUuid);
$query = $builder->selectServicesForSet($this->set);
$alias = $this->branchUuid ? 'u' : 'o';
if ($this->affectedHost) {
if ($hostId = $this->affectedHost->get('id')) {
$query->joinLeft(
['hsb' => 'icinga_host_service_blacklist'],
$this->db()->quoteInto('o.id = hsb.service_id AND hsb.host_id = ?', $hostId),
$this->db()->quoteInto("$alias.id = hsb.service_id AND hsb.host_id = ?", $hostId),
[]
)->columns([
'blacklisted' => "CASE WHEN hsb.service_id IS NULL THEN 'n' ELSE 'y' END"