GET https://dvz.all.baks.dev/favorites

Query Metrics

8 Database Queries
6 Different statements
551.53 ms Query time
0 Invalid entities
0 Managed entities

Grouped Statements

Show all queries

Time Count Info
359.36 ms
(65.16%)
3
SELECT product.id AS product_id, product.event AS product_event, product_trans.name AS product_name, product_info.url AS product_url, product_info.sort AS product_sort, product_active.active as product_active, product_active.active_from as product_active_from, product_active.active_to as product_active_to, category_offer.card AS category_offer_card , category_offer.reference AS product_offer_reference, category_variation.card AS category_variation_card, category_variation.reference as product_variation_reference, category_modification.card AS category_modification_card , category_modification.reference as product_modification_reference, JSON_AGG( DISTINCT product_invariable.id) AS invariable, 
                CASE
    
                    WHEN product_modification_image.name IS NOT NULL THEN
                        CONCAT ( '/upload/product_modification_images' , '/', product_modification_image.name)
                    WHEN product_variation_image.name IS NOT NULL THEN
                        CONCAT ( '/upload/product_variation_images' , '/', product_variation_image.name)
                    WHEN product_offer_images.name IS NOT NULL THEN
                        CONCAT ( '/upload/product_offer_images' , '/', product_offer_images.name)
                    WHEN product_photo.name IS NOT NULL THEN
                        CONCAT ( '/upload/product_photo' , '/', product_photo.name)
                    ELSE NULL
                   
                END AS product_image
            , 
            COALESCE(
                product_modification_image.ext,
                product_variation_image.ext,
                product_offer_images.ext,
                product_photo.ext
            ) AS product_image_ext, 
            COALESCE(
                product_modification_image.cdn,
                product_variation_image.cdn,
                product_offer_images.cdn,
                product_photo.cdn
            ) AS product_image_cdn, category_info.url AS category_url, category_trans.name AS category_name, 
            COALESCE(
                NULLIF(MIN(product_modification_price.price), 0),
                NULLIF(MIN(product_variation_price.price), 0),
                NULLIF(MIN(product_offer_price.price), 0),
                NULLIF(MIN(product_price.price), 0),
                0
            ) AS product_price
		, 
            CASE

			   WHEN MIN(product_modification_price.price) IS NOT NULL
			   THEN product_modification_price.currency

			   WHEN MIN(product_variation_price.price) IS NOT NULL
			   THEN product_variation_price.currency

			   WHEN MIN(product_offer_price.price) IS NOT NULL
			   THEN product_offer_price.currency

			   WHEN MIN(product_price.price) IS NOT NULL
			   THEN product_price.currency

			   ELSE NULL

			END AS product_currency
		, project_profile_discount.value AS project_discount FROM product INNER JOIN product_categories_product product_event_category ON product_event_category.event = product.event AND product_event_category.category IN (?) LEFT JOIN product_trans product_trans ON product_trans.event = product.event AND product_trans.local = ? LEFT JOIN product_info product_info ON product_info.product = product.id LEFT JOIN product_active product_active ON product_active.event = product.event LEFT JOIN product_price product_price ON product_price.event = product.event AND product_price.price > 0 LEFT JOIN product_offer product_offer ON product_offer.event = product.event INNER JOIN users_profile project_profile ON 
                        project_profile.id = ? LEFT JOIN product_category category ON category.id = product_event_category.category LEFT JOIN product_category_info category_info ON category_info.event = category.event AND category_info.active IS TRUE LEFT JOIN product_category_trans category_trans ON category_trans.event = category.event AND category_trans.local = ? LEFT JOIN product_category_offers category_offer ON category_offer.id = product_offer.category_offer LEFT JOIN product_offer_price product_offer_price ON product_offer_price.offer = product_offer.id AND product_offer_price.price > 0 LEFT JOIN product_offer_quantity product_offer_quantity ON product_offer_quantity.offer = product_offer.id LEFT JOIN product_variation product_variation ON product_variation.offer = product_offer.id LEFT JOIN product_variation_images product_variation_image ON 
                product_variation_image.variation = product_variation.id AND
                product_variation_image.root = true
			 LEFT JOIN product_offer_images product_offer_images ON 
			product_variation_image.name IS NULL AND
			product_offer_images.offer = product_offer.id AND
			product_offer_images.root = true
			 LEFT JOIN product_photo product_photo ON 
                product_offer_images.name IS NULL AND
                product_photo.event = product.event AND
                product_photo.root = true
			 LEFT JOIN product_category_variation category_variation ON category_variation.id = product_variation.category_variation LEFT JOIN product_modification product_modification ON product_modification.variation = product_variation.id LEFT JOIN product_invariable product_invariable ON 
                                    product_invariable.product = product.id
                                    AND
                                        CASE
                                            WHEN product_offer.const IS NOT NULL THEN product_invariable.offer = product_offer.const
                                            ELSE product_invariable.offer IS NULL
                                        END
                                    AND
                                        CASE
                                            WHEN product_variation.const IS NOT NULL THEN product_invariable.variation = product_variation.const
                                            ELSE product_invariable.variation IS NULL
                                        END
                                    AND
                                        CASE
                                            WHEN product_modification.const IS NOT NULL THEN product_invariable.modification = product_modification.const
                                            ELSE product_invariable.modification IS NULL
                                        END
                                 LEFT JOIN product_variation_price product_variation_price ON product_variation_price.variation = product_variation.id AND product_variation_price.price > 0 LEFT JOIN product_variation_quantity product_variation_quantity ON product_variation_quantity.variation = product_variation.id LEFT JOIN product_category_modification category_modification ON category_modification.id = product_modification.category_modification LEFT JOIN product_modification_price product_modification_price ON product_modification_price.modification = product_modification.id AND product_modification_price.price > 0 LEFT JOIN product_modification_quantity product_modification_quantity ON product_modification_quantity.modification = product_modification.id LEFT JOIN product_modification_images product_modification_image ON 
                product_modification_image.modification = product_modification.id AND
                product_modification_image.root = true
			 LEFT JOIN user_profile_discount project_profile_discount ON 
                        project_profile_discount.event = project_profile.event WHERE (COALESCE(
                NULLIF(product_modification_price.price, 0),
                NULLIF(product_variation_price.price, 0),
                NULLIF(product_offer_price.price, 0),
                NULLIF(product_price.price, 0),
                0
            ) > 0) AND (
            CASE
                WHEN product_modification_quantity.quantity IS NOT NULL THEN (product_modification_quantity.quantity - product_modification_quantity.reserve)
                WHEN product_variation_quantity.quantity IS NOT NULL THEN (product_variation_quantity.quantity - product_variation_quantity.reserve)
                WHEN product_offer_quantity.quantity IS NOT NULL THEN (product_offer_quantity.quantity - product_offer_quantity.reserve)
                WHEN product_price.quantity  IS NOT NULL THEN (product_price.quantity - product_price.reserve)
                ELSE 0
            END > 0
        ) GROUP BY product_price.currency, product_offer_price.currency, product_variation_price.currency, product_modification_price.currency, product.id, product.event, product_trans.name, product_info.url, product_info.sort, product_active.active, product_active.active_from, product_active.active_to, category_offer.card, category_offer.reference, category_variation.card, category_variation.reference, category_modification.card, category_modification.reference, product_modification_image.name, product_variation_image.name, product_offer_images.name, product_photo.name, product_modification_image.ext, product_variation_image.ext, product_offer_images.ext, product_photo.ext, product_modification_image.cdn, product_variation_image.cdn, product_offer_images.cdn, product_photo.cdn, category_info.url, category_trans.name, project_profile_discount.value ORDER BY product_info.sort DESC, SUM(product_modification_quantity.reserve) DESC, SUM(product_variation_quantity.reserve) DESC, SUM(product_offer_quantity.reserve) DESC, SUM(product_price.reserve) DESC, SUM(product_modification_quantity.quantity) DESC, SUM(product_variation_quantity.quantity) DESC, SUM(product_offer_quantity.quantity) DESC, SUM(product_price.quantity) DESC LIMIT 6
