/** * @param \Spryker\Zed\Gui\Communication\Table\TableConfiguration $config * * @return array */ protected function prepareData(TableConfiguration $config) { $rulesetQuery = $this->aclQueryContainer->queryRuleByRoleId($this->idRole); $queryResults = $this->runQuery($rulesetQuery, $config); $results = []; foreach ($queryResults as $ruleset) { $results[] = [SpyAclRuleTableMap::COL_BUNDLE => $ruleset[SpyAclRuleTableMap::COL_BUNDLE], SpyAclRuleTableMap::COL_CONTROLLER => $ruleset[SpyAclRuleTableMap::COL_CONTROLLER], SpyAclRuleTableMap::COL_ACTION => $ruleset[SpyAclRuleTableMap::COL_ACTION], SpyAclRuleTableMap::COL_TYPE => $ruleset[SpyAclRuleTableMap::COL_TYPE], self::ACTIONS => implode(' ', $this->createTableActions($ruleset))]; } return $results; }
/** * @param int $idRole * * @throws \Spryker\Zed\Acl\Business\Exception\RoleNotFoundException * * @return bool */ public function removeRoleById($idRole) { $aclRules = $this->queryContainer->queryRuleByRoleId($idRole)->find(); $aclRules->delete(); $aclRoleEntity = $this->queryContainer->queryRoleById($idRole)->delete(); if ($aclRoleEntity <= 0) { throw new RoleNotFoundException(); } return true; }