Частина 6. Структура додатку PLM
Постановка задачі
У Частинах 3 і 4 ми показали, як писати прості універсальні адмінки для головних об'єктів підприємства — даних і процесів. У цій частині ми покажемо структуру першого еліксир додатку PLM для управління підприємством, що здійснює аутсорсную діяльність. Вимоги до цього додатка були сформульовані в Частині 1, а первинна структура самого підприємства і його ресурсів захована в додатку ERP (яке повинно публікуватися в приватному репозиторії). Але для прикладу, і заради прозорості бухгалтерського обліку між самими програмістами, організаційна структура підприємства заекспожена публічно повністю, разом з інвойсами і агрегованими сумами за зарплатними відомостями, але без деталізації по ЗП, проте з часовими аллокаціями робочого часу (рейтинги анонімні, опціони нараховуються незалежно від рейтингів). Окрім опціонів можна здійснювати інвестування в проекти цієї аутсорс компанії під заставу самих же проектів компанії, яка акумулюється у відповідному субконто рахунку, після обчислення чистого нерозподіленого прибутку. Всього статей для розподілу не є багато: 1) резерв компанії; 2) кредитування інших проектів; 3) опціони програмістів; 4) дослідження і розробка.
Конфигурація
Щоб не писати кожен раз цю прелюдію для кожної програми, покажемо на прикладі PLM проекту, який вже включає майже весь стек: N2O, KVS, BPE, а також інші N2O протоколи CHAT, NITRO. NITRO — є портом написаного Расті Клопхаусом Nitrogen Web Framework.
config/config.exs
Публікація
mix.exs
Сторінки
PLM
PLM.Index
PLM.CashFlow
FIN
FIN.Index
LDAP
LDAP.Index
Роутер
Роутер контролерів сторінок Nitrogen Web фреймворку. У цьому роутері ми подключаємо всі наші модулі, разроблені в Частинах 3 і 4, тобто адміністратори даних та процесів.
ldap — LDAP.Index
form — FORM.Index
act — BPE.Actor
bpe — BPE.Index
kvs — KVS.Index
plm — PLM.Index
cashflow — PLM.CashFlow