Skip to content

Commit

Permalink
UML-3570 removed original, inactive and active attoryneys
Browse files Browse the repository at this point in the history
  • Loading branch information
allenannom committed Nov 12, 2024
1 parent 00c7df8 commit ce2bd3a
Show file tree
Hide file tree
Showing 7 changed files with 82 additions and 76 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ public function validateDetails(string $code, string $uid, string $dob): ?array
$actor = ($this->resolveActor)($lpa->getData(), $actorUid);

$lpaData = $lpa->getData();
unset($lpaData['original_attorneys']);

return [
'actor' => $actor,
Expand Down
3 changes: 0 additions & 3 deletions service-api/app/src/App/src/Service/Lpa/SiriusLpa.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,6 @@ public function __construct(private array $lpa)
}

$this->transformArrayToSiriusPersons('attorneys');
$this->transformArrayToSiriusPersons('original_attorneys');
$this->transformArrayToSiriusPersons('inactiveAttorneys');
$this->transformArrayToSiriusPersons('activeAttorneys');
$this->transformArrayToSiriusPersons('trustCorporations');
}

Expand Down
15 changes: 1 addition & 14 deletions service-api/app/src/App/src/Service/Lpa/SiriusLpaManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,23 +48,13 @@ public function getByUid(string $uid): ?LpaInterface
$lpaData = $lpa->getData();

if ($lpaData['attorneys'] !== null) {
$lpaData['original_attorneys'] = $lpaData['attorneys'];
$lpaData['activeAttorneys'] = array_values(
$lpaData['attorneys'] = array_values(
array_filter($lpaData['attorneys'], function ($attorney) {
return ($this->getAttorneyStatus)($attorney) === AttorneyStatus::ACTIVE_ATTORNEY;
})
);
}

if ($lpaData['attorneys'] !== null) {
$lpaData['original_attorneys'] = $lpaData['attorneys'];
$lpaData['inactiveAttorneys'] = array_values(
array_filter($lpaData['attorneys'], function ($attorney) {
return ($this->getAttorneyStatus)($attorney) === AttorneyStatus::INACTIVE_ATTORNEY;
})
);
}

if ($lpaData['trustCorporations'] !== null) {
$lpaData['trustCorporations'] = array_values(
array_filter($lpaData['trustCorporations'], function ($trustCorporation) {
Expand Down Expand Up @@ -93,7 +83,6 @@ public function getByUserLpaActorToken(string $token, string $userId): ?array
}

$lpaData = $lpa->getData();
unset($lpaData['original_attorneys']);

$result = [
'user-lpa-actor-token' => $map['Id'],
Expand Down Expand Up @@ -183,7 +172,6 @@ public function getByViewerCode(string $viewerCode, string $donorSurname, ?strin
}

$lpaData = $lpa->getData();
unset($lpaData['original_attorneys']);

$result = [
'date' => $lpa->getLookupTime()->format('c'),
Expand Down Expand Up @@ -241,7 +229,6 @@ private function lookupAndFormatLpas(array $lpaActorMaps): array
$actor = ($this->resolveActor)($lpaData, (string) $item['ActorId']);

$added = $item['Added']->format('Y-m-d H:i:s');
unset($lpaData['original_attorneys']);

//Extract and return only LPA's where status is Registered or Cancelled
if (($this->isValidLpa)($lpaData)) {
Expand Down
17 changes: 0 additions & 17 deletions service-api/app/test/AppTest/Service/Lpa/SiriusLpaManagerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -115,17 +115,8 @@ public function can_get_by_id(): void
[
'attorneys' => [
['id' => 1, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => true],
['id' => 2, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => false],
['id' => 3, 'firstname' => 'A', 'systemStatus' => true],
['id' => 4, 'surname' => 'B', 'systemStatus' => true],
['id' => 5, 'systemStatus' => true],
],
'original_attorneys' => [
['id' => 1, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => true],
['id' => 2, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => false],
['id' => 3, 'firstname' => 'A', 'systemStatus' => true],
['id' => 4, 'surname' => 'B', 'systemStatus' => true],
['id' => 5, 'systemStatus' => true],
],
'trustCorporations' => [
new SiriusPerson(
Expand All @@ -135,14 +126,6 @@ public function can_get_by_id(): void
'systemStatus' => true,
]),
],
'inactiveAttorneys' => [
['id' => 2, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => false],
],
'activeAttorneys' => [
['id' => 1, 'firstname' => 'A', 'surname' => 'B', 'systemStatus' => true],
['id' => 3, 'firstname' => 'A', 'systemStatus' => true],
['id' => 4, 'surname' => 'B', 'systemStatus' => true],
],
],
),
$lpaResponse->getLookupTime()
Expand Down
5 changes: 2 additions & 3 deletions service-front/app/src/Common/src/Service/Lpa/ParseLpaData.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,8 @@ public function __invoke(array $data): ArrayObject
//introduce feature flag here #3551
//the lpaData array converted to object using hydrator
if (($this->featureEnabled)('support_datastore_lpas')) {
$mockedCombinedLpa = $this->getMockedCombinedFormat();
$CombinedLpa = ($this->lpaDataFormatter)($mockedCombinedLpa);
$CombinedLpa->activeAttorneys = $CombinedLpa->attorneys;
$mockedCombinedLpa = $this->getMockedCombinedFormat();
$CombinedLpa = ($this->lpaDataFormatter)($mockedCombinedLpa);

$data['lpa'] = $CombinedLpa;
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,42 +32,84 @@
</dd>
</div>
</dl>
{% if not feature_enabled("support_datastore_lpas") %}
{% for attorney in lpa.activeAttorneys %}
<h3 class="govuk-heading-m">{% trans count loop.index with {'%attorneyOrdinal%': loop.index | ordinal} %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_name(attorney) }}</dd>
</div>
{% if attorney.otherNames %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Also known as{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ attorney.otherNames }}</dd>
</div>
{% endif %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Date of birth{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ lpa_date(attorney.dob) }}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(attorney) }}</dd>
</div>
</dl>
{% endfor %}

{% for attorney in lpa.activeAttorneys %}
<h3 class="govuk-heading-m">{% trans count loop.index with {'%attorneyOrdinal%': loop.index | ordinal} %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_name(attorney) }}</dd>
</div>
{% if attorney.otherNames %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Also known as{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ attorney.otherNames }}</dd>
</div>
{% endif %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Date of birth{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ lpa_date(attorney.dob) }}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(attorney) }}</dd>
</div>
</dl>
{% endfor %}
{% for tc in lpa.trustCorporations %}
{% set i = loop.index + lpa.activeAttorneys | length %}
<h3 class="govuk-heading-m">{% trans count i with {'%attorneyOrdinal%': i | ordinal } %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ tc.companyName }} {% trans %}(Trust corporation){% endtrans %}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(tc) }}</dd>
</div>
</dl>
{% endfor %}
{% endif %}

