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

160 lines
6.0 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.

# Проект ЕРВ - Форма обращений за выплатой страховки
## Описание проекта
Веб-приложение для обработки обращений за выплатой страхового возмещения по полисам ЕРВ (Евроинс). Проект представляет собой многошаговую форму с интеграцией в CRM-систему ClientRight.
## Технологический стек
- **Backend**: PHP 7.4+
- **Frontend**: HTML5, CSS3, JavaScript (jQuery)
- **База данных**: MySQL
- **Интеграции**:
- CRM ClientRight (веб-сервисы)
- DaData API (автодополнение адресов и организаций)
- SMS-сервис для подтверждения телефона
- IP-геолокация (ip-api.com)
## Структура проекта
```
erv.clientright.ru/
├── ticket/ # Основная рабочая версия формы
│ ├── index.php # Главная страница формы
│ ├── database.php # Проверка полисов в БД
│ ├── sms-test.php # Тестирование SMS
│ ├── css/ # Стили
│ ├── js/ # JavaScript файлы
│ └── libs/ # Внешние библиотеки
├── ticket3/ # Альтернативная версия
├── ervws/ # Версия для веб-сервисов
├── test/ # Тестовая версия
├── public_html/ # Публичная версия
├── vendor/ # PHP зависимости (Composer)
├── libs/ # Общие библиотеки
└── Документация API.txt # Документация по API CRM
```
## Основные функции
1. **Многошаговая форма** (3 шага):
- Шаг 1: Подтверждение телефона через SMS
- Шаг 2: Информация о страховом случае
- Шаг 3: Персональные данные и документы
2. **Проверка полиса**:
- Валидация номера полиса в базе данных
- Проверка тарифов и сроков действия
3. **Загрузка файлов**:
- Поддержка форматов: PDF, JPG, PNG, GIF, JPEG, HEIC
- Конвертация HEIC в JPEG
- Максимальный размер файла: 5 МБ
- Максимум 10 файлов на поле
4. **Интеграция с CRM**:
- Создание/обновление клиента (CreateContact)
- Создание/обновление контрагента (CreateAccount)
- Создание проекта (CreateProject)
- Загрузка файлов в CRM
## Конфигурация
### База данных
- Хост: `localhost`
- База: `ci20465_erv`
- Таблица для проверки полисов: `lexrpiority`
### CRM API
- Endpoint: `https://crm.clientright.ru/webservice.php`
- Username: `api`
- Access Key: `4r9ANex8PT2IuRV`
### Внешние сервисы
- **DaData API Token**: `f5d6928d7490cd44124ccae11a08c7fa5625d48c`
- **Форма обработки**: `https://form.clientright.ru/server_new.php`
- **Загрузка файлов**: `https://form.clientright.ru/fileupload_v2.php`
## Установка и запуск
1. Убедитесь, что установлены:
- PHP 7.4 или выше
- MySQL
- Composer (для зависимостей)
2. Установите зависимости:
```bash
composer install
```
3. Настройте подключение к базе данных в `database.php`
4. Настройте права доступа для загрузки файлов
## Рабочие версии
- **Основная рабочая версия**: `/ticket/`
- **Тестовая версия**: `/test/`
- **Публичная версия**: `/public_html/`
## API CRM - Основные операции
### 1. Авторизация
```php
operation = getchallenge
operation = login
```
### 2. Работа с клиентами
```php
operation = CreateContact
```
### 3. Работа с контрагентами
```php
operation = CreateAccount
```
### 4. Работа с проектами
```php
operation = CreateProject
```
### 5. Получение списка файлов
```php
operation = GetFilesList
```
Подробная документация в файле `Документация API.txt`
## Особенности реализации
- **Валидация форм**: Проверка обязательных полей на каждом шаге
- **Маски ввода**: Телефон, ИНН, даты, банковские реквизиты
- **Адаптивность**: Поддержка мобильных устройств
- **Логирование**: Логи операций в `logs/logfile.log`
- **Обработка ошибок**: Try-catch блоки и валидация ответов
## Безопасность
- Проверка типов файлов при загрузке
- Валидация размеров файлов
- Защита от XSS через экранирование данных
- Использование сессий для изоляции данных пользователей
## Разработка
Для разработки используйте версию в директории `/ticket/` или `/test/`.
### Тестовый режим
Добавьте параметр `?demodata=1` к URL для автоматического заполнения формы тестовыми данными.
## Контакты
- Разработчик: [TG: @wwdev](https://t.me/wwdev)
## Лицензия
Проект разработан для ЕРВ (Евроинс).