Skip to content

Commit bbc318e

Browse files
authored
Merge pull request #186 from bitrix24/feature/166-change-app-installation-signatures
Feature/166 change app installation signatures
2 parents 399066a + 4c9b381 commit bbc318e

11 files changed

+1050
-446
lines changed

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,15 @@
109109
- added method `isApplicationTokenValid`
110110
- changed method `public function applicationInstalled(?string $applicationToken): void` application token now is nullable
111111
- changed method `public function applicationUninstalled(?string $applicationToken): void` application token now is nullable
112+
- added method `linkContactPerson(Uuid $uuid)`
113+
- added method `linkBitrix24Partner()`
114+
- added method `unlinkBitrix24Partner()`
115+
- added method `unlinkContactPerson()`
116+
- added method `linkBitrix24PartnerContactPerson()`
117+
- added method `unlinkBitrix24PartnerContactPerson()`
118+
- remove method `changeContactPerson(?Uuid $uuid)`
119+
- remove method `changeBitrix24Partner(?Uuid $uuid)`
120+
- remove method `changeBitrix24PartnerContactPerson(?Uuid $uuid)`
112121

113122
### Statistics
114123

src/Application/Contracts/ApplicationInstallations/Docs/ApplicationInstallations.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,14 @@ Optional can store links to:
1414
| `getUpdatedAt()` | `CarbonImmutable` | Returns date and time of last application installation change | |
1515
| `getBitrix24AccountId()` | `Uuid` | Returns Bitrix24 Account id related to this installation | |
1616
| `getContactPersonId()` | `?Uuid` | Returns contact person id who installed the application on portal (optional) | |
17-
| `changeContactPerson()` | `void` | Changes client contact person | |
17+
| `linkContactPerson()` | `void` | Link client contact person | |
18+
| `unlinkContactPerson()` | `void` | Unlink client contact person | |
1819
| `getBitrix24PartnerContactPersonId()` | `?Uuid` | Returns Bitrix24 partner contact person id (optional) | |
19-
| `changeBitrix24PartnerContactPerson()` | `void` | Changes Bitrix24 partner contact person | |
20+
| `linkBitrix24PartnerContactPerson()` | `void` | Link Bitrix24 partner contact person | |
21+
| `unlinkBitrix24PartnerContactPerson()` | `void` | Unlink Bitrix24 partner contact person | |
2022
| `getBitrix24PartnerId()` | `?Uuid` | Returns Bitrix24 Partner id related to this installation (optional) | |
21-
| `changeBitrix24Partner()` | `void` | Changes Bitrix24 partner | |
23+
| `linkBitrix24Partner()` | `void` | Link Bitrix24 partner | |
24+
| `unlinkBitrix24Partner()` | `void` | Unlink Bitrix24 partner | |
2225
| `getExternalId()` | `?string` | Returns external id for application installation | |
2326
| `setExternalId()` | `void` | Sets external id for application installation | `InvalidArgumentException` |
2427
| `getStatus()` | `ApplicationInstallationStatus` | Returns application installation status | |

src/Application/Contracts/ApplicationInstallations/Entity/ApplicationInstallationInterface.php

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,18 @@ public function getBitrix24AccountId(): Uuid;
5757
public function getContactPersonId(): ?Uuid;
5858

5959
/**
60-
* Change contact person
60+
* Link contact person
6161
*
62-
* Change client contact person if client say he has new responsible for the application
62+
* Link client contact person if a client says they have new responsible for the application
6363
*/
64-
public function changeContactPerson(?Uuid $uuid): void;
64+
public function linkContactPerson(Uuid $uuid): void;
65+
66+
/**
67+
* Unlink contact person
68+
*
69+
* Unlink a client contact person if the client says the contact person has changed
70+
*/
71+
public function unlinkContactPerson(): void;
6572

6673
/**
6774
* Get Bitrix24 Partner contact person id, optional
@@ -71,23 +78,37 @@ public function changeContactPerson(?Uuid $uuid): void;
7178
public function getBitrix24PartnerContactPersonId(): ?Uuid;
7279

7380
/**
74-
* Change bitrix24 partner contact person
81+
* Link Bitrix24 partner contact person
82+
*
83+
* Link Bitrix24 partner contact person if partner say he has new responsible for the application
84+
*/
85+
public function linkBitrix24PartnerContactPerson(Uuid $uuid): void;
86+
87+
/**
88+
* Unlink Bitrix24 partner contact person
7589
*
76-
* Change bitrix24 partner contact person if partner say he has new responsible for the application
90+
* Unlink Bitrix24 partner contacts the person if the partner says they remove this employee
7791
*/
78-
public function changeBitrix24PartnerContactPerson(?Uuid $uuid): void;
92+
public function unlinkBitrix24PartnerContactPerson(): void;
7993

8094
/**
8195
* @return Uuid|null get Bitrix24 Partner id related with this installation, optional
8296
*/
8397
public function getBitrix24PartnerId(): ?Uuid;
8498

8599
/**
86-
* Change bitrix24 partner
100+
* Link Bitrix24 partner
101+
*
102+
* Link Bitrix24 partner who supports this portal
103+
*/
104+
public function linkBitrix24Partner(Uuid $uuid): void;
105+
106+
/**
107+
* Unlink Bitrix24 partner
87108
*
88-
* Change bitrix24 partner if other partner starts support client portal
109+
* Unlink Bitrix24 partner who stops supporting this portal
89110
*/
90-
public function changeBitrix24Partner(?Uuid $uuid): void;
111+
public function unlinkBitrix24Partner(): void;
91112