{% if feature_enabled("support_datastore_lpas") %}
{% for attorney in lpa.attorneys %}
<h3 class="govuk-heading-m">{% trans count loop.index with {'%attorneyOrdinal%': loop.index | ordinal} %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_name(attorney) }}</dd>
</div>
{% if attorney.otherNames %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Also known as{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ attorney.otherNames }}</dd>
</div>
{% endif %}
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Date of birth{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ lpa_date(attorney.dob) }}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(attorney) }}</dd>
</div>
</dl>
{% endfor %}

{% for tc in lpa.trustCorporations %}
{% set i = loop.index + lpa.activeAttorneys | length %}
<h3 class="govuk-heading-m">{% trans count i with {'%attorneyOrdinal%': i | ordinal } %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ tc.companyName }} {% trans %}(Trust corporation){% endtrans %}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(tc) }}</dd>
</div>
</dl>
{% endfor %}
{% for tc in lpa.trustCorporations %}
{% set i = loop.index + lpa.attorneys | length %}
<h3 class="govuk-heading-m">{% trans count i with {'%attorneyOrdinal%': i | ordinal } %}%attorneyOrdinal% attorney|%attorneyOrdinal% attorney{% endtrans %}</h3>
<dl class="govuk-summary-list govuk-summary-list--no-border">
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Name{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ tc.companyName }} {% trans %}(Trust corporation){% endtrans %}</dd>
</div>
<div class="govuk-summary-list__row">
<dt class="govuk-summary-list__key">{% trans %}Address{% endtrans %}</dt>
<dd class="govuk-summary-list__value">{{ actor_address(tc) }}</dd>
</div>
</dl>
{% endfor %}
{% endif %}
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,6 @@ public function it_correctly_parses_an_combined_lpa_api_response(): void
{
$combinedFormat = $this->getMockedCombinedFormat();
$expectedSiriusLpa = $this->expectedSiriusLpa();
$expectedSiriusLpa->activeAttorneys = $this->expectedAttorneys();

$this->lpaFactory->createLpaFromData($this->lpaData['lpa'])->willReturn($combinedFormat);
$this->lpaFactory->createCaseActorFromData($this->lpaData['actor']['details'])->willReturn($this->actor);
Expand Down

0 comments on commit ce2bd3a

Please sign in to comment.