From 1b3e5a25769d1b669d2f930d330af8f0b01fd6b5 Mon Sep 17 00:00:00 2001 From: Pako Date: Wed, 26 Feb 2025 12:20:39 +0100 Subject: [PATCH] feat(catalog_calculate): refs #8674 new field and modified proc Refs: #8674 --- .../vn/procedures/catalog_calculate.sql | 21 ++++++++++++++++++- .../11458-aquaHydrangea/00-firstScript.sql | 4 ++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 db/versions/11458-aquaHydrangea/00-firstScript.sql diff --git a/db/routines/vn/procedures/catalog_calculate.sql b/db/routines/vn/procedures/catalog_calculate.sql index 39bf2b441b..6695409538 100644 --- a/db/routines/vn/procedures/catalog_calculate.sql +++ b/db/routines/vn/procedures/catalog_calculate.sql @@ -122,6 +122,24 @@ BEGIN LEFT JOIN agencyModeItemType ait ON ait.agencyModeFk = vAgencyModeFk AND ait.itemTypeFk = itt.id + LEFT JOIN ( + SELECT i.id + FROM item i + JOIN priceDelta pd + ON pd.itemTypeFk = i.typeFk + AND (pd.minSize IS NULL OR pd.minSize <= i.`size`) + AND (pd.maxSize IS NULL OR pd.maxSize >= i.`size`) + AND (pd.inkFk IS NULL OR pd.inkFk = i.inkFk) + AND (pd.originFk IS NULL OR pd.originFk = i.originFk) + AND (pd.producerFk IS NULL OR pd.producerFk = i.producerFk) + AND (pd.warehouseFk IS NULL OR pd.warehouseFk = vWarehouseFk) + LEFT JOIN zoneGeo zg ON zg.id = pd.zoneGeoFk + LEFT JOIN zoneGeo zg2 ON zg2.id = address_getGeo(vAddressFk) + WHERE (pd.fromDated IS NULL OR pd.fromDated <= vShipped) + AND (pd.toDated IS NULL OR pd.toDated >= vShipped) + AND (pd.zoneGeoFk IS NULL OR zg2.lft BETWEEN zg.lft AND zg.rgt) + AND pd.isHidden + GROUP BY i.id) pd ON pd.id = i.itemFk WHERE a.calc_id = vAvailableCalc AND a.available > 0 AND (sub.itemAllowed OR NOT it.isFloramondo OR anr.available > 0) @@ -132,7 +150,8 @@ BEGIN it.size <= z.itemMaxSize OR z.itemMaxSize IS NULL)) AND cit.id IS NULL AND zit.id IS NULL - AND ait.id IS NULL; + AND ait.id IS NULL + AND pd.id IS NULL; DROP TEMPORARY TABLE tmp.buyUltimate; diff --git a/db/versions/11458-aquaHydrangea/00-firstScript.sql b/db/versions/11458-aquaHydrangea/00-firstScript.sql new file mode 100644 index 0000000000..ed888e945c --- /dev/null +++ b/db/versions/11458-aquaHydrangea/00-firstScript.sql @@ -0,0 +1,4 @@ +-- Place your SQL code here +ALTER TABLE vn.priceDelta ADD IF NOT EXISTS isHidden BOOL + DEFAULT FALSE NOT NULL + COMMENT 'Hides the itemType when building de catalog recordset'; \ No newline at end of file