92113
/**
93114
* Get external id for application installation

src/Application/Contracts/ApplicationInstallations/Events/ApplicationInstallationContactPersonChangedEvent.php renamed to src/Application/Contracts/ApplicationInstallations/Events/ApplicationInstallationBitrix24PartnerContactPersonLinkedEvent.php

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@
1717
use Symfony\Component\Uid\Uuid;
1818
use Symfony\Contracts\EventDispatcher\Event;
1919

20-
class ApplicationInstallationContactPersonChangedEvent extends Event
20+
class ApplicationInstallationBitrix24PartnerContactPersonLinkedEvent extends Event
2121
{
2222
public function __construct(
23-
public readonly Uuid $applicationInstallationId,
23+
public readonly Uuid $applicationInstallationId,
2424
public readonly CarbonImmutable $timestamp,
25-
public readonly ?Uuid $previousContactPersonId,
26-
public readonly ?Uuid $currentContactPersonId)
27-
{
25+
public readonly Uuid $bitrix24PartnerContactPersonId
26+
) {
2827
}
2928
}
Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@
1717
use Symfony\Component\Uid\Uuid;
1818
use Symfony\Contracts\EventDispatcher\Event;
1919

20-
class ApplicationInstallationBitrix24PartnerContactPersonChangedEvent extends Event
20+
class ApplicationInstallationBitrix24PartnerContactPersonUnlinkedEvent extends Event
2121
{
2222
public function __construct(
23-
public readonly Uuid $applicationInstallationId,
23+
public readonly Uuid $applicationInstallationId,
2424
public readonly CarbonImmutable $timestamp,
25-
public readonly ?Uuid $previousBitrix24PartnerContactPersonId,
26-
public readonly ?Uuid $currentBitrix24PartnerContactPersonId)
27-
{
25+
public readonly Uuid $unlinkedBitrix24PartnerContactPersonId
26+
) {
2827
}
2928
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
/**
4+
* This file is part of the bitrix24-php-sdk package.
5+
*
6+
* © Maksim Mesilov <[email protected]>
7+
*
8+
* For the full copyright and license information, please view the MIT-LICENSE.txt
9+
* file that was distributed with this source code.
10+
*/
11+
12+
declare(strict_types=1);
13+
14+
namespace Bitrix24\SDK\Application\Contracts\ApplicationInstallations\Events;
15+
16+
use Carbon\CarbonImmutable;
17+
use Symfony\Component\Uid\Uuid;
18+
use Symfony\Contracts\EventDispatcher\Event;
19+
20+
class ApplicationInstallationBitrix24PartnerLinkedEvent extends Event
21+
{
22+
public function __construct(
23+
public readonly Uuid $applicationInstallationId,
24+
public readonly CarbonImmutable $timestamp,
25+
public readonly Uuid $bitrix24PartnerId
26+
) {
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
/**
4+
* This file is part of the bitrix24-php-sdk package.
5+
*
6+
* © Maksim Mesilov <[email protected]>
7+
*
8+
* For the full copyright and license information, please view the MIT-LICENSE.txt
9+
* file that was distributed with this source code.
10+
*/
11+
12+
declare(strict_types=1);
13+
14+
namespace Bitrix24\SDK\Application\Contracts\ApplicationInstallations\Events;
15+
16+
use Carbon\CarbonImmutable;
17+
use Symfony\Component\Uid\Uuid;
18+
use Symfony\Contracts\EventDispatcher\Event;
19+
20+
class ApplicationInstallationBitrix24PartnerUnlinkedEvent extends Event
21+
{
22+
public function __construct(
23+
public readonly Uuid $applicationInstallationId,
24+
public readonly CarbonImmutable $timestamp,
25+
public readonly Uuid $unlinkedBitrix24PartnerId
26+
) {
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
/**
4+
* This file is part of the bitrix24-php-sdk package.
5+
*
6+
* © Maksim Mesilov <[email protected]>
7+
*
8+
* For the full copyright and license information, please view the MIT-LICENSE.txt
9+
* file that was distributed with this source code.
10+
*/
11+
12+
declare(strict_types=1);
13+
14+
namespace Bitrix24\SDK\Application\Contracts\ApplicationInstallations\Events;
15+
16+
use Carbon\CarbonImmutable;
17+
use Symfony\Component\Uid\Uuid;
18+
use Symfony\Contracts\EventDispatcher\Event;
19+
20+
class ApplicationInstallationContactPersonLinkedEvent extends Event
21+
{
22+
public function __construct(
23+
public readonly Uuid $applicationInstallationId,
24+
public readonly CarbonImmutable $timestamp,
25+
public readonly Uuid $contactPersonId
26+
) {
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?php
2+
3+
/**
4+
* This file is part of the bitrix24-php-sdk package.
5+
*
6+
* © Maksim Mesilov <[email protected]>
7+
*
8+
* For the full copyright and license information, please view the MIT-LICENSE.txt
9+
* file that was distributed with this source code.
10+
*/
11+
12+
declare(strict_types=1);
13+
14+
namespace Bitrix24\SDK\Application\Contracts\ApplicationInstallations\Events;
15+
16+
use Carbon\CarbonImmutable;
17+
use Symfony\Component\Uid\Uuid;
18+
use Symfony\Contracts\EventDispatcher\Event;
19+
20+
class ApplicationInstallationContactPersonUnlinkedEvent extends Event
21+
{
22+
public function __construct(
23+
public readonly Uuid $applicationInstallationId,
24+
public readonly CarbonImmutable $timestamp,
25+
public readonly Uuid $unlinkedContactPersonId
26+
) {
27+
}
28+
}

0 commit comments

Comments
 (0)