MED: Наукова лабораторія клінічних досліджень
MED — автоматизована система обліку клінічних досліджень, їх тарифікації і виставляння рахунків для оплати. MAD — це універсальний менеджер облікових записів (карток пацієнтів) і схем лікування, які містять історію клінічних досліджень та повʼязаних з ними медичних засобів. Облікові записи контролюються BPMN процесами, активності яких визначені Erlang функціями.
Запуск
Бізнес-процеси підприємства BPE визначають інфраструктуру для оркестрування виробничих процесів згідно стандарту BPMN, та систем на основі декларативних правил. BPE зберігає транзакційно усі кроки бізнес-процесів у сучасній системі даних KVS на базі RocksDB.
$ sudo apt install erlang elixir build-essential cmake$ git clone https://github.com/erpuno/med
$ cd med
$ mix deps.get
$ iex -S mix
$ open http://localhost:8085/app/login.htmЦе навчальний приклад освітнього підготовчого курсу для інтернів, який використовується для здодобуття навичок програмування систем на бібліотеках <a href="https://n2o.dev/ua/">N2O.DEV</a>.
Структура проекту
- Сторінка авторизації
- Адміністратор: BPE, FORM, KVS, N2O, MNESIA
- Бек-офіс: Звітність, Тарифи, Ролі
- Вікно споживача: Профіль, Споживання, Сервіси
Статичні HTML контейнери Споживача
- profile.htm Обліковий запис споживача
- consume.htm Споживання сервісів
- service.htm Налаштування сервісів та тарифи
Статичні HTML контейнери Бек-офісу
- reports.htm Звітність
- tariffs.htm Тарифні моделі
- domains.htm Рольова модель
Статичні 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 форма.
Процеси
Сторінка переліку BPE процесів ERP системи та форма для їх створення.
Форми
Сторінка переліку всіх форм ERP системи.
Транзакції
Сторінка історії кроків бізнес-процесу BPE.
Дидактичні матеріали
- <a href="https://tonpa.guru/stream/2019/2019-07-31%20N2O%20FAQ.htm">N2O FAQ</a>
- <a href="https://tonpa.guru/stream/2016/2016-01-29%20PhoenixFramework%20vs%20N2O.htm">PhoenixFramework vs N2O</a>
- <a href="https://n2o.dev/ua/books/vol.2/index.html">Книга N2O</a>
- <a href="https://n2o.dev/ua/books/vol.3/index.html">Книга ERP</a>
- <a href="https://tonpa.guru/stream/2022/2022-11-17%20%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0%20%D0%B2%D0%B5%D0%B1-%D1%84%D1%80%D0%B5%D0%B9%D0%BC%D0%B2%D0%BE%D1%80%D0%BA%D1%96%D0%B2.htm">Структура веб-фреймворків та приклад EXO</a>
Дописувачі
- Максим Сохацький