Parameters:
[
  BaksDev\Products\Category\Type\Id\CategoryProductUid {#1029
    __toString(): "01905ea6-805e-7a56-b53c-da41c19f9e38"
  }
  "ru"
  "01982ecf-0a6a-79e5-967b-4992d1b836bb"
  "ru"
]
189.01 ms
(34.27%)
1
SELECT product.id AS product_id, product.event AS product_event, product_offer.id AS product_offer_id, product_offer.const AS product_offer_const, product_offer.value as product_offer_value, product_offer.postfix as product_offer_postfix, category_offer.reference as product_offer_reference, product_variation.id AS product_variation_id, product_variation.const AS product_variation_const, product_variation.value as product_variation_value, product_variation.postfix as product_variation_postfix, category_offer_variation.reference as product_variation_reference, product_modification.id AS product_modification_id, product_modification.const AS product_modification_const, product_modification.value as product_modification_value, product_modification.postfix as product_modification_postfix   , category_offer_modification.reference as product_modification_reference, product_trans.name AS product_trans_name, JSON_AGG 
            (DISTINCT
				CASE 
                    WHEN product_offer_images.ext IS NOT NULL 
                    THEN JSONB_BUILD_OBJECT
                        (
                            'img_root', product_offer_images.root,
                            'img', CONCAT ( '/upload/product_offer_images' , '/', product_offer_images.name),
                            'img_ext', product_offer_images.ext,
                            'img_cdn', product_offer_images.cdn
                        ) 
                    WHEN product_variation_images.ext IS NOT NULL 
                    THEN JSONB_BUILD_OBJECT
                        (
                            'img_root', product_variation_images.root,
                            'img', CONCAT ( '/upload/product_variation_images' , '/', product_variation_images.name),
                            'img_ext', product_variation_images.ext,
                            'img_cdn', product_variation_images.cdn
                        )	
                    WHEN product_modification_images.ext IS NOT NULL 
                    THEN JSONB_BUILD_OBJECT
                        (
                            'img_root', product_modification_images.root,
                            'img', CONCAT ( '/upload/product_modification_images' , '/', product_modification_images.name),
                            'img_ext', product_modification_images.ext,
                            'img_cdn', product_modification_images.cdn
                        )
                    WHEN product_photo.ext IS NOT NULL 
                    THEN JSONB_BUILD_OBJECT
                        (
                            'img_root', product_photo.root,
                            'img', CONCAT ( '/upload/product_photo' , '/', product_photo.name),
                            'img_ext', product_photo.ext,
                            'img_cdn', product_photo.cdn
                        )
                    END) AS product_images, product_event.id AS product_event, product_category.category AS product_category, category.event AS category_event, category_info.url AS category_url, product_info.url AS product_url, project_profile_discount.value AS project_discount, 
			COALESCE(
                NULLIF(product_modification_quantity.quantity, 0),
                NULLIF(product_variation_quantity.quantity, 0),
                NULLIF(product_offer_quantity.quantity, 0),
                NULLIF(product_price.quantity, 0),
                0
            ) AS product_quantity
		, 
			COALESCE(
                NULLIF(product_modification_quantity.reserve, 0),
                NULLIF(product_variation_quantity.reserve, 0),
                NULLIF(product_offer_quantity.reserve, 0),
                NULLIF(product_price.reserve, 0),
                0
            ) AS product_reserve
		, 
			CASE
			   WHEN product_modification_price.price IS NOT NULL AND product_modification_price.price > 0 
			   THEN product_modification_price.price
			   
			   WHEN product_variation_price.price IS NOT NULL AND product_variation_price.price > 0 
			   THEN product_variation_price.price
			   
			   WHEN product_offer_price.price IS NOT NULL AND product_offer_price.price > 0 
			   THEN product_offer_price.price
			   
			   WHEN product_price.price IS NOT NULL AND product_price.price > 0 
			   THEN product_price.price
			   
			   ELSE NULL
			END AS product_price
		, 
			COALESCE(
                NULLIF(product_modification_price.old, 0),
                NULLIF(product_variation_price.old, 0),
                NULLIF(product_offer_price.old, 0),
                NULLIF(product_price.old, 0),
                0
            ) AS product_old_price
		, 
			CASE
			   WHEN COALESCE(product_modification_price.price, 0) != 0 
			   THEN product_modification_price.currency
			   
			   WHEN COALESCE(product_variation_price.price, 0) != 0 
			   THEN product_variation_price.currency
			   
			   WHEN COALESCE(product_offer_price.price, 0) != 0 
			   THEN product_offer_price.currency
			   
			   WHEN COALESCE(product_price.price, 0) != 0 
			   THEN product_price.currency
			   
			   ELSE NULL
			END AS product_currency, product_invariable.id as product_invariable_id, product_invariable.offer AS product_invariable_offer_const FROM product_invariable LEFT JOIN product product ON product.id = product_invariable.product LEFT JOIN product_offer product_offer ON product_offer.event = product.event AND product_offer.const = product_invariable.offer LEFT JOIN product_trans product_trans ON product_trans.event = product.event AND product_trans.local = ? LEFT JOIN product_photo product_photo ON product_photo.event = product.event AND product_photo.root = TRUE LEFT JOIN product_price product_price ON product_price.event = product.event LEFT JOIN product_event product_event ON product_event.id = product.event LEFT JOIN product_info product_info ON product_info.product = product.id INNER JOIN users_profile project_profile ON 
                        project_profile.id = ? LEFT JOIN product_categories_product product_category ON product_category.event = product_event.id AND product_category.root IS TRUE LEFT JOIN product_category category ON category.id = product_category.category LEFT JOIN product_category_info category_info ON category_info.event = category.event AND category_info.active = true LEFT JOIN user_profile_discount project_profile_discount ON 
                        project_profile_discount.event = project_profile.event LEFT JOIN product_category_offers category_offer ON category_offer.id = product_offer.category_offer LEFT JOIN product_variation product_variation ON product_variation.offer = product_offer.id AND product_variation.const = product_invariable.variation LEFT JOIN product_offer_images product_offer_images ON product_offer_images.offer = product_offer.id AND product_offer_images.root = TRUE LEFT JOIN product_offer_price product_offer_price ON product_offer_price.offer = product_offer.id LEFT JOIN product_offer_quantity product_offer_quantity ON product_offer_quantity.offer = product_offer.id LEFT JOIN product_category_variation category_offer_variation ON category_offer_variation.id = product_variation.category_variation LEFT JOIN product_modification product_modification ON product_modification.variation = product_variation.id AND product_modification.const = product_invariable.modification LEFT JOIN product_variation_images product_variation_images ON product_variation_images.variation = product_variation.id AND product_variation_images.root = TRUE LEFT JOIN product_variation_price product_variation_price ON product_variation_price.variation = product_variation.id LEFT JOIN product_variation_quantity product_variation_quantity ON product_variation_quantity.variation = product_variation.id LEFT JOIN product_category_modification category_offer_modification ON category_offer_modification.id = product_modification.category_modification LEFT JOIN product_modification_images product_modification_images ON product_modification_images.modification = product_modification.id AND product_modification_images.root = TRUE LEFT JOIN product_modification_price product_modification_price ON product_modification_price.modification = product_modification.id LEFT JOIN product_modification_quantity product_modification_quantity ON product_modification_quantity.modification = product_modification.id WHERE product_invariable.id IN (NULL) GROUP BY product.id, product.event, product_offer.id, product_offer.const, product_offer.value, product_offer.postfix, category_offer.reference, product_variation.id, product_variation.const, product_variation.value, product_variation.postfix, category_offer_variation.reference, product_modification.id, product_modification.const, product_modification.value, product_modification.postfix, category_offer_modification.reference, product_trans.name, product_event.id, product_category.category, category.event, category_info.url, product_info.url, project_profile_discount.value, product_modification_quantity.quantity, product_variation_quantity.quantity, product_offer_quantity.quantity, product_price.quantity, product_modification_quantity.reserve, product_variation_quantity.reserve, product_offer_quantity.reserve, product_price.reserve, product_modification_price.price, product_variation_price.price, product_offer_price.price, product_price.price, product_modification_price.old, product_variation_price.old, product_offer_price.old, product_price.old, product_modification_price.currency, product_variation_price.currency, product_offer_price.currency, product_price.currency, product_invariable.id, product_invariable.offer LIMIT 24
