Button to create Order from Preorder

This commit is contained in:
Frank Schubert
2026-01-19 16:29:22 +01:00
parent d3f35a4cd8
commit 4e4c5a9c18
10 changed files with 254 additions and 17 deletions

View File

@@ -105,6 +105,7 @@ class ProductModel {
LEFT JOIN ProductAttribute ON (ProductAttribute.product_id = Product.id)
LEFT JOIN Producttech ON (Product.producttech_id = Producttech.id)
LEFT JOIN ProducttechAttribute ON (ProducttechAttribute.producttech_id = Producttech.id)
LEFT JOIN ProductNetwork ON (ProductNetwork.product_id = Product.id)
WHERE $where
GROUP BY Product.id
ORDER BY Productgroup.name,Producttech.name,Product.name LIMIT 1
@@ -135,6 +136,7 @@ class ProductModel {
LEFT JOIN ProductAttribute ON (ProductAttribute.product_id = Product.id)
LEFT JOIN Producttech ON (Product.producttech_id = Producttech.id)
LEFT JOIN ProducttechAttribute ON (ProducttechAttribute.producttech_id = Producttech.id)
LEFT JOIN ProductNetwork ON (ProductNetwork.product_id = Product.id)
WHERE $where
GROUP BY Product.id
) as p
@@ -160,6 +162,7 @@ class ProductModel {
LEFT JOIN ProductAttribute ON (ProductAttribute.product_id = Product.id)
LEFT JOIN Producttech ON (Product.producttech_id = Producttech.id)
LEFT JOIN ProducttechAttribute ON (ProducttechAttribute.producttech_id = Producttech.id)
LEFT JOIN ProductNetwork ON (ProductNetwork.product_id = Product.id)
WHERE $where
GROUP BY Product.id
ORDER BY Productgroup.name,Producttech.name,Product.name
@@ -169,7 +172,7 @@ class ProductModel {
if(is_array($limit) && count($limit)) {
if(is_numeric($limit['start']) && is_numeric($limit['count'])) {
$sql .= " LIMIT ".$limit['start'].", ".$limit['count'];
} elseif(is_numeric($count)) {
} elseif(is_numeric($limit['count'])) {
$sql .= " LIMIT ".$limit['count'];
}
}
@@ -232,6 +235,15 @@ class ProductModel {
$where .= " AND Product.sla_id IN (". implode(",", $sla_id).")";
}
}
if(array_key_exists("network_id", $filter)) {
$network_id = $filter['network_id'];
if(is_numeric($network_id)) {
$where .= " AND ProductNetwork.network_id=$network_id";
} elseif(is_array($network_id) && count($network_id)) {
$where .= " AND ProductNetwork.network_id IN (". implode(",", $network_id).")";
}
}
if(array_key_exists("name", $filter)) {
$name = $db->escape($filter['name']);
@@ -284,7 +296,7 @@ class ProductModel {
if(array_key_exists("attributevalue", $filter)) {
$attributevalue = $db->escape($filter['attributevalue']);
if($attributevalue) {
if(strlen($attributevalue)) {
$where .= " AND ProductAttribute.value = '$attributevalue'";
}
}