AI reports

This commit is contained in:
Michał Zieliński
2025-08-27 07:56:31 +02:00
parent 748c4f4ecd
commit 57415c83e2

View File

@@ -257,9 +257,8 @@ function createCSVReports()
CASE p.group_ks CASE p.group_ks
WHEN 1 THEN 'Towar handlowy' WHEN 1 THEN 'Towar handlowy'
WHEN 2 THEN 'Wyrób gotowy' WHEN 2 THEN 'Wyrób gotowy'
WHEN 3 THEN 'Usługi' WHEN 3 THEN 'Surowiec'
WHEN '530547ef-2dea-7622-843b-59d745b14c64' THEN 'Materiały' WHEN 4 THEN 'Usługa'
WHEN '8451dded-710f-51c2-7ed1-60a377eaa7b7' THEN 'Surowce'
ELSE 'Nieznane' ELSE 'Nieznane'
END AS group_ks, END AS group_ks,
GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category, GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category,
@@ -297,9 +296,8 @@ ORDER BY i.register_date DESC;
CASE p.group_ks CASE p.group_ks
WHEN 1 THEN 'Towar handlowy' WHEN 1 THEN 'Towar handlowy'
WHEN 2 THEN 'Wyrób gotowy' WHEN 2 THEN 'Wyrób gotowy'
WHEN 3 THEN 'Usługi' WHEN 3 THEN 'Surowiec'
WHEN '530547ef-2dea-7622-843b-59d745b14c64' THEN 'Materiały' WHEN 4 THEN 'Usługa'
WHEN '8451dded-710f-51c2-7ed1-60a377eaa7b7' THEN 'Surowce'
ELSE 'Nieznane' ELSE 'Nieznane'
END AS group_ks, END AS group_ks,
GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category, GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category,
@@ -331,80 +329,76 @@ ORDER BY i.register_date DESC;
SELECT SELECT
i.document_no, i.document_no,
i.register_date, i.register_date,
i.parent_name,
p.code, p.code,
p.name, p.name,
CASE p.group_ks CASE p.group_ks
WHEN 1 THEN 'Towar handlowy' WHEN 1 THEN 'Towar handlowy'
WHEN 2 THEN 'Wyrób gotowy' WHEN 2 THEN 'Wyrób gotowy'
WHEN 3 THEN 'Usługi' WHEN 3 THEN 'Surowiec'
WHEN '530547ef-2dea-7622-843b-59d745b14c64' THEN 'Materiały' WHEN 4 THEN 'Usługa'
WHEN '8451dded-710f-51c2-7ed1-60a377eaa7b7' THEN 'Surowce'
ELSE 'Nieznane' ELSE 'Nieznane'
END AS group_ks, END AS group_ks,
GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category, GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category,
ii.quantity, s.name AS stock,
ii.price_netto ii.quantity
FROM ecommerce_invoices AS i FROM ecmstockdocinsideouts AS i
INNER JOIN ecommerce_invoices_products AS ii ON i.id = ii.invoice_id INNER JOIN ecmstockdocinsideoutitems AS ii ON i.id = ii.ecmstockdocinsideout_id
INNER JOIN ecmproducts AS p ON ii.ecmproduct_id = p.id INNER JOIN ecmproducts AS p ON ii.ecmproduct_id = p.id
LEFT JOIN ecmproductcategories_bean AS cb ON cb.bean_id COLLATE utf8_general_ci = p.id COLLATE utf8_general_ci INNER JOIN ecmstocks AS s ON i.stock_id = s.id
LEFT JOIN ecmproductcategories_bean AS cb ON cb.bean_id COLLATE utf8_general_ci = p.id COLLATE utf8_general_ci
AND cb.bean_name = 'EcmProducts' AND cb.bean_name = 'EcmProducts'
AND cb.deleted = 0 AND cb.deleted = 0
LEFT JOIN ecmproductcategories AS c ON c.id = cb.ecmproductcategory_id LEFT JOIN ecmproductcategories AS c ON c.id = cb.ecmproductcategory_id
WHERE i.type = 'normal' AND YEAR(i.register_date) = 2024 WHERE YEAR(i.register_date) = 2025
GROUP BY GROUP BY
i.document_no, i.document_no,
i.register_date, i.register_date,
i.parent_name,
p.code, p.code,
p.name, p.name,
p.group_ks, p.group_ks,
ii.quantity, s.name,
ii.price_netto ii.quantity
ORDER BY i.register_date DESC; ORDER BY i.register_date DESC;
", ",
'filename' => 'ecommerce_invoices_2024.csv', 'filename' => 'rw_2025.csv',
], ],
[ [
'sql' => " 'sql' => "
SELECT SELECT
i.document_no, i.document_no,
i.register_date, i.register_date,
i.parent_name,
p.code, p.code,
p.name, p.name,
CASE p.group_ks CASE p.group_ks
WHEN 1 THEN 'Towar handlowy' WHEN 1 THEN 'Towar handlowy'
WHEN 2 THEN 'Wyrób gotowy' WHEN 2 THEN 'Wyrób gotowy'
WHEN 3 THEN 'Usługi' WHEN 3 THEN 'Surowiec'
WHEN '530547ef-2dea-7622-843b-59d745b14c64' THEN 'Materiały' WHEN 4 THEN 'Usługa'
WHEN '8451dded-710f-51c2-7ed1-60a377eaa7b7' THEN 'Surowce'
ELSE 'Nieznane' ELSE 'Nieznane'
END AS group_ks, END AS group_ks,
GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category, GROUP_CONCAT(c.name ORDER BY cb.position SEPARATOR ' | ') AS category,
ii.quantity, s.name AS stock,
ii.price_netto ii.quantity
FROM ecommerce_invoices AS i FROM ecmstockdocinsideouts AS i
INNER JOIN ecommerce_invoices_products AS ii ON i.id = ii.invoice_id INNER JOIN ecmstockdocinsideoutitems AS ii ON i.id = ii.ecmstockdocinsideout_id
INNER JOIN ecmproducts AS p ON ii.ecmproduct_id = p.id INNER JOIN ecmproducts AS p ON ii.ecmproduct_id = p.id
LEFT JOIN ecmproductcategories_bean AS cb ON cb.bean_id COLLATE utf8_general_ci = p.id COLLATE utf8_general_ci INNER JOIN ecmstocks AS s ON i.stock_id = s.id
LEFT JOIN ecmproductcategories_bean AS cb ON cb.bean_id COLLATE utf8_general_ci = p.id COLLATE utf8_general_ci
AND cb.bean_name = 'EcmProducts' AND cb.bean_name = 'EcmProducts'
AND cb.deleted = 0 AND cb.deleted = 0
LEFT JOIN ecmproductcategories AS c ON c.id = cb.ecmproductcategory_id LEFT JOIN ecmproductcategories AS c ON c.id = cb.ecmproductcategory_id
WHERE i.type = 'normal' AND YEAR(i.register_date) = 2025 WHERE YEAR(i.register_date) = 2024
GROUP BY GROUP BY
i.document_no, i.document_no,
i.register_date, i.register_date,
i.parent_name,
p.code, p.code,
p.name, p.name,
p.group_ks, p.group_ks,
ii.quantity, s.name,
ii.price_netto ii.quantity
ORDER BY i.register_date DESC; ORDER BY i.register_date DESC;
", ",
'filename' => 'ecommerce_invoices_2025.csv', 'filename' => 'rw_2024.csv',
], ],
[ [
'sql' => " 'sql' => "