Sin descripción

xcvxcvxcvxcvxcv44444 22d8863ea9 Обновить 'README.md' hace 1 semana
docs 05cf239334 Обновление README hace 2 semanas
installer 3a5cba740b Перенос установщика hace 1 semana
.gitignore 05cf239334 Обновление README hace 2 semanas
AppSettings.cs 60734dd941 Добавление проекта hace 1 mes
AutorentWinForms.csproj b3bf6b7f68 Добавление README hace 2 semanas
Database.cs 60734dd941 Добавление проекта hace 1 mes
LoginForm.cs 60734dd941 Добавление проекта hace 1 mes
MainForm.cs 60734dd941 Добавление проекта hace 1 mes
Program.cs 60734dd941 Добавление проекта hace 1 mes
README.md 22d8863ea9 Обновить 'README.md' hace 1 semana
database_security_postgresql.sql 60734dd941 Добавление проекта hace 1 mes
dbsettings.example.json b3bf6b7f68 Добавление README hace 2 semanas

README.md

Аннотация

Информационная система «Автопрокат» представляет собой настольное Windows Forms приложение на C# для учета клиентов, автомобилей, марок и договоров аренды. Программа подключается к PostgreSQL, инициализирует учебную схему данных, разграничивает права пользователей по ролям и позволяет формировать отчеты.

Введение

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

  • авторизация пользователей с ролями admin, manager, viewer;
  • просмотр, поиск, добавление, изменение и удаление клиентов;
  • ведение справочника автомобилей и марок;
  • оформление и сопровождение договоров аренды;
  • экспорт таблиц в CSV;
  • формирование отчетов в HTML и TXT;
  • просмотр журнала операций и событий аудита;
  • проверка работоспособности через режим --smoke-test;
  • разворачивание приложения через графический установщик AutorentSetup.exe.

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

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

Условия применения:

  • операционная система Windows 10 или новее;
  • установленный .NET SDK 9.0 для сборки проекта;
  • доступ к серверу PostgreSQL;
  • учетная запись БД с правом подключения к рабочей базе и схеме;
  • сетевой доступ к серверу edu-pg.itiscaf.ru или к другому PostgreSQL-серверу, указанному в dbsettings.json.

Установка

Шаги установки для пользователя

  1. Запустите файл AutorentSetup.exe.
  2. В окне мастера установки выберите папку для установки.

По умолчанию используется:

   C:\Users\<пользователь>\AppData\Local\AutorentWinForms

Папку можно изменить кнопкой Обзор....

  1. При необходимости оставьте отметку Создать ярлык на рабочем столе.
  2. Нажмите Установить и дождитесь завершения копирования файлов.
  3. Нажмите Готово.
  4. Установка завершена. Приложение можно запустить через ярлык на рабочем столе или через файл:

    C:\Users\<пользователь>\AppData\Local\AutorentWinForms\AutorentWinForms.exe
    

Что устанавливается в систему

  • главный исполняемый файл приложения AutorentWinForms.exe;
  • файл настроек подключения dbsettings.json;
  • зависимости .NET и библиотеки PostgreSQL-драйвера;
  • папка Reports создается при сохранении отчетов и CSV-файлов;
  • ярлык на рабочем столе, если пользователь выбрал соответствующий пункт.

Проверка установленной версии

Проверить работоспособность установленной версии можно командой из папки установки:

.\AutorentWinForms.exe --smoke-test

Успешная проверка завершается без сообщения об ошибке. В консольной сборке режим также выводит строку вида OK: clients=..., audit=..., adminAuth=True.

Файл подключения можно изменить после установки:

<папка установки>\dbsettings.json

Дополнительно можно передать строку подключения через переменную окружения AUTORENT_CONNECTION_STRING. В этом случае файл dbsettings.json не используется.

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

Пользователь входит в программу через форму авторизации. После успешного входа открывается главное окно с вкладками данных. Набор доступных операций зависит от роли пользователя.

Основные операции:

  • Клиенты: поиск, просмотр, добавление, редактирование, удаление и экспорт списка клиентов;
  • Автомобили: учет регистрационного номера, марки, года выпуска, стоимости аренды и статуса;
  • Марки: ведение справочника марок автомобилей, доступно администратору;
  • Аренда: создание договора аренды, изменение периода, стоимости и статуса возврата;
  • Отчеты: формирование аналитической сводки и сохранение ее в HTML или TXT;
  • Аудит: просмотр журнала действий пользователей;
  • CSV: выгрузка текущей таблицы в папку Reports.

Тестовые учетные записи для учебного стенда:

Логин Пароль Роль garanin_gi пароль postgresql из таблицы тризбд Администратор manager Manager123! Менеджер shagavaliev_iv пароль postrgesql Аналитик

Диаграмма развертывания системы

flowchart LR
    subgraph Client["Рабочая станция оператора"]
        User["Оператор"]
        App["AutorentWinForms.exe"]
        Settings["dbsettings.json или AUTORENT_CONNECTION_STRING"]
        Reports["Папка Reports"]
    end

    subgraph Build["Среда сборки"]
        Installer["AutorentSetup.exe"]
        Publish["publish/AutorentWinForms"]
    end

    subgraph Server["Сервер PostgreSQL"]
        Db["База dbwork"]
        Schema["Схема автопроката"]
        Audit["audit_log"]
    end

    User --> App
    Installer --> Publish
    Publish --> App
    App --> Settings
    App --> Reports
    App -- "Npgsql, TCP 5432" --> Db
    Db --> Schema
    Schema --> Audit

Руководство оператора

Подробное руководство оператора находится в файле docs/operator_manual.md.

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

Термин - Расшифровка ИС - Информационная система БД - База данных PostgreSQL - Система управления реляционными базами данных WinForms - Технология создания настольных приложений Windows на .NET Оператор - Пользователь, выполняющий работу в программе Администратор - Пользователь с полными правами на данные и справочники Менеджер - Пользователь, ведущий клиентов, автомобили и аренды Аналитик - Пользователь с правом просмотра данных и отчетов CSV - Текстовый формат табличной выгрузки Npgsql - .NET-драйвер для подключения к PostgreSQL