Added product admin features
This commit is contained in:
@@ -4,57 +4,75 @@ import { Maybe } from '../../types/types';
|
||||
|
||||
const baseQuery = /* sql */ `
|
||||
|
||||
SELECT products.productid as id,
|
||||
SELECT products.productid AS id,
|
||||
stock.stockid,
|
||||
products.path,
|
||||
products.visible,
|
||||
products.browsable,
|
||||
products.designerid,
|
||||
products.inserted,
|
||||
products.updated,
|
||||
products.ref1,
|
||||
products.ref2,
|
||||
products.ref3,
|
||||
(
|
||||
SELECT json_agg(
|
||||
json_build_object(
|
||||
'printId',
|
||||
"product-printproducts".printid,
|
||||
'productId',
|
||||
"product-printproducts".productid,
|
||||
'groupId',
|
||||
"product-printproducts".groupid,
|
||||
'inserted',
|
||||
"product-printproducts".inserted,
|
||||
'updated',
|
||||
"product-printproducts".updated
|
||||
SELECT json_agg(
|
||||
json_build_object(
|
||||
'printId',
|
||||
"product-printproducts".printid,
|
||||
'productId',
|
||||
"product-printproducts".productid,
|
||||
'groupId',
|
||||
"product-printproducts".groupid,
|
||||
'inserted',
|
||||
"product-printproducts".inserted,
|
||||
'updated',
|
||||
"product-printproducts".updated
|
||||
)
|
||||
)
|
||||
) FROM "product-printproducts" WHERE "product-printproducts".productid = products.productid
|
||||
FROM "product-printproducts"
|
||||
WHERE "product-printproducts".productid = products.productid
|
||||
) AS printproducts,
|
||||
( SELECT json_agg(
|
||||
json_build_object(
|
||||
'id',
|
||||
product_blacklist.id,
|
||||
'productId',
|
||||
product_blacklist.product_id,
|
||||
'marketId',
|
||||
product_blacklist.market_id,
|
||||
'groupId',
|
||||
product_blacklist.group_id,
|
||||
'inserted',
|
||||
product_blacklist.created_at,
|
||||
'updated',
|
||||
product_blacklist.updated_at
|
||||
(
|
||||
SELECT json_agg(
|
||||
json_build_object(
|
||||
'id',
|
||||
product_blacklist.id,
|
||||
'productId',
|
||||
product_blacklist.product_id,
|
||||
'marketId',
|
||||
product_blacklist.market_id,
|
||||
'groupId',
|
||||
product_blacklist.group_id,
|
||||
'inserted',
|
||||
product_blacklist.created_at,
|
||||
'updated',
|
||||
product_blacklist.updated_at
|
||||
)
|
||||
)
|
||||
) FROM product_blacklist WHERE product_blacklist.product_id = products.productid
|
||||
FROM product_blacklist
|
||||
WHERE product_blacklist.product_id = products.productid
|
||||
) AS blacklisting,
|
||||
( SELECT json_object_agg(fields.field, pf.value)
|
||||
(
|
||||
SELECT json_object_agg(fields.field, pf.value)
|
||||
FROM "product-products_fields" pf
|
||||
JOIN "product-fields" fields ON fields.fieldid = pf.fieldid
|
||||
JOIN "product-fields" fields ON fields.fieldid = pf.fieldid
|
||||
WHERE pf.productid = products.productid
|
||||
) AS fields,
|
||||
( SELECT json_agg(keywords.value)
|
||||
(
|
||||
SELECT json_agg(keywords.value)
|
||||
FROM product_keyword pk
|
||||
JOIN keywords ON keywords.id = pk.keyword_id
|
||||
WHERE keywords.id IN (1103,1104)AND pk.product_id = products.productid
|
||||
) AS types
|
||||
FROM "product-products" products
|
||||
JOIN keywords ON keywords.id = pk.keyword_id
|
||||
WHERE keywords.id IN (1103, 1104)
|
||||
AND pk.product_id = products.productid
|
||||
) AS types,
|
||||
(
|
||||
SELECT json_agg(wt.wallpapertype_id)
|
||||
FROM product_wallpapertypes wt
|
||||
WHERE wt.product_id = products.productid
|
||||
) AS wallpapertypes
|
||||
FROM "product-products" products
|
||||
LEFT JOIN "product-stockproducts" stock ON stock.productid = products.productid
|
||||
`;
|
||||
|
||||
export function products(
|
||||
|
||||
Reference in New Issue
Block a user