1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
AddLogEntryHandler.php
См. документацию.
1
<?php
2
3
declare(strict_types=1);
4
5
namespace
Bitrix\Socialnetwork\Collab\Control\Handler\Add;
6
7
use Bitrix\Main\DI\ServiceLocator;
8
use Bitrix\Main\Error;
9
use Bitrix\Socialnetwork\Collab\Collab;
10
use Bitrix\Socialnetwork\Collab\Control\Command\CollabAddCommand;
11
use Bitrix\Socialnetwork\Collab\Log\Entry\CreateCollabLogEntry;
12
use Bitrix\Socialnetwork\Control\Command\AddCommand;
13
use Bitrix\Socialnetwork\Control\Handler\Add\AddHandlerInterface;
14
use Bitrix\Socialnetwork\Control\Handler\HandlerResult;
15
use Bitrix\Socialnetwork\Item\Workgroup;
16
17
class
AddLogEntryHandler
implements
AddHandlerInterface
18
{
19
public
function
add
(
AddCommand
$command,
Workgroup
$entity
):
HandlerResult
20
{
21
$handlerResult =
new
HandlerResult
();
22
23
if
(!($command instanceof
CollabAddCommand
) || !(
$entity
instanceof
Collab
))
24
{
25
$handlerResult->addError(
new
Error
(
'Unexpected command type'
));
26
27
return
$handlerResult;
28
}
29
30
$logEntry =
new
CreateCollabLogEntry
(
31
userId: $command->getInitiatorId(),
32
collabId:
$entity
->getId(),
33
);
34
35
$logEntry->setDescription($command->getDescription() ??
''
);
36
37
try
38
{
39
$service
= ServiceLocator::getInstance()->get(
'socialnetwork.collab.log.service'
);
40
$service
->save($logEntry);
41
}
42
catch
(\Exception $exception)
43
{
44
$handlerResult->addError(Error::createFromThrowable($exception));
45
}
46
47
return
$handlerResult;
48
}
49
}
Bitrix\Main\Error
Определения
error.php:15
Bitrix\Socialnetwork\Collab\Collab
Определения
Collab.php:16
Bitrix\Socialnetwork\Collab\Control\Command\CollabAddCommand
Определения
CollabAddCommand.php:34
Bitrix\Socialnetwork\Collab\Control\Handler\Add\AddLogEntryHandler
Определения
AddLogEntryHandler.php:18
Bitrix\Socialnetwork\Collab\Control\Handler\Add\AddLogEntryHandler\add
add(AddCommand $command, Workgroup $entity)
Определения
AddLogEntryHandler.php:19
Bitrix\Socialnetwork\Collab\Log\Entry\CreateCollabLogEntry
Определения
CreateCollabLogEntry.php:8
Bitrix\Socialnetwork\Control\Command\AddCommand
Определения
AddCommand.php:61
Bitrix\Socialnetwork\Control\Handler\HandlerResult
Определения
HandlerResult.php:10
$entity
$entity
Определения
group_bizproc_workflow_delete.php:17
Bitrix\Socialnetwork\Control\Handler\Add\AddHandlerInterface
Определения
AddHandlerInterface.php:10
Bitrix\Socialnetwork\Helper\Workgroup
Определения
access.php:9
$service
$service
Определения
payment.php:18
bitrix
modules
socialnetwork
lib
Collab
Control
Handler
Add
AddLogEntryHandler.php
Создано системой
1.14.0