prepare(" SELECT t.*, b.code AS board_code FROM tasks t LEFT JOIN boards b ON b.id = t.board_id WHERE t.id = ? LIMIT 1 "); $stmt->execute([$taskId]); $task = $stmt->fetch(); if (!$task) { return false; } // Пока экспортируем только задачи доски снабжения if (($task['board_code'] ?? '') !== 'supply') { return false; } $sheets = new GoogleSheetsService(); $row = [ $task['name'] ?? '', // A Наименование $task['quantity'] ?? '', // B кол-во, шт $task['balance_tn'] ?? '', // C Остаток, тн $task['order_number'] ?? '', // D Заказ, № $task['order_amount'] ?? '', // E Сумма заказа $task['applicant'] ?? '', // F Фамилия $task['request_date'] ?? '', // G дата заявки $task['transport_company'] ?? '', // H ТК $task['supplier'] ?? '', // I Поставщик $task['invoice_number'] ?? '', // J № счета $task['payment_date'] ?? '', // K Дата оплаты $task['delivery_date'] ?? '', // L дата поставки $task['received_by'] ?? '', // M Груз получил ((int)($task['completed_flag'] ?? 0) === 1) ? 'TRUE' : 'FALSE', // N Выполнено ]; $rowNumber = $sheets->findFirstEmptyRow(); $sheets->updateRow($rowNumber, $row); if ($rowNumber > 0) { $stmt = $pdo->prepare(" UPDATE tasks SET google_row_id = ?, source_type = 'google', updated_at = NOW() WHERE id = ? "); $stmt->execute([(string)$rowNumber, $taskId]); } return true; } }