Курсовые - Разработка приложения управления организацией

Описание проекта

Сервер на RAGE Multiplayer

Для создания приложения я использую собственный сервер на RAGE Multiplayer (рис.1) с аутентификацией и последующей авторизацией.

Рисунок 1 - Запуск сервера в консоли Windows

 

Чтобы воспользоваться приложением, нужно зайти на сервер с помощью клиента RAGE Multiplayer и авторизоваться (рис.2). После авторизации игрок выбирает персонажа, который появится в мире GTA V (рис.3). Когда он загрузится, появится возможность открыть приложение для управления организациями, нажав клавишу F3.

Рисунок 2 - Окно авторизации

Рисунок 3 - Персонаж в мире GTA V

 

Приложение управления организацией

После обработки события нажатия клавиши F3 с клиента идет запрос на сервер на список организаций, в которых состоит персонаж, и доступ к приложению управления этих организаций. Если персонаж не имеет доступа или не состоит в организациях, то сервер вернет отрицательный ответ. Если персонаж имеет доступ к более, чем одной организации, то сервер предлагает клиенту выбрать нужную организацию. Клиент, в свою очередь, открывает выбор организации с помощью CEF (рис.4).

Рисунок 4 – Выбор организации

 

Когда персонаж выберет организацию или персонаж имеет доступ только к одной организации, на клиенте открывается основное меню (рис.5) приложения с навигацией и статистикой по данной организации. В этом меню можно узнать количество транспорта, ролей и участников, а также открыть меню заказов, налогов и модификаций. В навигации можно перейти на следующие страницы: роли, участники, магазин, имущество и логи.

Рисунок 5 – Основное меню

 

В меню заказов (рис.6) можно посмотреть таблицу с историей всех заказов, а также отследить статус текущих. Таблицу можно сортировать по типу товара и по статусу доставки.

Рисунок 6 – Меню заказов

 

В меню налогов (рис.7) персонажу нужно оплатить налоги, если они имеются. Оплачивать налоги должен владелец бизнеса (магазин, АЗС). Также в этом меню можно посмотреть историю платежей.

Рисунок 7 – Меню налогов

 

В меню модификаций (рис.8) персонаж может купить улучшения для своей организации. К примеру, для магазина персонаж может купить улучшенный сейф для того, чтобы уменьшить шанс взлома грабителями. После покупки улучшения, оно добавляется в организацию на сервере.

Рисунок 8 – Меню модификаций

 

В меню управления ролями (рис.9) можно изменить права доступа к определенной роли, добавить новую роль или удалить уже существующую. Пользователь может производить действия над ролями, только если имеет на это права и его роль выше (имеет больше прав), чем роль, над которой производятся действия.

Рисунок 9 – Меню управления ролями

 

Права доступа реализуются с помощью битовой маски. Битовой маской называют комбинацию двоичных значений, которая используется для проверки и выборки единиц на нужных позициях. После изменений или добавления роли, данные о доступах хранятся в таблице базы данных в десятичном виде (рис.10).

 

Рисунок 10 – Таблица organization_rank

 

         В меню участников (рис.11) можно узнать кто состоит в организации, находится ли персонаж в сети, изменить роли персонажа или удалить его из организации, если есть права на эти действия. Список участников представляет собой таблицу, которую можно отсортировать по всем полям (имя, роли, статус).

Рисунок 11 – Меню участников

 

Меню магазина делится на три категории:

  • Магазин транспорта
  • Магазин недвижимости
  • Магазин товаров

В магазине транспорта (рис.12) можно купить транспорт для организации. У каждой организации свой уникальный транспорт, характеристики и изображение которого можно посмотреть в карточке т/с. Чтобы купить транспорт, у персонажа должен быть доступ к этому действию, а также у организации должно хватать денежных средств и парковочных мест. Если какое-либо из условий не соблюдается, то сервер возвращает ответ на клиент с кодом ошибки.

Рисунок 12 – Магазин транспорта

 

         В магазине недвижимости (рис.13) можно купить склады для своей организации. В зависимости от вида организации, представлена разная недвижимость. К примеру, для магазинов можно купить склад для хранения товаров. В карточке недвижимости есть изображение и характеристика с указанием местоположения. Также как и с транспортом, если какое-либо из условий не соблюдается, то сервер возвращает ответ на клиент с кодом ошибки.

Рисунок 13 – Магазин недвижимости

 

         В магазине товаров (рис.14) можно купить товары для продажи или использования внутри организации. Также можно перекупать товары у других организаций. При покупке товара, нужно выбрать куда его доставить и каким способом. После подтверждения оплаты можно отследить статус товара в меню заказов (рис.6).

Рисунок 14 – Магазин товаров

 

В меню имущества также, как и в меню магазина, есть три категории: транспорт, недвижимость и товары, которые делятся на товары на складе и товары на продаже.

В категории транспорта (рис.15) персонаж может просмотреть транспортное средство, которым владеет организация, а также отремонтировать его и установить модификации, если имеет права доступа на эти действия.

Рисунок 15 – Карточка т/с в меню имущества

 

         В категории недвижимости персонаж может просмотреть чем владеет организация, а также проложить маршрут до каждого объекта.

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

         В категории товаров на продаже (рис.16) находятся все товары, которые выставлены на продажу. В этом меню можно вернуть товары на склад, т.е. отменить продажу или вернуть только часть товаров.

Рисунок 16 – Товары на продажу в меню имущества

 

         На странице логов можно увидеть все основные действия, которые совершали пользователи в приложении данной организации. Доступ к этой странице имеют только владельцы (или лидеры) организаций.

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться