# Аннотация

Руководство оператора описывает порядок установки, проверки и использования информационной системы «Автопрокат». Документ предназначен для пользователя, который запускает программу, вводит данные об аренде автомобилей, формирует отчеты и выполняет контроль корректности работы.

# Введение

Область применения системы: учет деятельности учебного автопроката, включая клиентов, автомобили, марки, договоры аренды, отчеты и журнал операций.

Основные возможности:

- вход в систему по логину и паролю;
- работа с данными клиентов, автомобилей, марок и договоров аренды;
- разграничение доступа по ролям;
- экспорт списков в CSV;
- формирование отчетов в HTML и TXT;
- просмотр аудита выполненных операций;
- проверка состояния подключения и базовых функций.

# Подготовка к работе

Порядок установки:

1. Убедиться, что на компьютере установлена Windows 10 или новее.
2. Запустить файл `AutorentSetup.exe`.
3. В окне мастера установки выбрать папку установки.
4. По желанию отметить создание ярлыка на рабочем столе.
5. Нажать `Установить`.
6. Дождаться завершения копирования файлов.
7. Нажать `Готово`.
8. Открыть файл `dbsettings.json` в папке установки и указать параметры подключения к PostgreSQL, если они отличаются от учебного стенда.
9. Запустить приложение через ярлык или файл `AutorentWinForms.exe`.

Порядок проверки работоспособности:

1. Выполнить smoke-тест:

   ```powershell
   .\AutorentWinForms.exe --smoke-test
   ```

2. Убедиться, что команда завершилась без сообщения об ошибке. В консольной сборке может появиться строка `OK`.
3. Запустить программу в обычном режиме.
4. Войти под тестовой учетной записью менеджера.
5. Открыть вкладку `Клиенты` и убедиться, что таблица загрузилась.
6. Выполнить поиск по части ФИО или телефона.
7. Сформировать отчет и проверить появление файла в папке `Reports`.

# Описание операций

Авторизация:

1. Запустить `AutorentWinForms.exe`.
2. Ввести логин и пароль.
3. Нажать кнопку входа.
4. При неверных данных повторить ввод или обратиться к администратору.

Работа с клиентами:

1. Открыть вкладку `Клиенты`.
2. Для поиска ввести часть ФИО, телефона или другого признака в поле поиска.
3. Для добавления нажать `Добавить`, заполнить поля и сохранить запись.
4. Для изменения выбрать строку, нажать `Редактировать`, внести изменения и сохранить.
5. Для удаления выбрать строку и подтвердить удаление.
6. Для выгрузки нажать `CSV`.

Работа с автомобилями:

1. Открыть вкладку `Автомобили`.
2. Проверить регистрационный номер, марку, год выпуска, стоимость аренды и статус.
3. Добавить или изменить автомобиль при наличии прав менеджера или администратора.
4. Использовать статус автомобиля для контроля доступности.

Работа с арендами:

1. Открыть вкладку `Аренда`.
2. Создать новую запись аренды, выбрав клиента и автомобиль.
3. Указать даты начала и окончания аренды.
4. Указать стоимость и статус договора.
5. При возврате автомобиля обновить статус аренды.

Формирование отчетов:

1. Открыть вкладку `Отчеты`.
2. Нажать кнопку формирования отчета.
3. Выбрать сохранение в HTML или TXT.
4. Открыть созданный файл из папки `Reports`.

Просмотр аудита:

1. Открыть вкладку `Аудит`.
2. Просмотреть записи о добавлении, изменении и удалении данных.
3. При необходимости использовать сведения аудита для восстановления хода операций.

# Аварийные ситуации

| Ситуация | Причина | Действие оператора |
| - | - | - |
| Программа не запускается | Повреждены файлы установки или отсутствует исполняемый файл | Повторно запустить `AutorentSetup.exe` |
| Ошибка подключения к БД | Неверная строка подключения или нет сети | Проверить `dbsettings.json`, логин, пароль и доступность PostgreSQL |
| Не выполняется вход | Неверные учетные данные | Проверить логин и пароль, обратиться к администратору |
| Таблица не загружается | Недоступна схема БД или нарушены права | Выполнить `--smoke-test`, проверить права пользователя БД |
| Не сохраняется запись | Нарушено ограничение данных | Проверить обязательные поля, уникальность телефона, номера автомобиля и корректность дат |
| Не создается отчет | Нет прав записи в папку программы | Запустить из доступной пользователю папки или выдать права на папку `Reports` |
| Нет доступа к редактированию | Роль пользователя не позволяет изменять данные | Войти под менеджером или администратором |

# Термины и сокращения

| Термин | Значение |
| - | - |
| ИС | Информационная система |
| БД | База данных |
| Оператор | Пользователь, выполняющий операции в программе |
| Администратор | Пользователь с полными правами |
| Менеджер | Пользователь, который ведет рабочие данные автопроката |
| Аналитик | Пользователь, который просматривает данные и отчеты |
| Аренда | Договор временного использования автомобиля клиентом |
| Аудит | Журнал действий пользователей |
| CSV | Формат выгрузки табличных данных |
| Smoke-тест | Быстрая проверка запуска, подключения и базовых функций |
