1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
messagemapper.php
См. документацию.
1<?php
2
3namespace Bitrix\Calendar\Core\Queue\Message;
4
5use Bitrix\Calendar\Core;
6use Bitrix\Calendar\Core\Mappers\Mapper;
7use Bitrix\Calendar\Internals\EO_QueueMessage;
8use Bitrix\Calendar\Internals\QueueMessageTable;
9use Bitrix\Main\ArgumentException;
10use Bitrix\Main\ObjectPropertyException;
11use Bitrix\Main\ORM\Query\Result;
12use Bitrix\Main\SystemException;
13use Bitrix\Main\Type\DateTime;
14use Exception;
15
16class MessageMapper extends Mapper
17{
18
22 protected function getEntityClass(): string
23 {
24 return Message::class;
25 }
26
37 {
38 $params['select'] = $params['select'] ?? ["*"];
40 }
41
51 protected function getOneEntityByFilter(array $filter): ?object
52 {
54 $messageData = $this->getDataManagerResult([
55 'filter' => $filter,
56 'select' => ['*'],
57 'limit' => 1
58 ])->fetchObject();
59
60 if ($messageData)
61 {
62 return $this->convertToObject($messageData);
63 }
64
65 return null;
66 }
67
73 protected function convertToObject($objectEO): ?Core\Base\EntityInterface
74 {
75 return (new BuilderMessageFromDataManager($objectEO))->build();
76 }
77
81 protected function getEntityName(): string
82 {
83 return 'queueMessage';
84 }
85
96 {
97 $data = $this->convertToArray($entity);
98 $data['DATE_CREATE'] = new DateTime();
100 if ($result->isSuccess())
101 {
102 return $entity->setId($result->getId());
103 }
104
105 throw new Core\Base\BaseException('Error of create Queue message', 400);
106 }
107
118 {
119 $data = $this->convertToArray($entity);
121 if ($result->isSuccess())
122 {
123 return $entity;
124 }
125
126 throw new Core\Base\BaseException('Error of update Queue message', 400);
127 }
128
139 {
141 if ($result->isSuccess())
142 {
143 return null;
144 }
145
146 throw new Core\Base\BaseException('Error of delete Queue message');
147 }
148
154 private function convertToArray(Message $entity): array
155 {
156 return [
157 'MESSAGE' => [
158 Dictionary::MESSAGE_PARTS['body'] => $entity->getBody(),
159 Dictionary::MESSAGE_PARTS['headers'] => $entity->getHeaders(),
160 Dictionary::MESSAGE_PARTS['properties'] => $entity->getProperties(),
161 ],
162 ];
163 }
164}
updateEntity($entity, array $params=[])
Определения messagemapper.php:117
deleteEntity(Core\Base\EntityInterface $entity, array $params)
Определения messagemapper.php:138
createEntity($entity, array $params=[])
Определения messagemapper.php:95
static getList(array $parameters=array())
Определения datamanager.php:431
static delete($primary)
Определения datamanager.php:1644
static add(array $data)
Определения datamanager.php:877
static update($primary, array $data)
Определения datamanager.php:1256
$data['IS_AVAILABLE']
Определения .description.php:13
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$result
Определения get_property_values.php:14
$entity
$filter
Определения iblock_catalog_list.php:54
if($inWords) echo htmlspecialcharsbx(Number2Word_Rus(roundEx($totalVatSum $params['CURRENCY']
Определения template.php:799