assign('debug', $DEBUG ? '1' : ''); $invoices = getInvoices($_REQUEST['date_from'], $_REQUEST['date_to']); $invoiceIds = array(); foreach ($invoices as $invoice) { $invoiceIds[] = $invoice['id']; } $sessionIdApilo = create_guid(); $_SESSION[$sessionIdApilo] = $invoiceIds; $smarty->assign('sessionIdApilo', $sessionIdApilo); $invoiceNo = array(); foreach ($invoices as $invoice) { $invoiceNo[] = $invoice['document_no']; } $smarty->assign('invoicesNo', join(", ", $invoiceNo)); $dateFrom = date('Y-m-d', strtotime($_REQUEST['date_from'])); $dateTo = date('Y-m-d', strtotime($_REQUEST['date_to'])); $ordersPl = getTemuOrders($dateFrom.' 00:00:00', $dateTo.' 23:59:59', 'pl', 50); $orderNoPl = array(); foreach ($ordersPl as $order) { $orderNoPl[] = $order['orderNumber']; } $smarty->assign('ordersNoPl', join(", ", $orderNoPl)); $sessionIdTemuPl = create_guid(); $_SESSION[$sessionIdTemuPl] = json_encode($ordersPl); $smarty->assign('sessionIdTemuPl', $sessionIdTemuPl); $ordersDe = getTemuOrders($dateFrom.' 00:00:00', $dateTo.' 23:59:59', 'de', 50); $orderNoDe = array(); foreach ($ordersDe as $order) { $orderNoDe[] = $order['orderNumber']; } $smarty->assign('ordersNoDe', join(", ", $orderNoDe)); $sessionIdTemuDe = create_guid(); $_SESSION[$sessionIdTemuDe] = json_encode($ordersDe); $smarty->assign('sessionIdTemuDe', $sessionIdTemuDe); $ordersFr = getTemuOrders($dateFrom.' 00:00:00', $dateTo.' 23:59:59', 'fr', 50); $orderNoFr = array(); foreach ($ordersFr as $order) { $orderNoFr[] = $order['orderNumber']; } $smarty->assign('ordersNoFr', join(", ", $orderNoFr)); $sessionIdTemuFr = create_guid(); $_SESSION[$sessionIdTemuFr] = json_encode($ordersFr); $smarty->assign('sessionIdTemuFr', $sessionIdTemuFr); $smarty->assign('date_from', $_REQUEST['date_from']); $smarty->assign('date_to', $_REQUEST['date_to']); echo $smarty->display(getcwd() . '/modules/EcmSales/eCommerceZS/eCommerceZS.tpl'); } else { $smarty->assign('date_from', date('d.m.Y')); $smarty->assign('date_to', date('d.m.Y')); echo $smarty->display(getcwd() . '/modules/EcmSales/eCommerceZS/eCommerceZS.tpl'); } function getInvoices($dateFrom, $dateTo) { $db = $GLOBALS['db']; $invoices = array(); $dateFrom = date('Y-m-d', strtotime($dateFrom)); $dateTo = date('Y-m-d', strtotime($dateTo)); $query = "SELECT ip.ecmproduct_id, ip.code, i.document_no, SUM(ip.quantity) AS quantity, i.register_date, i.id FROM ecommerce_invoices_products AS ip INNER JOIN ecommerce_invoices AS i ON ip.invoice_id = i.id AND i.register_date BETWEEN '$dateFrom' AND '$dateTo' AND i.type='normal' AND (i.origin IN ('allegro', 'shop') OR origin LIKE 'apilo%') WHERE ip.ecmproduct_id != '' AND ip.ecmproduct_id !='165f364e-9301-25ac-5906-58e38f1de4ca' AND i.ecmstockdocout_id IS NULL AND i.ecmsale_id IS NULL GROUP BY i.id, ip.ecmproduct_id ORDER BY i.register_date;"; $res = $db->query($query); while ($row = $db->fetchByAssoc($res)) { if (!isset($invoices[$row['document_no']])) { $invoices[$row['document_no']] = array(); $invoices[$row['document_no']]['document_no'] = $row['document_no']; $invoices[$row['document_no']]['register_date'] = $row['register_date']; $invoices[$row['document_no']]['id'] = $row['id']; $invoices[$row['document_no']]['products'] = array(); $invoices[$row['document_no']]['products'][] = array ( 'ecmproduct_id' => $row['ecmproduct_id'], 'code' => $row['code'], 'quantity' => $row['quantity'], ); } else { $invoices[$row['document_no']]['products'][] = array ( 'ecmproduct_id' => $row['ecmproduct_id'], 'code' => $row['code'], 'quantity' => $row['quantity'], ); } } $invoices = array_values($invoices); usort($invoices, function($a, $b) { return $a['id'] - $b['id']; }); return $invoices; }