1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
responsiblecontact.php
См. документацию.
1<?php
2
3namespace Sale\Handlers\Delivery\Rest\DataProviders;
4
5use Bitrix\Sale;
6
12final class ResponsibleContact
13{
18 public static function getData(Sale\Shipment $shipment): ?array
19 {
20 $responsibleUserId = $shipment->getField('RESPONSIBLE_ID')
21 ? (int)$shipment->getField('RESPONSIBLE_ID')
22 : (int)$shipment->getField('EMP_RESPONSIBLE_ID');
23
24 if (!$responsibleUserId)
25 {
26 return null;
27 }
28
29 $responsibleUser = \CUser::GetList('id', 'asc', ['ID' => $responsibleUserId])->fetch();
30 if (!$responsibleUser)
31 {
32 return null;
33 }
34
35 return [
36 'NAME' => trim(
37 sprintf(
38 '%s %s',
39 $responsibleUser['NAME'],
40 $responsibleUser['LAST_NAME']
41 )
42 ),
43 'PHONES' => self::getUserPhones($responsibleUser),
44 ];
45 }
46
51 private static function getUserPhones(array $user): array
52 {
53 $result = [];
54
55 if (isset($user['WORK_PHONE']) && !empty($user['WORK_PHONE']))
56 {
57 $result[] = [
58 'TYPE' => 'WORK',
59 'VALUE' => $user['WORK_PHONE'],
60 ];
61 }
62
63 if (isset($user['PERSONAL_MOBILE']) && !empty($user['PERSONAL_MOBILE']))
64 {
65 $result[] = [
66 'TYPE' => 'MOBILE',
67 'VALUE' => $user['PERSONAL_MOBILE'],
68 ];
69 }
70
71 if (isset($user['PERSONAL_PHONE']) && !empty($user['PERSONAL_PHONE']))
72 {
73 $result[] = [
74 'TYPE' => 'HOME',
75 'VALUE' => $user['PERSONAL_PHONE'],
76 ];
77 }
78
79 if (isset($user['WORK_FAX']) && !empty($user['WORK_FAX']))
80 {
81 $result[] = [
82 'TYPE' => 'FAX',
83 'VALUE' => $user['WORK_FAX'],
84 ];
85 }
86
87 if (isset($user['PERSONAL_FAX']) && !empty($user['PERSONAL_FAX']))
88 {
89 $result[] = [
90 'TYPE' => 'FAX',
91 'VALUE' => $user['PERSONAL_FAX'],
92 ];
93 }
94
95 if (isset($user['WORK_PAGER']) && !empty($user['WORK_PAGER']))
96 {
97 $result[] = [
98 'TYPE' => 'PAGER',
99 'VALUE' => $user['WORK_PAGER'],
100 ];
101 }
102
103 if (isset($user['PERSONAL_PAGER']) && !empty($user['PERSONAL_PAGER']))
104 {
105 $result[] = [
106 'TYPE' => 'PAGER',
107 'VALUE' => $user['PERSONAL_PAGER'],
108 ];
109 }
110
111 return $result;
112 }
113}
</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
$user
Определения mysql_to_pgsql.php:33