1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
accounttbankbusiness.php
См. документацию.
1<?php
2
4
5use Bitrix\Crm\ItemIdentifier;
6use Bitrix\Crm\Requisite\DefaultRequisite;
11use CCrmCompany;
12use CCrmOwnerType;
13
15{
16 public const TYPE_CODE = 'tbankbusiness';
17
18 public static function getService(): Service
19 {
20 return Service::getInstance();
21 }
22
23 public static function registerMyCompanyOption(int $selectedCompany): void
24 {
25 if (!CCrmCompany::Exists($selectedCompany))
26 {
27 return;
28 }
29
30 $companyId = new ItemIdentifier(CCrmOwnerType::Company, $selectedCompany);
31 $requisite = new DefaultRequisite($companyId);
32 $requisiteInfo = $requisite->get();
33 $inn = $requisiteInfo['RQ_INN'] ?? null;
34 $kpp = $requisiteInfo['RQ_KPP'] ?? null;
35
36 $companyDataToSave = [
37 'ID' => $selectedCompany,
38 'INN' => $inn,
39 ];
40
41 if (!empty($kpp))
42 {
43 $companyDataToSave['KPP'] = $kpp;
44 }
45
46 Option::set(
47 'sale',
48 'TBANKBUSINESS_SELECTED_MY_COMPANY_JSON_DATA',
49 Json::encode($companyDataToSave),
50 );
51 }
52
53 public static function deleteMyCompanyOption(): void
54 {
55 Option::delete('sale', ['name' => 'TBANKBUSINESS_SELECTED_MY_COMPANY_JSON_DATA']);
56 }
57
58 public function getProfile(): ?array
59 {
60 $myCompanyDecodedInfo = Option::get('sale', 'TBANKBUSINESS_SELECTED_MY_COMPANY_JSON_DATA');
61
62 if (empty($myCompanyDecodedInfo))
63 {
64 return null;
65 }
66
67 try
68 {
69 $myCompanyInfo = Json::decode($myCompanyDecodedInfo);
70 }
72 {
73 return null;
74 }
75
76 if (
77 empty($myCompanyInfo['ID'])
78 || empty($myCompanyInfo['INN'])
79 )
80 {
81 return null;
82 }
83
84 $companyTitle = CCrmOwnerType::GetCaption(CCrmOwnerType::Company, $myCompanyInfo['ID']);
85
86 if (empty($companyTitle))
87 {
88 return null;
89 }
90
91 return [
92 'ID' => $myCompanyInfo['ID'],
93 'TITLE' => $companyTitle,
94 'INN' => $myCompanyInfo['INN'],
95 'KPP' => $myCompanyInfo['KPP'] ?? '0',
96 ];
97 }
98
99 public static function removeAuth(): void
100 {
101 static::getService()->getAuthAdapter(self::TYPE_CODE)->removeAuth();
102 static::deleteMyCompanyOption();
103 }
104}
Определения json.php:9
static getInstance()
Определения service.php:21
static registerMyCompanyOption(int $selectedCompany)
Определения accounttbankbusiness.php:23
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804