# Информационная система «Продажа компьютерной техники» # Аннотация «Продажа компьютерной техники» — клиентское Windows-приложение для учёта товаров, складов, покупателей, сотрудников и заказов магазина компьютерной техники. Программа работает с отдельно развёрнутой базой данных PostgreSQL и предоставляет разные возможности администратору и покупателю. В репозитории размещается исходный код клиентской части информационной системы. База данных, SQL-скрипты и резервные копии в установочный пакет приложения не входят. # Введение Основные возможности программы: - авторизация по логину и паролю; - разграничение доступа по ролям `admin` и `user`; - просмотр сведений о складах, сотрудниках, покупателях и товарах; - учёт остатков товаров на складах; - создание и обработка заказов; - просмотр позиций, входящих в заказ; - поиск и фильтрация записей; - ведение журнала аудита изменений; - формирование отчёта по заказам покупателя за выбранную дату; - просмотр покупателем собственных данных и заказов. # Назначение и условия применения Программа предназначена для автоматизации учёта продаж компьютерной техники, комплектующих и периферийных устройств. Она может применяться сотрудниками магазина или организации, в которой требуется вести сведения о товарах, покупателях, заказах и складских остатках. Для работы необходимы: - компьютер под управлением Windows; - доступ к заранее развёрнутой базе данных PostgreSQL; - корректно настроенные параметры подключения к базе данных; - учётная запись пользователя программы; - .NET 8 Desktop Runtime, если приложение опубликовано без включённой среды выполнения; - права на запуск приложения и запись формируемых файлов в выбранную папку. Клиентское приложение не создаёт сервер PostgreSQL автоматически. Перед первым запуском база данных должна быть развёрнута и доступна по сети. # Установка 1. [ ] Получить установочный файл `ComputerSalesSetup.exe`. 2. [ ] Убедиться, что сервер PostgreSQL запущен и база данных информационной системы доступна. 3. [ ] При необходимости установить .NET 8 Desktop Runtime. 4. [ ] Запустить `ComputerSalesSetup.exe`. 5. [ ] Выбрать папку установки или оставить предложенный путь. 6. [ ] Подтвердить создание ярлыков в меню «Пуск» и на рабочем столе. 7. [ ] Дождаться завершения копирования файлов. 8. [ ] Запустить программу через созданный ярлык. 9. [ ] Ввести выданные администратором логин и пароль. 10. [ ] Убедиться, что после входа загружаются доступные пользователю данные. Удаление приложения выполняется через стандартный раздел Windows для удаления программ либо с помощью файла деинсталляции, созданного Inno Setup. # Описание операций ## Авторизация После запуска необходимо ввести логин и пароль. Состав доступных разделов определяется ролью учётной записи. ## Работа администратора Администратор может: - просматривать основные таблицы информационной системы; - добавлять, изменять и удалять записи; - управлять сведениями о складах, сотрудниках, покупателях и пользователях; - вести справочник товаров; - контролировать остатки товаров на складах; - работать с заказами и позициями заказов; - выполнять поиск и фильтрацию; - просматривать журнал аудита; - формировать отчёт по заказам выбранного покупателя за указанную дату. Перед удалением записи необходимо убедиться, что она не используется связанными данными. Если база данных отклоняет операцию, сначала следует проверить зависимые записи. ## Работа покупателя Пользователь с ролью `user` может: - просматривать личные данные; - просматривать список товаров; - открывать собственные заказы; - просматривать позиции собственных заказов; - использовать доступные средства поиска и просмотра. Покупатель не может изменять справочники, сведения других пользователей и журнал аудита. # Термины и сокращения | Термин | Определение | |---|---| | БД | База данных, в которой хранятся сведения информационной системы | | СУБД | Система управления базами данных | | PostgreSQL | СУБД, используемая серверной частью информационной системы | | Клиентское приложение | Программа, установленная на компьютере пользователя и подключающаяся к БД | | Товар | Компьютерная техника, комплектующее или периферийное устройство | | Склад | Место хранения товаров | | Остаток | Количество определённого товара, доступное на складе | | Покупатель | Клиент, сведения о котором используются при оформлении заказа | | Заказ | Запись о покупке одного или нескольких товаров | | Позиция заказа | Конкретный товар и его количество внутри заказа | | Администратор | Пользователь с правом просмотра и изменения данных | | Пользователь | Покупатель с ограниченным доступом к системе | | Аудит | Журнал, содержащий сведения об изменениях данных | | Inno Setup | Средство создания установочного файла Windows |