Preventivo matrice
Costo della mescola, prezzi praticati e prezzo suggerito
Scegli una matrice per calcolare il preventivo.
getConnection(); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); if (!userCan('sales.quote.view')) { if (isset($_GET['action']) || isset($_POST['action'])) { MagoSalesStats::jsonOut(['success' => false, 'message' => 'Non hai i permessi per questa pagina']); } while (ob_get_level()) ob_end_clean(); http_response_code(403); echo '
'; exit; } $canDeliveries = userCan('sales.deliveries.view'); $canMatrici = userCan('sales.matrici.view'); /* ============================================================ * AJAX * ============================================================ */ $action = $_GET['action'] ?? $_POST['action'] ?? ''; try { if ($action === 'matrici') { MagoSalesStats::jsonOut(['results' => MagoQuote::searchMatrici($pdo, (string)($_GET['q'] ?? ''))]); } if ($action === 'customers') { $f = MagoSalesStats::filterOptions($pdo); MagoSalesStats::jsonOut(['success' => true, 'customers' => $f['customers'] ?? []]); } if ($action === 'data') { $c = trim((string)($_GET['c'] ?? '')); MagoSalesStats::jsonOut(MagoQuote::data($pdo, (int)($_GET['m'] ?? 0), (string)($_GET['u'] ?? 'm'), $c !== '' ? $c : null)); } if ($action === 'save' && $_SERVER['REQUEST_METHOD'] === 'POST') { MagoSalesStats::jsonOut(MagoQuote::save($pdo, $_POST, (int)($iduserlogin ?? 0))); } if ($action === 'delete' && $_SERVER['REQUEST_METHOD'] === 'POST') { MagoSalesStats::jsonOut(['success' => MagoQuote::delete($pdo, (int)($_POST['id'] ?? 0))]); } } catch (Throwable $e) { MagoSalesStats::jsonOut(['success' => false, 'message' => $e->getMessage()]); } ?>