# 🚚 Сверка выручки водителей **Driver Revenue Reconciliation** — веб-приложение для сверки выручки водителей с данными транзакций. Работает полностью **в браузере**, без отправки файлов на сервер. ## Возможности - 📄 **Автоматическое определение типа файла** — ведомость или выгрузка транзакций - 📊 **Парсинг ведомостей** приёма наличных средств (формат .xlsx) - 💳 **Парсинг выгрузок TRANSACTIONS_EXT** (столбцы CONDUCTOR, DATE, TARIF_SUM) - 🔍 **Сопоставление** по ФИО водителя + гос. номеру с нечётким сравнением - 📋 **Сводная таблица** с расхождениями - 📑 **Вкладки**: Расхождения, Все водители, По кассирам, По маршрутам, Выводы - 📥 **Экспорт** в CSV и Excel-отчёт - 🌓 **Тёмная / светлая тема** - 🔒 **Полная приватность** — все вычисления локально ## Структура проекта ``` ├── index.html # Главная страница приложения ├── styles.css # Стили (светлая + тёмная тема) ├── main.js # Главный модуль (инициализация, события) ├── utils.js # Утилиты (чтение Excel, CSV, скачивание) ├── ui.js # Компоненты интерфейса (таблицы, сортировка, тема) ├── parser.js # Ядро: парсинг ведомостей, транзакций, сверка └── README.md # Этот файл ``` ## Как использовать 1. Откройте `index.html` в браузере (или разверните на любом хостинге) 2. Перетащите файлы в dropzone: - **Ведомости** — файлы с заголовком «ВЕДОМОСТЬ ПРИЕМА НАЛИЧНЫХ СРЕДСТВ» - **Выгрузка** — файл TRANSACTIONS_EXT с колонками CONDUCTOR, DATE, TARIF_SUM 3. Нажмите **«Провести сверку»** 4. Изучите результаты на вкладках: - **Расхождения** — только водители с разницей между сдано и собрано - **Все водители** — полная таблица - **По кассирам** — сводка по кассирам - **По маршрутам** — сводка по маршрутам - **Выводы** — итоговая статистика 5. Скачайте отчёт в CSV или Excel ## Технологии - Чистый JavaScript (ES Modules) - [SheetJS (xlsx)](https://github.com/SheetJS/sheetjs) — чтение и запись Excel - Никаких внешних зависимостей, кроме CDN-библиотеки XLSX ## Лицензия MIT