SELECT
netting_products.*,
netting_product_descriptions.*,
COALESCE(
netting_master_products_storefront_min_price.price,
MIN(
IF(
netting_product_prices.percentage_discount = 0,
netting_product_prices.price,
netting_product_prices.price - (
netting_product_prices.price * netting_product_prices.percentage_discount
)/ 100
)
)
) as price,
GROUP_CONCAT(
CASE WHEN (
netting_products_categories.link_type = 'M'
) THEN CONCAT(
netting_products_categories.category_id,
'M'
) ELSE netting_products_categories.category_id END
ORDER BY
netting_categories.storefront_id IN (0, 1) DESC,
(
netting_products_categories.link_type = 'M'
) DESC,
netting_products_categories.category_position ASC,
netting_products_categories.category_id ASC
) as category_ids,
popularity.total as popularity,
companies.company as company_name,
netting_products.master_product_id,
netting_products.master_product_status,
netting_products.is_returnable,
netting_products.return_period,
netting_product_sales.amount as sales_amount,
netting_seo_names.name as seo_name,
netting_seo_names.path as seo_path,
netting_booking_and_reservation.booking_type as booking_type,
netting_booking_and_reservation.date_from as date_from,
netting_booking_and_reservation.date_to as date_to,
netting_booking_and_reservation.book_time as book_time,
netting_booking_and_reservation.break_time as break_time,
netting_booking_and_reservation.week_data as week_data,
netting_booking_and_reservation.apply_same_slots as apply_same_slots,
netting_discussion.type as discussion_type,
netting_product_review_prepared_data.average_rating average_rating,
netting_product_review_prepared_data.reviews_count product_reviews_count
FROM
netting_products
LEFT JOIN netting_product_prices ON netting_product_prices.product_id = netting_products.product_id
AND netting_product_prices.lower_limit = 1
AND netting_product_prices.usergroup_id IN (0, 0, 1)
LEFT JOIN netting_product_descriptions ON netting_product_descriptions.product_id = netting_products.product_id
AND netting_product_descriptions.lang_code = 'en'
LEFT JOIN netting_companies as companies ON companies.company_id = netting_products.company_id
INNER JOIN netting_products_categories ON netting_products_categories.product_id = netting_products.product_id
INNER JOIN netting_categories ON netting_categories.category_id = netting_products_categories.category_id
AND netting_categories.storefront_id IN (0, 1)
AND (
netting_categories.usergroup_ids = ''
OR FIND_IN_SET(
0, netting_categories.usergroup_ids
)
OR FIND_IN_SET(
1, netting_categories.usergroup_ids
)
)
AND (
netting_products.usergroup_ids = ''
OR FIND_IN_SET(
0, netting_products.usergroup_ids
)
OR FIND_IN_SET(
1, netting_products.usergroup_ids
)
)
AND netting_categories.status IN ('A', 'H')
AND netting_products.status IN ('A', 'H')
LEFT JOIN netting_product_popularity as popularity ON popularity.product_id = netting_products.product_id
LEFT JOIN netting_master_products_storefront_min_price ON netting_master_products_storefront_min_price.product_id = netting_products.product_id
AND netting_master_products_storefront_min_price.storefront_id = 1
LEFT JOIN netting_product_sales ON netting_product_sales.product_id = netting_products.product_id
AND netting_product_sales.category_id = 0
LEFT JOIN netting_seo_names ON netting_seo_names.object_id = 3002784242
AND netting_seo_names.type = 'p'
AND netting_seo_names.dispatch = ''
AND netting_seo_names.lang_code = 'en'
LEFT JOIN netting_booking_and_reservation ON netting_booking_and_reservation.product_id = netting_products.product_id
AND netting_booking_and_reservation.product_id = 3002784242
LEFT JOIN netting_discussion ON netting_discussion.object_id = netting_products.product_id
AND netting_discussion.object_type = 'P'
LEFT JOIN netting_product_review_prepared_data ON netting_product_review_prepared_data.product_id = netting_products.product_id
AND netting_product_review_prepared_data.storefront_id = 0
WHERE
netting_products.product_id = 3002784242
AND (
companies.status IN ('A')
OR netting_products.company_id = 0
)
GROUP BY
netting_products.product_id