'; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; // $cq=$current_user->getPreference('confirm_quotes'); $new_number = false; $duplicate = false; $focus = new EcmSale(); require_once('include/MVC/View/SugarView.php'); require_once('modules/EcmSales/views/EditView/view.edit.ecmsales.php'); $edit = new ViewEditEcmSales(); $edit->ss = new Sugar_Smarty(); if (isset($_REQUEST['record']) && $_REQUEST['isDuplicate'] == "false") { $focus->retrieve($_REQUEST['record']); if (isset($focus->id) && $focus->id != '') { $focus->format_all_fields(); } } else if (isset($_REQUEST['ecommerceZSApilo'])) { $new_number = true; $focus->stock_id = 'cf16804e-f698-5e09-2da3-6553588446ae'; $focus->register_date = date("d.m.Y"); $focus->parent_id = 'b5612f7f-85e5-f930-293e-62cead14b424'; $db = $GLOBALS['db']; $invoiceIds = $_SESSION[$_REQUEST['ecommerceZSApilo']]; $i = $db->fetchByAssoc($db->query("SELECT register_date FROM ecommerce_invoices WHERE id = '$invoiceIds[0]'")); $focus->delivery_date = date("d.m.Y"); $focus->payment_date = date("d.m.Y"); $focus->send_date = date("d.m.Y"); $focus->payment_date_days = 0; $focus->status = 's30'; $focus->order_source = 'baselinker'; $query = " SELECT ip.ecmproduct_id, SUM(ip.quantity) AS quantity, ip.price_netto, p.code, p.name, p.unit_id FROM ecommerce_invoices_products AS ip INNER JOIN ecmproducts AS p ON ip.ecmproduct_id = p.id WHERE invoice_id IN ('" . implode('\',\'', $invoiceIds) . "') AND ip.ecmproduct_id NOT IN ('', '165f364e-9301-25ac-5906-58e38f1de4ca') GROUP BY ip.ecmproduct_id, ip.price_netto; "; $res = $db->query($query); $products = array(); $position = 1; while ($row = $db->fetchByAssoc($res)) { $products[] = array( 'position' => $position++, 'product_id' => $row['ecmproduct_id'], 'product_code' => $row['code'], 'name' => $row['name'], 'quantity' => $row['quantity'], 'price_start' => $row['price_netto'], 'price_netto' => $row['price_netto'], 'unit_id' => $row['unit_id'], 'unit_name' => $app_list_strings['ecmproducts_unit_dom'][$row['unit_id']], 'ecmvat_name' => '23%', 'ecmvat_value' => 23, 'ecmvat_id' => '28079566-b825-e38f-9993-4ccc7b781de5', ); } $edit->ss->assign('ECOMMERCE_PRODUCTS', json_encode($products)); $edit->ss->assign('ECOMMERCE_INVOICES', json_encode($invoiceIds)); $query = "SELECT document_no FROM ecommerce_invoices WHERE id IN ('" . implode('\',\'', $invoiceIds) . "')"; $res = $db->query($query); $documentNos = array(); while ($row = $db->fetchByAssoc($res)) { $documentNos[] = $row['document_no']; } $focus->pdf_text = "Dotyczy faktur: " . implode(', ', $documentNos); } else if (isset($_REQUEST['ecommerceZSTemu'])) { $orders = json_decode($_SESSION[$_REQUEST['ecommerceZSTemu']]); $new_number = true; $focus->stock_id = 'cf16804e-f698-5e09-2da3-6553588446ae'; $focus->register_date = date("d.m.Y"); $focus->parent_id = '8b99791c-4e32-4443-fa57-69037059fe3f'; $db = $GLOBALS['db']; $invoiceIds = $_SESSION[$_REQUEST['ecommerceZSApilo']]; $focus->delivery_date = date("d.m.Y"); $focus->payment_date = date("d.m.Y"); $focus->send_date = date("d.m.Y"); $focus->payment_date_days = 0; $focus->status = 's30'; $focus->order_source = 'temu-'.$_REQUEST['temuCountry']; $documentNos = array(); $products = array(); foreach ($orders as $order) { $documentNos[] = $order->orderNumber; foreach($order->products as $product) { $prod = $db->fetchByAssoc($db->query("SELECT id, name, code, unit_id FROM ecmproducts WHERE code = '".$product->extCode."' AND deleted = 0")); if (!isset($prod)) { echo 'Brak produktu, nie wystawiaj dokumentu! '.$product->extCode.'
'; } else { $products[] = array( 'product_id' => $prod['id'], 'product_code' => $prod['code'], 'name' => $prod['name'], 'quantity' => $product->soldFactor, 'price_start' => 0.01, 'price_netto' => 0.01, 'unit_id' => $prod['unit_id'], 'unit_name' => $app_list_strings['ecmproducts_unit_dom'][$prod['unit_id']], 'ecmvat_name' => '0%', 'ecmvat_value' => 0, 'ecmvat_id' => '9b783d21-5548-6653-e1d6-49610eb3f9dd', ); } } $prod = $db->fetchByAssoc($db->query("SELECT id FROM ecmproducts WHERE code = '".$order->productCode."'")); } $groupedProducts = array(); foreach ($products as $p) { $pid = $p['product_id']; if (!isset($groupedProducts[$pid])) { $groupedProducts[$pid] = $p; } else { $groupedProducts[$pid]['quantity'] += $p['quantity']; } } $groupedProducts = array_values($groupedProducts); $edit->ss->assign('ECOMMERCE_PRODUCTS', json_encode($groupedProducts)); $query = "SELECT document_no FROM ecommerce_invoices WHERE id IN ('" . implode('\',\'', $invoiceIds) . "')"; $res = $db->query($query); $focus->pdf_text = "Dotyczy zamówień: " . implode(', ', $documentNos); } else if ($_REQUEST['isDuplicate'] == "true") { $new_number = true; $duplicate = true; //get data $focus->retrieve($_REQUEST['return_id']); $focus->id = null; $focus->register_date = date("d.m.Y"); $focus->delivery_date = null; $focus->send_date = null; $focus->assigned_user_name = $current_user->full_name; $focus->assigned_user_id = $current_user->id; $focus->status = 's10'; } else if ($_REQUEST['ecmquote_id']) { $new_number = true; $ecmquote_id = $_REQUEST['ecmquote_id']; $ecmquote = true; $q = new EcmQuote(); //get data $q->retrieve($_REQUEST['ecmquote_id']); $focus->parent_id = $q->parent_id; $focus->parent_name = $q->parent_name; $focus->register_date = date("d.m.Y"); $focus->position_list = $q->getPositionList(true); } else { $new_number = true; $focus->stock_id = $current_user->stock_id; $focus->register_date = date("d.m.Y"); $focus->delivery_date = date("d.m.Y"); //for subpanels?? if (isset($_REQUEST['contact_id']) && $_REQUEST['contact_id'] != '' && isset($_REQUEST['contact_name']) && $_REQUEST['contact_name'] != '') { $_REQUEST['parent_type'] = 'Contacts'; $_REQUEST['parent_name'] = $_REQUEST['contact_name']; $_REQUEST['parent_id'] = $_REQUEST['contact_id']; $OPT['check_parent_id'] = false; } if (isset($_REQUEST['account_id']) && $_REQUEST['account_id'] != '' && isset($_REQUEST['account_name']) && $_REQUEST['account_name'] != '') { $_REQUEST['parent_type'] = 'Accounts'; $_REQUEST['parent_name'] = $_REQUEST['account_name']; $_REQUEST['parent_id'] = $_REQUEST['account_id']; $OPT['check_parent_id'] = false; } } //get stocks $res = $db->query("SELECT id, name FROM ecmstocks WHERE deleted = '0' ORDER BY name"); $stock = ''; //includ OO VAT $v = new EcmVat(); $v->retrieve('a8c52d5e-15df-2a13-c934-5578307bebd2'); $oo = array('id' => 'a8c52d5e-15df-2a13-c934-5578307bebd2', 'name' => $v->name, 'value' => $v->value); echo ''; $edit->module = 'EcmSales'; $edit->bean = $focus; $edit->tplFile = 'include/ECM/EcmViews/EditView/Tabs/EditView.tpl'; $edit->preDisplay(); $edit->ss->assign("NEW_NUMBER", $new_number); $edit->ss->assign("ECMQUOTE_ID", $ecmquote_id); $edit->ss->assign("ECMQUOTE", $ecmquote); $edit->ss->assign("STOCK", $stock); $edit->ss->assign("DUPLICATE", $duplicate); echo $edit->display(); //loading view echo '';