prepare( "SELECT id, warehouse_name FROM md_warehouse WHERE company_id = :company_id AND status = 1" ); $sth->execute([':company_id' => $company_id]); $warehouses = $sth->fetchAll(PDO::FETCH_ASSOC); $active_serials = []; foreach ($warehouses as $wh) { $safe = preg_replace('/[^a-zA-Z0-9_]/', '', $wh['warehouse_name']); $table = "td_stock_{$safe}"; $sql = "SELECT DISTINCT s.serial_number FROM `{$table}` s WHERE s.company_id = :company_id AND s.product_sku = :product_sku AND s.type = 'in' AND s.serial_number IS NOT NULL AND EXISTS ( SELECT 1 FROM md_rack r WHERE r.company_id = s.company_id AND r.td_stock_id = s.id AND r.product_sku IS NOT NULL )"; $params = [ ':company_id' => $company_id, ':product_sku' => $product_sku, ]; if (!empty($lot_number)) { $sql .= " AND s.lot_number = :lot_number"; $params[':lot_number'] = $lot_number; } $sth = $pdo2->prepare($sql); $sth->execute($params); foreach ($sth->fetchAll(PDO::FETCH_ASSOC) as $row) { $active_serials[$row['serial_number']] = $row['serial_number']; } } $answer['output'] = array_values($active_serials); $answer['success'] = 1; exit(json_encode($answer)); ?>