diff --git a/public/userarea/export_to_lims.php b/public/userarea/export_to_lims.php index db5dbbe..0215c79 100644 --- a/public/userarea/export_to_lims.php +++ b/public/userarea/export_to_lims.php @@ -347,15 +347,28 @@ try { $photos = $stmtPhotos->fetchAll(PDO::FETCH_ASSOC); - // 🔹 STEP 6.2: Upload photos to the first (main) Campione only + // 🔹 STEP 6.2: Upload photos to Campione .01 (fetched from API) $photosUploaded = 0; $logContentPhotos = "Photos for CommessaWeb {$commessaId} (iddatadb={$iddatadb}):\n"; $logContentPhotos .= "Total photos found: " . count($photos) . ", campioni: " . count($campioni) . "\n\n"; if (!empty($campioni) && !empty($photos)) { - $mainCampione = $campioni[0]; + // Fetch campioni list from API to find the .01 campione + $commessaCampioni = $api->get("CommessaWeb({$commessaId})?\$expand=Campioni"); + $apiCampioni = $commessaCampioni['Campioni'] ?? []; + + // Sort by CodiceCampione to find .01 + usort($apiCampioni, fn($a, $b) => strcmp($a['CodiceCampione'] ?? '', $b['CodiceCampione'] ?? '')); + + $mainCampione = $apiCampioni[0] ?? null; $campioneId = (int)($mainCampione['IdCampione'] ?? 0); + $logContentPhotos .= "API Campioni order:\n"; + foreach ($apiCampioni as $ac) { + $logContentPhotos .= " - {$ac['CodiceCampione']} (IdCampione: {$ac['IdCampione']})\n"; + } + $logContentPhotos .= "Selected .01 campione: IdCampione={$campioneId}\n\n"; + if ($campioneId > 0) { $logContentPhotos .= "=== Campione {$campioneId} (main) ===\n";