. */ namespace SP\Modules\Api\Controllers\UserGroup; use Exception; use SP\Core\Events\Event; use SP\Core\Events\EventMessage; use SP\Domain\Api\Dtos\ApiResponse; use SP\Domain\Core\Acl\AclActionsInterface; /** * Class DeleteController */ final class DeleteController extends UserGroupBase { /** * deleteAction */ public function deleteAction(): void { try { $this->setupApi(AclActionsInterface::GROUP_DELETE); $id = $this->apiService->getParamInt('id', true); $userGroupData = $this->userGroupService->getById($id); $this->userGroupService->delete($id); $this->eventDispatcher->notify( 'delete.userGroup', new Event( $this, EventMessage::factory() ->addDescription(__u('Group deleted')) ->addDetail(__u('Name'), $userGroupData->getName()) ->addDetail('ID', $id) ->addExtra('userGroupId', $id) ) ); $this->returnResponse(ApiResponse::makeSuccess($userGroupData, $id, __('Group deleted'))); } catch (Exception $e) { processException($e); $this->returnResponseException($e); } } }