87 lines
4.0 KiB
Markdown
87 lines
4.0 KiB
Markdown
|
|
# 🔒 РЕЗЕРВНАЯ КОПИЯ РАБОЧЕГО СОСТОЯНИЯ СИСТЕМЫ
|
|||
|
|
|
|||
|
|
**Дата создания:** $(date '+%Y-%m-%d %H:%M:%S')
|
|||
|
|
**Статус:** ✅ РАБОЧЕЕ СОСТОЯНИЕ - S3 + Nextcloud интеграция работает
|
|||
|
|
|
|||
|
|
## 📋 ОПИСАНИЕ СОСТОЯНИЯ
|
|||
|
|
|
|||
|
|
### ✅ ЧТО РАБОТАЕТ:
|
|||
|
|
1. **S3 загрузка файлов** - новые файлы автоматически загружаются в S3 хранилище
|
|||
|
|
2. **Nextcloud редактирование** - файлы корректно открываются в Nextcloud для редактирования
|
|||
|
|
3. **Правильные URL** - в CRM отображаются корректные S3 ссылки
|
|||
|
|
4. **База данных** - все метаданные сохраняются правильно
|
|||
|
|
|
|||
|
|
### 🔧 КЛЮЧЕВЫЕ ИСПРАВЛЕНИЯ:
|
|||
|
|
|
|||
|
|
#### 1. **data/CRMEntity.php**
|
|||
|
|
- ✅ S3 интеграция работает
|
|||
|
|
- ✅ Правильное сохранение S3 URL в поле `filename`
|
|||
|
|
- ✅ Корректный `nc_path` с дублированием `/crm2/` для Nextcloud
|
|||
|
|
- ✅ Установка `filelocationtype = 'E'` для внешних файлов
|
|||
|
|
|
|||
|
|
#### 2. **База данных vtiger_notes**
|
|||
|
|
- ✅ Все записи имеют правильный `nc_path` в формате `/crm2/crm2/CRM_Active_Files/Documents/...`
|
|||
|
|
- ✅ `filename` содержит корректные S3 URL
|
|||
|
|
- ✅ `filelocationtype = 'E'` для всех S3 файлов
|
|||
|
|
- ✅ Метаданные S3 (bucket, key, etag) сохранены
|
|||
|
|
|
|||
|
|
#### 3. **База данных vtiger_attachments**
|
|||
|
|
- ✅ `path = 's3://{bucket}'`
|
|||
|
|
- ✅ `storedname = {s3_key}` (не оригинальное имя файла!)
|
|||
|
|
|
|||
|
|
## 📁 ФАЙЛЫ РЕЗЕРВНОЙ КОПИИ
|
|||
|
|
|
|||
|
|
### Основные файлы:
|
|||
|
|
- `data/CRMEntity.php.backup.YYYYMMDD_HHMMSS_WORKING_S3_NEXTCLOUD`
|
|||
|
|
- `backup_database_YYYYMMDD_HHMMSS_WORKING_S3_NEXTCLOUD.sql`
|
|||
|
|
|
|||
|
|
### Конфигурация:
|
|||
|
|
- `.env` файл в `crm_extensions/.env`
|
|||
|
|
- `config.inc.php` с флагом `$UPLOAD_TO_S3 = true`
|
|||
|
|
|
|||
|
|
## 🔄 ИНСТРУКЦИЯ ПО ОТКАТУ
|
|||
|
|
|
|||
|
|
### Если нужно откатиться к этому состоянию:
|
|||
|
|
|
|||
|
|
1. **Восстановить CRMEntity.php:**
|
|||
|
|
```bash
|
|||
|
|
cp data/CRMEntity.php.backup.YYYYMMDD_HHMMSS_WORKING_S3_NEXTCLOUD data/CRMEntity.php
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
2. **Восстановить базу данных:**
|
|||
|
|
```bash
|
|||
|
|
mysql -u ci20465_72new -p'EcY979Rn' ci20465_72new < backup_database_YYYYMMDD_HHMMSS_WORKING_S3_NEXTCLOUD.sql
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
3. **Проверить конфигурацию:**
|
|||
|
|
- Убедиться что `$UPLOAD_TO_S3 = true` в `config.inc.php`
|
|||
|
|
- Проверить `.env` файл в `crm_extensions/.env`
|
|||
|
|
|
|||
|
|
## 🧪 ТЕСТИРОВАНИЕ
|
|||
|
|
|
|||
|
|
### Проверочные записи:
|
|||
|
|
- **393009** - последняя рабочая запись с правильными путями
|
|||
|
|
- **393007** - исправленная запись
|
|||
|
|
- **392997** - исправленная запись
|
|||
|
|
|
|||
|
|
### Проверка работы:
|
|||
|
|
1. Загрузить новый файл - должен сохраниться в S3
|
|||
|
|
2. Нажать "Редактировать в Nextcloud" - должен открыться правильный файл
|
|||
|
|
3. В карточке документа должен отображаться S3 URL
|
|||
|
|
|
|||
|
|
## ⚠️ ВАЖНЫЕ МОМЕНТЫ
|
|||
|
|
|
|||
|
|
1. **Пути Nextcloud:** Файлы находятся по пути `/crm2/crm2/CRM_Active_Files/Documents/` (с дублированием)
|
|||
|
|
2. **S3 ключи:** Сохраняются как `crm2/CRM_Active_Files/Documents/...` (без дублирования)
|
|||
|
|
3. **nc_path:** Должен содержать дублирование `/crm2/` для корректной работы с Nextcloud
|
|||
|
|
|
|||
|
|
## 📞 КОНТАКТЫ
|
|||
|
|
|
|||
|
|
**Разработчик:** AI Assistant
|
|||
|
|
**Пользователь:** Фёдор
|
|||
|
|
**Система:** Ubuntu 22.04, vTiger CRM + S3 + Nextcloud
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
*Резервная копия создана автоматически*
|
|||
|
|
|