Lager-Tab mit Produkt- und Artikel-Tabellen erweitern
This commit is contained in:
1 parent
8ed5dba3d8
commit
3334913915
5 files changed
+146
-2
No files matched your search
@@ -1,6 +1,32 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
function get_lager_bundle_overview(PDO $pdo): array
|
||||
{
|
||||
$stmt = $pdo->query(
|
||||
"SELECT
|
||||
si.id,
|
||||
si.item_code,
|
||||
si.display_name
|
||||
FROM sellable_item si
|
||||
INNER JOIN sellable_item_component sic
|
||||
ON sic.sellable_item_id = si.id
|
||||
WHERE si.status = 'active'
|
||||
GROUP BY si.id, si.item_code, si.display_name
|
||||
HAVING COUNT(DISTINCT sic.product_id) > 1
|
||||
ORDER BY si.display_name ASC, si.id ASC"
|
||||
);
|
||||
|
||||
return array_map(
|
||||
static fn (array $row): array => [
|
||||
'id' => (int) $row['id'],
|
||||
'item_code' => (string) $row['item_code'],
|
||||
'display_name' => (string) $row['display_name'],
|
||||
],
|
||||
$stmt->fetchAll()
|
||||
);
|
||||
}
|
||||
|
||||
function normalize_title_key(string $value): string
|
||||
{
|
||||
$value = trim(mb_strtolower($value, 'UTF-8'));
|
||||
|
||||
@@ -50,6 +50,38 @@ function get_otc_order_form_products(PDO $pdo): array
|
||||
return $products;
|
||||
}
|
||||
|
||||
function get_lager_product_overview(PDO $pdo): array
|
||||
{
|
||||
$stmt = $pdo->query(
|
||||
"SELECT
|
||||
p.id,
|
||||
p.name,
|
||||
p.sku,
|
||||
p.uom,
|
||||
COALESCE(SUM(v.qty_net), 0) AS available_qty
|
||||
FROM product p
|
||||
LEFT JOIN stock_lot sl
|
||||
ON sl.product_id = p.id
|
||||
AND sl.status = 'current'
|
||||
LEFT JOIN v_stock_lot_balance v
|
||||
ON v.stock_lot_id = sl.id
|
||||
WHERE p.status = 'active'
|
||||
GROUP BY p.id, p.name, p.sku, p.uom
|
||||
ORDER BY p.name ASC, p.id ASC"
|
||||
);
|
||||
|
||||
return array_map(
|
||||
static fn (array $row): array => [
|
||||
'id' => (int) $row['id'],
|
||||
'name' => (string) $row['name'],
|
||||
'sku' => (string) $row['sku'],
|
||||
'uom' => (string) $row['uom'],
|
||||
'available_qty' => (float) $row['available_qty'],
|
||||
],
|
||||
$stmt->fetchAll()
|
||||
);
|
||||
}
|
||||
|
||||
function get_current_lot_balance_for_update(PDO $pdo, int $productId): array
|
||||
{
|
||||
$stmt = $pdo->prepare(
|
||||
|
||||
Reference in new issue
Block a user