The goal of this project is to enable a user to configure an organization structure of any depth and complexity using Ethereum addresses as nodes. It currently supports:
The use case provides for a Purchase Order approval scenario whereby a PO is submitted for approval and migrates up the organization hierarchy until the appropriate approval level is reached. The node determined by this process becomes the approver of the PO.
The eventual goal is to be able to add plug-ins for any type of business process that would refer to the org structure.
There is currently a limitation whereby Smart Contracts can generate no more than 24K in bytecode (EIP 170) https://github.com/ethereum/EIPs/issues/170. Both org.sol and po.sol will need to be refactored into smaller contracts in order to complete the functionality. The PO approval process works but some maintenance functions are yet to be deployed due to EIP 170 issues.
This is my first Ethereum project and I am attempting to replicate the functionality I am familiar with from working on global supply chain and financial systems.
The frontend is basic Bootstrap at this point.