# Интернет-провайдер

Информационная система для автоматизации деятельности интернет-провайдера с авторизацией, разграничением ролей и аналитическими отчётами.

## Введение

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

- Авторизация пользователей с хешированием паролей по алгоритму MD5
- Управление тарифами (добавление, редактирование, удаление)
- Управление клиентской базой с маскированием персональных данных
- Управление договорами с отслеживанием статуса
- Разграничение прав доступа по ролям (администратор, менеджер, оператор)
- Аналитические отчёты (популярность тарифов, доходы)
- Журнал действий (логирование всех изменений)
- Защита данных на уровне базы данных и приложения

## Назначение и условия применения

Система предназначена для автоматизации деятельности интернет-провайдера. Может использоваться как в учебных целях, так и в реальных организациях, предоставляющих услуги связи.

Требования к системе:

- ОС: Windows 10/11
- .NET 10.0 или выше
- PostgreSQL 16 или выше
- Доступ к серверу базы данных (локальный или удалённый)

## Установка

### Требования

- [ ] Windows 10/11
- [ ] .NET 10.0+
- [ ] PostgreSQL 16+
- [ ] Доступ к интернету (для скачивания зависимостей)

### Шаги установки

1. Скачай установщик `ProviderAppSetup.exe`
2. Запусти файл
3. Следуй инструкциям мастера установки
4. Выбери папку для установки (по умолчанию `C:\Program Files\ProviderApp`)
5. Дождись завершения установки
6. Запусти приложение через ярлык на рабочем столе

### Настройка подключения к базе данных

1. Открой файл конфигурации в папке с программой
2. Найди строку подключения
3. Измени параметры подключения:
   - `Host` — адрес сервера базы данных
   - `Port` — порт (по умолчанию 5432)
   - `Database` — имя базы данных
   - `Username` — имя пользователя
   - `Password` — пароль
4. Сохрани файл и перезапусти приложение

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

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

1. Введи логин и пароль
2. Нажми кнопку «Войти»

### Добавление тарифа (администратор, менеджер)

1. Нажми кнопку «Добавить»
2. Заполни поля: Название, Цена, Скорость
3. Нажми «Сохранить»

### Редактирование тарифа (администратор, менеджер)

1. Выбери тариф в таблице
2. Нажми кнопку «Изменить»
3. Измени нужные поля
4. Нажми «Сохранить»

### Удаление тарифа (только администратор)

1. Выбери тариф в таблице
2. Нажми кнопку «Удалить»
3. Подтверди удаление

### Управление клиентами (администратор, менеджер)

1. Выбери раздел «Клиенты»
2. Для добавления нажми «Добавить», заполни поля
3. Для редактирования выбери клиента, нажми «Изменить»
4. Для удаления выбери клиента, нажми «Удалить» (только администратор)

### Оформление договора (администратор, менеджер)

1. Выбери раздел «Договоры»
2. Нажми «Добавить»
3. Выбери клиента, тариф и сотрудника
4. Укажи дату подписания
5. Нажми «Сохранить»

### Формирование отчётов (администратор, менеджер)

1. Нажми кнопку «Аналитика»
2. Укажи период для выборки
3. Нажми «Показать»

### Просмотр журнала действий (только администратор)

1. Нажми кнопку «Журнал действий»
2. Отобразится список всех действий пользователей
3. Данные можно обновить кнопкой «Обновить»

---

© 2026