diff --git a/public/userarea/export_to_lims.php b/public/userarea/export_to_lims.php index b8bc789..16ca9e9 100644 --- a/public/userarea/export_to_lims.php +++ b/public/userarea/export_to_lims.php @@ -157,6 +157,7 @@ try { d.anagrafica_certest_service_id, d.cliente_fornitore_id, d.clienteAnalisi, + d.ClienteFatturazione, d.consegna_richiesta FROM datadb as d INNER JOIN excel_templates as et ON d.templateid = et.id @@ -180,11 +181,12 @@ try { $anagraficaService = !empty($result['anagrafica_certest_service_id']) ? (int) $result['anagrafica_certest_service_id'] : null; $clienteFornitore = !empty($result['cliente_fornitore_id']) ? (int) $result['cliente_fornitore_id'] : null; $clienteAnalisi = !empty($result['clienteAnalisi']) ? (int) $result['clienteAnalisi'] : null; + $clienteFatturazione = !empty($result['ClienteFatturazione']) ? (int) $result['ClienteFatturazione'] : null; $consegnaRichiesta = !empty($result['consegna_richiesta']) ? $result['consegna_richiesta'] : null; // 🔹 STEP 3: Fetch Parts (including idmatrice and part id for custom fields) $stmt = $pdo->prepare(" - SELECT id AS part_id, part_number, part_description, material, color, mix, idmatrice, dateexpiry + SELECT id AS part_id, part_number, part_description, material, color, mix, idmatrice, dateexpiry, note FROM identification_parts WHERE iddatadb = :iddatadb AND part_description IS NOT NULL @@ -274,6 +276,7 @@ try { "AnagraficaCertestService" => $anagraficaService, "ClienteFornitore" => $clienteFornitore, // PLACEHOLDER — to be implemented "ClienteAnalisi" => $clienteAnalisi, // PLACEHOLDER — to be implemented + "ClienteFatturazione" => $clienteFatturazione, // DeliveryRequest goes to Campione, not CommessaWeb ]; @@ -306,13 +309,17 @@ try { throw new Exception("Invalid or missing idmatrice for part: " . ($part["part_number"] ?? "Unknown")); } + $partDescription = $part["part_description"] ?? ""; + $partNote = trim((string)($part["note"] ?? "")); + $noteWebValue = $partNote !== "" ? $partDescription . " - " . $partNote : $partDescription; + $campionePayload = [ "Commessa" => $commessaId, "Matrice" => $matriceId, "SottoMatrice" => null, "SchemaCustomField" => $schemaId, // "Riferimento" => $part["part_description"] ?? "", - "NoteWeb" => $part["part_description"] ?? "", + "NoteWeb" => $noteWebValue, "ConsegnaRichiesta" => !empty($part["dateexpiry"]) ? $part["dateexpiry"] : $consegnaRichiesta, ]; diff --git a/public/userarea/gridRenderer.js b/public/userarea/gridRenderer.js index 8a16938..fc29900 100644 --- a/public/userarea/gridRenderer.js +++ b/public/userarea/gridRenderer.js @@ -162,8 +162,8 @@ // Mappa: quale filtro Inattivo applicare per ogni campo cliente const clientFieldTipoMap = { ClienteFornitore: "attivo", - ClienteAnalisi: "attivo", - ClienteFatturazione: "inattivo", + ClienteAnalisi: "inattivo", + ClienteFatturazione: "attivo", }; // Select2 AJAX config factory for client selects (parametrizzata su "tipo") diff --git a/public/userarea/mapping_template_xls_scheme2.php b/public/userarea/mapping_template_xls_scheme2.php index 78c4416..4586cb7 100644 --- a/public/userarea/mapping_template_xls_scheme2.php +++ b/public/userarea/mapping_template_xls_scheme2.php @@ -2501,9 +2501,9 @@ $apiSampleJson = $template['api_sample_json'] ?? ''; return v === true || v === 1 || v === '1' || v === 'true'; }; - // Fornitore e Analisi: solo clienti ATTIVI (Inattivo = false) - // Fatturazione: solo clienti INATTIVI (Inattivo = true) - const filtered = (key === 'ClienteFatturazione') ? + // Fornitore e Fatturazione: solo clienti ATTIVI (Inattivo = false) + // Analisi: solo clienti INATTIVI (Inattivo = true) + const filtered = (key === 'ClienteAnalisi') ? list.filter(isInattivo) : list.filter(x => !isInattivo(x)); diff --git a/public/userarea/modal_partsTable.php b/public/userarea/modal_partsTable.php index bb16128..676bb31 100644 --- a/public/userarea/modal_partsTable.php +++ b/public/userarea/modal_partsTable.php @@ -208,6 +208,23 @@