Skip to content

Latest commit

 

History

History
134 lines (97 loc) · 7.52 KB

README.md

File metadata and controls

134 lines (97 loc) · 7.52 KB

EXO: Тарифікація та розрахунки

Hex pm Actions Status

EXO (EXOSCULAT, рахунок латиною) — автоматизована система обліку наданих послуг, їх тарифікації і виставляння рахунків для оплати. EXO — це універсальний менеджер облікових записів (клієнтських рахунків), які містять історію тарифікованих транзакцій. Облікові записи контролюються BPMN процесами, активності яких визначені Erlang функціями. EXO, як приклад ERP.UNO може бути використаний як прототип для побудови білінгових систем, банків та інших облікових систем.

Запуск

Бізнес-процеси підприємства BPE визначають інфраструктуру для оркестрування виробничих процесів згідно стандарту BPMN, та систем на основі декларативних правил. BPE зберігає транзакційно усі кроки бізнес-процесів у сучасній системі даних KVS на базі RocksDB.

$ sudo apt install erlang elixir build-essential cmake
$ git clone https://github.com/erpuno/exo
$ cd exo
$ mix deps.get
$ iex -S mix
$ open http://localhost:8051/app/login.htm

Це навчальний приклад освітнього підготовчого курсу для інтернів, який використовується для здодобуття навичок програмування систем на бібліотеках N2O.DEV.

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

  • Сторінка авторизації
  • Адміністратор: BPE, FORM, KVS, N2O, MNESIA
  • Бек-офіс: Звітність, Тарифи, Ролі
  • Вікно споживача: Профіль, Споживання, Сервіси

Статичні HTML контейнери Споживача

  • profile.htm Обліковий запис споживача
  • consume.htm Споживання сервісів
  • service.htm Налаштування сервісів та тарифи

Статичні HTML контейнери Бек-офісу

Статичні HTML контейнери Адміністратора

  • login.htm Сторінка авторизації
  • bpe.htm Сторінка всіх процесів
  • form.htm Сторінка всіх форм
  • process.htm Сторінка історії процесу
  • kvs.htm Сторінка всіх ланцюжків даних
  • n2o.htm Сторінка службових таблиць сервісів N2O
  • mnesia.htm Сторінка таблиць бази даних MNESIA

Базові модулі

  • application.ex Головний модуль Erlang/OTP додатку
  • schema.ex Схема даних, її налаштування
  • routes.ex Налаштування маршрутів HTML сторінок для веб-серверу
  • boot.ex Первинна ініціалізація тестових даних

Редактори форм

  • phone_form.ex Форма аутентифікації
  • process_form.ex Форма створення процесу
  • process_row.ex Таблична форма-рядок відображення процесу
  • hist_row.ex Таблична форма-рядок відображення кроку процесу

Контролери сторінок

  • adm_act.ex Сторінка відображення історії процесу
  • adm_bpe.ex Сторінка переліку всіх процесів BPE
  • adm_form.ex Сторінка відображення всіх форм системи FORM
  • adm_kvs.ex Сторінка даних KVS
  • adm_n2o.ex Сторінка таблиць N2O
  • adm_mnesia.ex Сторінка даних MNESIA
  • exo_login.ex Сторінка аутентифікації
  • exo_tariffs.ex Сторінка налаштування тарифних моделей
  • exo_domains.ex Сторінка адміністрування користувачів системи
  • exo_service.ex Сторінка підключення сервісів споживача

Аутентифікація

Сторінка аутентифікації та авторизаціх разом з системними сесіями є важливою частиною кожної ERP системи. У прикладі наведена PLAIN password HTML форма.

image

Процеси

Сторінка переліку BPE процесів ERP системи та форма для їх створення.

image

Форми

Сторінка переліку всіх форм ERP системи.

image

Транзакції

Сторінка історії кроків бізнес-процесу BPE.

image

Дидактичні матеріали

Дописувачі

  • Максим Сохацький