# Аннотация Данное программное обеспечение представляет собой настольное клиентское приложение «Информационная система «Склад книг»» с графическим интерфейсом пользователя (GUI), разработанное на языке программирования Python с использованием библиотеки Tkinter. Приложение предназначено для автоматизации процессов учета, контроля, распределения и резервирования книжной продукции на складах, а также для разграничения прав доступа сотрудников организации посредством интеграции с удаленной базой данных. # Введение Настоящая информационная система разработана для обеспечения эффективного взаимодействия персонала книжного склада с централизованной базой данных. Основные возможности программы: * Интерактивная авторизация пользователей системы с динамической проверкой уровня доступа (роли) через хранимую процедуру `getrole()`. * Просмотр актуального каталога книжной продукции, хранящейся на складах организации. * Учет и отображение информации о текущих складских остатках, зонах хранения и объемах партий. * Управление бронированием и резервированием книг для контрагентов и розничных сетей. * Отображение и ведение актуального списка персонала склада с закрепленными за ними обязанностями. # Назначение и условия применения Программа предназначена для использования сотрудниками административного, логистического и операторского отделов книжных складов и торговых сетей. Условия применения: * Наличие персонального компьютера под управлением операционной системы семейства Windows (7 / 10 / 11). * Стабильное подключение к сети Интернет для обеспечения соединения с удаленным сервером баз данных PostgreSQL. * Свободное дисковое пространство на целевом устройстве не менее 50 МБ. # Установка Для развертывания и запуска информационной системы на рабочей станции пользователя необходимо выполнить следующую последовательность шагов: 1. Склонировать репозиторий с исходным кодом или скачать архив с исполняемым файлом из системы контроля версий. - Скачан архив `PM4.exe` 2. Переместить исполняемый файл в рабочую директорию на жестком диске. - Файл размещен в целевой папке (например, `C:/Книжный Склад/`) 3. Проверить наличие стабильного сетевого подключения к хосту `edu-pg.itiscaf.ru`. - Сеть доступна, брандмауэр не блокирует исходящий трафик на порт 5432 4. Запустить приложение двойным кликом по исполняемому файлу. - Окно авторизации успешно отображено на экране # Описание операций Информационная система предоставляет оператору стандартный набор интерактивных операций: 1. **Авторизация:** Пользователь вводит индивидуальный логин и пароль в экранную форму. Система выполняет безопасный вызов функции `getrole()`. При успешном совпадении оператор перенаправляется на главный экран соответствующего уровня доступа. При ошибке — выводится предупреждение. 2. **Просмотр данных:** Переключение между вкладками «Книги», «Склады», «Резервы» и «Персонал» для чтения актуальной информации из базы данных. 3. **Завершение работы:** Закрытие главного графического окна программы автоматически разрывает сессию соединения с PostgreSQL и корректно освобождает системные ресурсы. # Термины и сокращения | Термин | Определение | | **ИС** | Информационная система. | | **БД** | База данных — структурированный массив данных под управлением СУБД. | | **СУБД** | Система управления базами данных (в данном проекте — PostgreSQL). | | **GUI** | Графический интерфейс пользователя (Graphical User Interface). | | **Исполняемый файл** | Автономный файл формата `.exe`, содержащий скомпилированный код и зависимости. | | **`getrole()`** | Хранимая функция на стороне сервера для верификации учетных данных пользователей. |