feat: adjust data returned by api calls for myep
This commit is contained in:
@@ -53,26 +53,21 @@ class ProductApiMiddleware implements MiddlewareInterface
|
||||
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)
|
||||
->getQueryBuilderForTable('tx_epproducts_domain_model_product');
|
||||
|
||||
$product = $queryBuilder
|
||||
$data = $queryBuilder
|
||||
->select(
|
||||
'uid',
|
||||
'name',
|
||||
'code',
|
||||
'headline',
|
||||
'teaser',
|
||||
'teaser_long',
|
||||
'concept_description',
|
||||
'board_description',
|
||||
'programme_description',
|
||||
'included_services',
|
||||
'additional_services',
|
||||
'ski_pass_alt_title',
|
||||
'ski_pass_description'
|
||||
'product.name as productName',
|
||||
'product.code as productCode',
|
||||
'country.name as countryName',
|
||||
'region.name as regionName',
|
||||
'city.name as cityName',
|
||||
)
|
||||
->from('tx_epproducts_domain_model_product')
|
||||
->from('tx_epproducts_domain_model_product', 'product')
|
||||
->leftJoin('product', 'tx_epproducts_domain_model_country', 'country', 'product.country = country.uid')
|
||||
->leftJoin('product', 'tx_epproducts_domain_model_region', 'region', 'product.region = region.uid')
|
||||
->leftJoin('product', 'tx_epproducts_domain_model_city', 'city', 'product.city = city.uid')
|
||||
->where(
|
||||
$queryBuilder->expr()->eq(
|
||||
'code',
|
||||
'product.code',
|
||||
$queryBuilder->createNamedParameter($productCode)
|
||||
)
|
||||
)
|
||||
@@ -81,27 +76,28 @@ class ProductApiMiddleware implements MiddlewareInterface
|
||||
->fetchAssociative()
|
||||
;
|
||||
|
||||
if (false === $product) {
|
||||
if (false === $data) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$images = GeneralUtility::makeInstance(ProductImageService::class)
|
||||
->getImages((int) $product['uid']);
|
||||
->getImages((int) $data['uid']);
|
||||
|
||||
return [
|
||||
'name' => $product['name'],
|
||||
'code' => $product['code'],
|
||||
'headline' => $product['headline'],
|
||||
'teaser' => $product['teaser'],
|
||||
'teaserLong' => $product['teaser_long'],
|
||||
'conceptDescription' => $product['concept_description'],
|
||||
'boardDescription' => $product['board_description'],
|
||||
'programmeDescription' => $product['programme_description'],
|
||||
'includedServices' => $product['included_services'],
|
||||
'additionalServices' => $product['additional_services'],
|
||||
'skiPassAltTitle' => $product['ski_pass_alt_title'],
|
||||
'skiPassDescription' => $product['ski_pass_description'],
|
||||
'images' => $images,
|
||||
'product' => [
|
||||
'name' => $data['productName'],
|
||||
'code' => $data['productCode'],
|
||||
'images' => $images,
|
||||
],
|
||||
'country' => [
|
||||
'name' => $data['countryName'],
|
||||
],
|
||||
'region' => [
|
||||
'name' => $data['regionName'],
|
||||
],
|
||||
'city' => [
|
||||
'name' => $data['cityName'],
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user