Major CRM updates: AI Assistant, Court Status API, S3 integration improvements, and extensive file storage system

- Added comprehensive AI Assistant system (aiassist/ directory):
  * Vector search and embedding capabilities
  * Typebot proxy integration
  * Elastic search functionality
  * Message classification and chat history
  * MCP proxy for external integrations

- Implemented Court Status API (GetCourtStatus.php):
  * Real-time court document status checking
  * Integration with external court systems
  * Comprehensive error handling and logging

- Enhanced S3 integration:
  * Improved file backup system with metadata
  * Batch processing capabilities
  * Enhanced error logging and recovery
  * Copy operations with URL fixing

- Added Telegram contact creation API
- Improved error logging across all modules
- Enhanced callback system for AI responses
- Extensive backup file storage with timestamps
- Updated documentation and README files

- File storage improvements:
  * Thousands of backup files with proper metadata
  * Fix operations for broken file references
  * Project-specific backup and recovery systems
  * Comprehensive file integrity checking

Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
This commit is contained in:
Fedor
2025-10-16 11:17:21 +03:00
parent dabcd43a00
commit ac7467f0b4
26580 changed files with 50860 additions and 3261 deletions

63
debug_project_web.php Normal file
View File

@@ -0,0 +1,63 @@
<?php
// Веб-диагностика файлов проекта 391604
require_once 'config.inc.php';
require_once 'include/utils/Letters.php';
$projectid = 391604;
echo "<h2>Диагностика файлов проекта $projectid</h2>";
// 1. Проверяем основной документ (исковое заявление)
echo "<h3>1. Проверяем исковое заявление:</h3>";
$claim = getClaim($projectid, 'исковое');
echo "<p>Результат: " . $claim['result'] . "</p>";
if ($claim['result'] == 'YES') {
echo "<p>Файл: " . $claim['filepath'] . "</p>";
echo "<p>Название: " . $claim['filename'] . "</p>";
echo "<p>S3 данные: bucket=" . $claim['s3_bucket'] . ", key=" . $claim['s3_key'] . "</p>";
echo "<p>Тип размещения: " . $claim['filelocationtype'] . "</p>";
if ($claim['filelocationtype'] == 'E') {
echo "<p>Пытаемся скачать из S3...</p>";
$tempPath = getTempFileFromS3($claim['s3_bucket'], $claim['s3_key'], 'test_claim.pdf');
if ($tempPath) {
echo "<p style='color: green'>✅ S3 файл успешно скачан: $tempPath</p>";
unlink($tempPath);
} else {
echo "<p style='color: red'>❌ Ошибка скачивания из S3</p>";
}
}
} else {
echo "<p style='color: red'>❌ Исковое заявление не найдено</p>";
}
echo "<h3>2. Проверяем дополнительные документы:</h3>";
$otherDocs = getOtherDocs($projectid, 9728036753, 0, 0);
echo "<p>Найдено документов: " . count($otherDocs) . "</p>";
for ($i = 0; $i < count($otherDocs); $i++) {
echo "<div style='border: 1px solid #ccc; margin: 10px; padding: 10px;'>";
echo "<h4>Документ " . ($i + 1) . ":</h4>";
echo "<p><strong>Название:</strong> " . $otherDocs[$i]['description'] . "</p>";
echo "<p><strong>Файл:</strong> " . $otherDocs[$i]['filepath'] . "</p>";
echo "<p><strong>S3 данные:</strong> bucket=" . $otherDocs[$i]['s3_bucket'] . ", key=" . $otherDocs[$i]['s3_key'] . "</p>";
echo "<p><strong>Тип размещения:</strong> " . $otherDocs[$i]['filelocationtype'] . "</p>";
if ($otherDocs[$i]['filelocationtype'] == 'E' && !empty($otherDocs[$i]['s3_bucket']) && !empty($otherDocs[$i]['s3_key'])) {
echo "<p>Пытаемся скачать из S3...</p>";
$tempPath = getTempFileFromS3($otherDocs[$i]['s3_bucket'], $otherDocs[$i]['s3_key'], 'test_other_' . $i . '.pdf');
if ($tempPath) {
echo "<p style='color: green'>✅ S3 файл успешно скачан: $tempPath</p>";
unlink($tempPath);
} else {
echo "<p style='color: red'>❌ Ошибка скачивания из S3</p>";
}
} else {
echo "<p style='color: blue'> Локальный файл или нет S3 данных</p>";
}
echo "</div>";
}
echo "<h3>Конец диагностики</h3>";
?>