Skip to content

Commit

Permalink
CC-25813: Tech Debt for AclMerchantPortal module (#9927)
Browse files Browse the repository at this point in the history
Tech Debt for AclMerchantPortal module
  • Loading branch information
dmiseev authored Mar 10, 2023
1 parent 8f75986 commit a23d3f5
Show file tree
Hide file tree
Showing 4 changed files with 71 additions and 0 deletions.
2 changes: 2 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"license": "proprietary",
"require": {
"php": ">=8.0",
"spryker/acl-merchant-portal-extension": "^1.0.0",
"spryker/company": "^1.0.0",
"spryker/company-business-unit-extension": "^1.2.0",
"spryker/company-extension": "^1.0.0",
Expand All @@ -13,6 +14,7 @@
"spryker/customer": "^7.0.0",
"spryker/kernel": "^3.30.0",
"spryker/propel-orm": "^1.0.0",
"spryker/transfer": "^3.25.0",
"spryker/zed-request": "^3.0.0"
},
"require-dev": {
Expand Down
5 changes: 5 additions & 0 deletions dependency.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"include": {
"spryker/transfer": "Provides transfer objects definition with `::get*OrFail()` functionality."
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -99,4 +99,22 @@
<transfer name="Company">
<property name="idCompany" type="int"/>
</transfer>

<transfer name="AclEntityMetadataConfig">
<property name="aclEntityMetadataCollection" type="AclEntityMetadataCollection"/>
</transfer>

<transfer name="AclEntityMetadataCollection">
<property name="collection" type="array" singular="aclEntityMetadata" associative="true"/>
</transfer>

<transfer name="AclEntityMetadata">
<property name="entityName" type="string"/>
<property name="parent" type="AclEntityParentMetadata"/>
<property name="isSubEntity" type="bool"/>
</transfer>

<transfer name="AclEntityParentMetadata">
<property name="entityName" type="string"/>
</transfer>
</transfers>
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<?php

/**
* Copyright © 2016-present Spryker Systems GmbH. All rights reserved.
* Use of this software requires acceptance of the Evaluation License Agreement. See LICENSE file.
*/

namespace Spryker\Zed\CompanyBusinessUnit\Communication\Plugin\AclMerchantPortal;

use Generated\Shared\Transfer\AclEntityMetadataConfigTransfer;
use Generated\Shared\Transfer\AclEntityMetadataTransfer;
use Generated\Shared\Transfer\AclEntityParentMetadataTransfer;
use Spryker\Zed\AclMerchantPortalExtension\Dependency\Plugin\AclEntityConfigurationExpanderPluginInterface;
use Spryker\Zed\Kernel\Communication\AbstractPlugin;

/**
* @method \Spryker\Zed\CompanyBusinessUnit\Business\CompanyBusinessUnitFacadeInterface getFacade()
* @method \Spryker\Zed\CompanyBusinessUnit\CompanyBusinessUnitConfig getConfig()
*/
class CompanyBusinessUnitAclEntityConfigurationExpanderPlugin extends AbstractPlugin implements AclEntityConfigurationExpanderPluginInterface
{
/**
* {@inheritDoc}
* - Expands provided `AclEntityMetadataConfig` transfer object with company business unit composite data.
*
* @api
*
* @param \Generated\Shared\Transfer\AclEntityMetadataConfigTransfer $aclEntityMetadataConfigTransfer
*
* @return \Generated\Shared\Transfer\AclEntityMetadataConfigTransfer
*/
public function expand(AclEntityMetadataConfigTransfer $aclEntityMetadataConfigTransfer): AclEntityMetadataConfigTransfer
{
$aclEntityMetadataConfigTransfer
->getAclEntityMetadataCollectionOrFail()
->addAclEntityMetadata(
'Orm\Zed\Company\Persistence\SpyCompany',
(new AclEntityMetadataTransfer())
->setEntityName('Orm\Zed\Company\Persistence\SpyCompany')
->setParent((new AclEntityParentMetadataTransfer())->setEntityName('Orm\Zed\CompanyBusinessUnit\Persistence\SpyCompanyBusinessUnit'))
->setIsSubEntity(true),
);

return $aclEntityMetadataConfigTransfer;
}
}

0 comments on commit a23d3f5

Please sign in to comment.