When restoring an organisation that was rejected, revert the approval request as well

This commit is contained in:
2022-02-11 13:38:24 +00:00
parent 016f7489c4
commit f4fba338c5
2 changed files with 32 additions and 0 deletions

View File

@@ -114,6 +114,34 @@ class OrganisationApprovalRepository extends TokenRepository
return $model;
}
/**
* Reverts a token request without requiring the token (admin overrride)
*/
public function revert(OrganisationInterface $organisation)
{
$model = $this->classMapper->getClassMapping($this->modelIdentifier)::query()
->where('organisation_id', $organisation->id)
->where('completed', true)
->first();
if ($model === null) {
return false;
}
// Begin transaction - DB will be rolled back if an exception occurs
Capsule::transaction(function () use ($model) {
$model->fill([
'completed' => false,
'completed_at' => null,
'approver_id' => null,
]);
$model->save();
});
return $model;
}
/**
* {@inheritdoc}
*/