Parameters:
[
  "ru"
  "01982ecf-0a6a-79e5-967b-4992d1b836bb"
]
1.33 ms
(0.24%)
1
"COMMIT"
Parameters:
[]
1.17 ms
(0.21%)
1
INSERT INTO messenger_core (body, headers, queue_name, created_at, available_at) VALUES(?, ?, ?, ?, ?) RETURNING id
Parameters:
[
  "O:36:\"Symfony\\Component\\Messenger\\Envelope\":2:{s:44:\"\0Symfony\\Component\\Messenger\\Envelope\0stamps\";a:2:{s:53:\"Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\";a:1:{i:0;O:53:\"Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\":1:{s:69:\"\0Symfony\\Component\\Messenger\\Stamp\\TransportNamesStamp\0transportNames\";a:1:{i:0;s:9:\"async-low\";}}}s:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\";a:1:{i:0;O:46:\"Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\":1:{s:55:\"\0Symfony\\Component\\Messenger\\Stamp\\BusNameStamp\0busName\";s:21:\"messenger.bus.default\";}}}s:45:\"\0Symfony\\Component\\Messenger\\Envelope\0message\";O:54:\"BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\":2:{s:65:\"\0BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\0namespace\";s:17:\"products-favorite\";s:59:\"\0BaksDev\\Core\\Doctrine\\DBAL\\Cache\\DBALCacheResetMessage\0key\";s:40:\"22ae55d1e59f3d36e2507ef29890d96158558b48\";}}"
  "[]"
  "low"
  "2026-02-21 14:20:41"
  "2026-02-21 14:20:41"
]
0.36 ms
(0.06%)
1
SELECT pg_notify(?, ?)
Parameters:
[
  "messenger_core"
  "low"
]
0.30 ms
(0.05%)
1
"START TRANSACTION"
Parameters:
[]

Database Connections

Name Service
default doctrine.dbal.default_connection

Entity Managers

Name Service
default doctrine.orm.default_entity_manager

Second Level Cache

Second Level Cache is not enabled.

Managed Entities

default entity manager

Class Amount of managed objects

Entities Mapping

No loaded entities.