Keine Beschreibung

TheLim148 44aa8bc8a7 Init vor 1 Woche
MuseumWinForms 44aa8bc8a7 Init vor 1 Woche
.gitignore 44aa8bc8a7 Init vor 1 Woche
README.md 44aa8bc8a7 Init vor 1 Woche
dump.sql 44aa8bc8a7 Init vor 1 Woche
Руководство оператора.md 44aa8bc8a7 Init vor 1 Woche

README.md

Информационная система «Учёт экспонатов музея»

Аннотация

«Учёт экспонатов музея» — клиентское Windows-приложение для просмотра и изменения сведений о музейных экспонатах. Программа разработана на C# с использованием Windows Forms, работает с отдельно развёрнутой базой данных PostgreSQL и подключается к ней с помощью библиотеки Npgsql.

В репозитории размещается исходный код клиентской части информационной системы. Сервер PostgreSQL, дамп базы данных и средства администрирования базы не входят в установочный пакет приложения.

Введение

Основные возможности программы:

  • просмотр списка экспонатов в табличном виде;
  • отображение типа экспоната, даты создания, цены, себестоимости, автора и идентификатора музея;
  • добавление новых экспонатов;
  • изменение цены выбранного экспоната;
  • удаление выбранного экспоната с подтверждением;
  • обновление сведений, загруженных из базы данных;
  • загрузка списка авторов;
  • подсчёт количества экспонатов, созданных указанным автором;
  • отображение результатов выполненных операций и сообщений об ошибках.

В текущей версии программы отсутствуют отдельная форма авторизации и разграничение доступа по ролям. После запуска оператору доступны все реализованные функции.

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

Программа предназначена для ведения сведений об экспонатах музея. Она может применяться сотрудником музея или ответственным оператором для просмотра каталога, добавления новых объектов, изменения их цены и удаления записей.

Для работы необходимы:

  • компьютер под управлением Windows;
  • установленная платформа .NET Framework 4.7.2;
  • доступ к заранее развёрнутому серверу PostgreSQL;
  • корректно настроенные параметры подключения к базе данных;
  • наличие в базе таблиц Exhibit, Creator и Museum;
  • наличие функции get_exhibit_count_by_author;
  • права учётной записи базы данных на чтение и изменение используемых таблиц;
  • установленные вместе с приложением библиотеки, включая Npgsql.

Клиентское приложение не устанавливает и не настраивает сервер PostgreSQL автоматически. Перед первым запуском база данных должна быть развёрнута и доступна по сети.

Установка

  1. Получить установочный файл MuseumExhibitsSetup.exe.
  2. Убедиться, что сервер PostgreSQL запущен и доступен с рабочего компьютера.
  3. При необходимости установить .NET Framework 4.7.2.
  4. Запустить MuseumExhibitsSetup.exe.
  5. Разрешить запуск установщика, если Windows выведет предупреждение.
  6. Выбрать папку установки или оставить предложенный путь.
  7. Подтвердить создание ярлыков в меню «Пуск» и на рабочем столе.
  8. Дождаться завершения копирования файлов приложения и зависимостей.
  9. Запустить программу через созданный ярлык.
  10. Убедиться, что в главном окне загрузились список экспонатов и список авторов.

Удаление приложения выполняется через стандартный раздел Windows для удаления программ либо с помощью файла деинсталляции, созданного Inno Setup.

Удаление клиентского приложения не удаляет базу данных с сервера PostgreSQL.

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

Просмотр экспонатов

После запуска программа подключается к серверу PostgreSQL и загружает список экспонатов.

В таблице отображаются:

  • идентификатор экспоната;
  • тип экспоната;
  • дата создания;
  • цена экземпляра;
  • себестоимость создания;
  • автор;
  • идентификатор музея.

Для просмотра большого количества записей используются полосы прокрутки таблицы.

Обновление данных

Кнопка «Обновить» повторно загружает сведения из базы данных.

Эту операцию следует выполнять после изменения данных другим пользователем или непосредственно на сервере. После успешного обновления программа выводит сообщение «Данные обновлены».

Добавление экспоната

Для добавления записи необходимо заполнить поля в группе «Данные для добавления»:

  • ID — уникальный числовой идентификатор экспоната;
  • Тип — наименование типа экспоната;
  • Дата — дата создания;
  • Цена — цена экземпляра;
  • Себестоимость — затраты на создание или приобретение;
  • Автор — значение, выбранное из списка авторов;
  • ID музея — идентификатор существующего музея.

После заполнения полей следует нажать кнопку «Добавить».

Идентификатор экспоната должен быть уникальным. Выбранный автор и указанный музей должны существовать в базе данных. Цена и себестоимость вводятся в числовом формате, принятом в настройках Windows.

После успешного добавления таблица обновляется, поля ввода очищаются, а программа выводит сообщение «Экспонат добавлен!».

Изменение цены

Для изменения цены необходимо:

  1. Выбрать экспонат в таблице.
  2. Нажать кнопку «Изменить цену».
  3. Ввести новое числовое значение.
  4. Подтвердить операцию.

После успешного изменения таблица обновляется и появляется сообщение «Цена обновлена!».

Другие сведения об экспонате в текущей версии приложения не редактируются.

Удаление экспоната

Для удаления необходимо:

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

Если выбрать ответ «Нет», операция будет отменена.

Удаление может быть отклонено базой данных, если на экспонат ссылаются связанные записи.

Подсчёт количества экспонатов автора

Кнопка «Тест процедуры» вызывает функцию подсчёта количества экспонатов автора.

Для выполнения операции необходимо:

  1. Нажать кнопку «Тест процедуры».
  2. Ввести числовой идентификатор автора.
  3. Подтвердить ввод.
  4. Просмотреть результат в нижней части главного окна.

Программа вызывает функцию PostgreSQL get_exhibit_count_by_author и отображает количество экспонатов, связанных с указанным автором.

Сборка проекта

Для сборки исходного кода необходимы:

  • Visual Studio с поддержкой проектов .NET Framework;
  • .NET Framework 4.7.2 Developer Pack;
  • восстановленные NuGet-пакеты проекта;
  • доступ к серверу PostgreSQL для проверки работы приложения.

Рекомендуемый порядок сборки:

  1. Открыть решение MuseumWinForms.sln в Visual Studio.
  2. Восстановить NuGet-пакеты.
  3. Проверить параметры подключения к PostgreSQL.
  4. Выбрать конфигурацию Release.
  5. Выполнить сборку решения.
  6. Получить исполняемые файлы в каталоге MuseumWinForms/bin/Release.
  7. Добавить содержимое каталога Release в установочный пакет Inno Setup.

Конфиденциальные параметры подключения, включая пароль к базе данных, не следует публиковать в открытом репозитории.

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

Термин Определение
БД База данных, в которой хранятся сведения информационной системы
СУБД Система управления базами данных
PostgreSQL СУБД, используемая для централизованного хранения данных
Клиентское приложение Программа, установленная на компьютере оператора и подключающаяся к БД
Экспонат Объект, сведения о котором хранятся в музейном каталоге
Автор Создатель произведения или другого музейного объекта
Музей Организация, в которой хранится или учитывается экспонат
Цена экземпляра Указанная в базе данных стоимость экспоната
Себестоимость Затраты, связанные с созданием или приобретением экспоната
Идентификатор Уникальное числовое значение записи
Windows Forms Технология создания графических приложений для Windows
.NET Framework Программная платформа, необходимая для запуска приложения
Npgsql Библиотека для подключения приложений .NET к PostgreSQL
Inno Setup Средство создания установочного файла Windows
Git Система контроля версий исходного кода