Files
erv-clientright/CONFIG.md
2026-03-13 10:42:01 +03:00

280 lines
8.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Конфигурация проекта
## Переменные окружения и настройки
### База данных
**Файл:** `ticket/database.php`
```php
$host = "localhost";
$username = "ci20465_erv";
$password = "c7vOXbmG";
$database = "ci20465_erv";
$table = "lexrpiority";
```
### CRM API
**Endpoint:**
```
https://crm.clientright.ru/webservice.php
```
**Учетные данные:**
```php
$username = "api";
$userAccessKey = "4r9ANex8PT2IuRV";
```
**WebForms Capture:**
```
https://crm.clientright.ru/modules/Webforms/capture.php
```
**Параметры формы:**
```php
$formToken = "sid:ec649134ad232e44c3ad71bbd321cee986f05545,1688385374";
$publicId = "3ddc71c2d79ef101c09b0d4e9c6bd08b";
$formName = "websiteticket";
```
### Внешние сервисы
#### DaData API
```php
$dadataToken = "f5d6928d7490cd44124ccae11a08c7fa5625d48c";
$dadataUrl = "https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/party";
```
#### IP Geolocation
```php
$ipApiUrl = "http://ip-api.com/json/{IP}?lang=ru";
```
#### File Upload
```php
$fileUploadUrl = "https://form.clientright.ru/fileupload_v2.php";
```
#### Form Processing
```php
$formProcessingUrl = "https://form.clientright.ru/server_new.php";
```
### Контрагент по умолчанию (ЕРВ)
**Файл:** `ticket/index.php` (строки 65-72)
```php
$contractor = array(
'inn' => '7714312079',
'ogrn' => '1037714037426',
'accountname' => 'Филиал ООО РСО ЕВРОИНС Туристическое',
'address' => '119049 Москва, 4-й Добрынинский пер., д.8, помещ. С 14-I, ком. 21-26',
'email' => 'info@erv.ru',
'phone' => '84956265800',
'website' => 'https://www.erv.ru/'
);
```
### Валидные тарифы полисов
**Базовые тарифы:**
```php
$valid_tariffs_basic = [
'STB0048', 'STB1099', 'STB1100', 'STB2099',
'AVS21500', 'AVS22500'
];
```
**Дополнительные тарифы:**
```php
$valid_tariffs_other = [
'SPV0001', 'SPV0002', 'SPV0003', 'SPV0004', 'SPV0005',
'STV0090',
'SPV1001', 'SPV1002', 'SPV1003', 'SPV1004', 'SPV1005',
'SPV2001', 'SPV2002', 'SPV2004', 'SPV2005',
'OPV1001', 'OPV1002', 'OPV1003', 'OPV1004', 'OPV1005',
'OPV2001', 'OPV2002', 'OPV2004', 'OPV2005'
];
```
### Ограничения файлов
```php
$maxFileSize = 5 * 1024 * 1024; // 5 МБ
$maxFilesPerField = 10;
$allowedFormats = ['pdf', 'jpg', 'png', 'gif', 'jpeg', 'heic', 'HEIC'];
```
### Настройки формы
**ID формы:**
```php
$formId = "00001";
```
**Направление обращения:**
```php
$direction = "ЕРВ Средства размещения";
```
### Маппинг полей формы
#### Поля клиента (data-ws_type="client")
| Поле формы | CRM поле | Описание |
|------------|----------|----------|
| `lastname` | `lastname` | Фамилия |
| `firstname` | `firstname` | Имя |
| `patronymic` | `secondname` | Отчество |
| `phonenumber` | `mobile` | Телефон |
| `email` | `email` | Email |
| `birthday` | `birthday` | Дата рождения |
| `reg_adres` | `mailingstreet` | Адрес регистрации |
| `inn` | `inn` | ИНН |
| `code` | `code` | SMS-код |
#### Поля проекта (data-ws_type="project")
| Поле формы | CRM поле | Описание |
|------------|----------|----------|
| `insured_from` | `cf_1887` | Дата начала страхования |
| `insured_to` | `cf_1889` | Дата окончания страхования |
| `claim` | `cf_1899` | Код документа |
| `doc` | `cf_1804` | Серия и номер документа |
| `countryevent` | `cf_1909` | Страна события |
| `agree` | `cf_2502` | Согласие на обработку данных |
#### Поля контрагента (data-ws_type="contractor")
| Поле формы | CRM поле | Описание |
|------------|----------|----------|
| `place_inn` | `inn` | ИНН |
| - | `ogrn` | ОГРН |
| `place` | `accountname` | Наименование |
| `place_adres` | `address` | Адрес |
| `place_email` | `email` | Email |
| `place_phone` | `phone` | Телефон |
| `place_website` | `website` | Сайт |
#### Другие поля (data-ws_type="other")
| Поле формы | CRM поле | Описание |
|------------|----------|----------|
| - | `cf_2446` | Флаг наличия в базе |
| `police_number` | `cf_1885` | Номер полиса |
| `event_type` | `cf_1726` | Тип события |
| `insurence_date` | `cf_2566` | Дата страхового случая |
| `transport_number` | `cf_2568` | Номер рейса/поезда |
| `description` | `description` | Описание ситуации |
| - | `cf_1945` | ФИО получателя |
| - | `cf_1265` | Банк |
| - | `cf_1267` | БИК |
| - | `cf_1269` | Расчетный счет |
| - | `cf_1271` | Корр. счет |
| - | `cf_1273` | Иные реквизиты |
### Типы страховых случаев
```php
$eventTypes = [
'delay_flight' => 'Задержка авиарейса (более 3 часов)',
'cancel_flight' => 'Отмена авиарейса',
'miss_connection' => 'Пропуск (задержка прибытия) стыковочного рейса',
'emergency_landing' => 'Посадка воздушного судна на запасной аэродром',
'delay_train' => 'Задержка отправки поезда',
'cancel_train' => 'Отмена поезда',
'delay_ferry' => 'Задержка/отмена отправки парома/круизного судна'
];
```
### Коды документов
```php
$documentCodes = [
'21' => 'Паспорт гражданина Российской Федерации',
'07' => 'Военный билет',
'24' => 'Удостоверение личности военнослужащего Российской Федерации',
'91' => 'Иные документы'
];
```
### Настройки логирования
**Путь к логам:**
```php
$logFile = "logs/logfile.log";
```
**Уровни логирования:**
- Информационные сообщения
- Ошибки
- Отладочная информация
### Настройки сессии
```php
session_start();
$subDir = session_id(); // Используется для изоляции файлов пользователей
```
### URL для редиректа после успешной отправки
```php
$successRedirectUrl = "https://lexpriority.ru/ok";
```
### Политика обработки персональных данных
```php
$privacyPolicyUrl = "https://lexpriority.ru/politics";
```
## Рекомендации по безопасности
1. **Храните секретные ключи в переменных окружения**
2. **Не коммитьте пароли и токены в репозиторий**
3. **Используйте HTTPS для всех внешних запросов**
4. **Валидируйте все входные данные**
5. **Используйте prepared statements для SQL**
6. **Ограничьте права доступа к файлам**
7. **Регулярно обновляйте зависимости**
## Переменные для разработки
### Тестовый режим
```php
// Добавьте ?demodata=1 к URL для автоматического заполнения формы
$demoMode = isset($_GET["demodata"]) ? $_GET["demodata"] : false;
```
### Тестовые данные для API
```php
$testInn = "643922466250";
$testSmsCode = "795372";
```
## Настройки сервера
### PHP требования
- PHP 7.4 или выше
- Расширения:
- curl
- mysqli
- gd (для работы с изображениями)
- mbstring
### Права доступа
```bash
# Для директории загрузки файлов
chmod 755 uploads/
chmod 755 logs/
```
### Настройки PHP.ini
```ini
upload_max_filesize = 10M
post_max_size = 10M
max_execution_time = 300
memory_limit = 256M
```