Fix/consolidated workspaces 629 #632
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
✅ Key Features Implemented:
Hierarchical Workspace Model: Updated
models/Workspace.js
to support parent/child relationships, organizational types (company, department, team), and inheritance settings.
Granular Permissions: Created
models/PermissionSet.js
to allow fine-grained access control across entities.
Inheritance-Based RBAC: Overhauled
middleware/rbac.js
and
services/workspaceService.js
so that permissions cascade down the organizational tree. An admin at the "Company" level now automatically has access to all sub-departments.
Consolidated Financial Reporting: Created
services/consolidationService.js
to roll up financial data (income, expenses, net flow) from multiple sub-entities into a single master report.
Hierarchical Rule Engine: Refactored
services/ruleEngine.js
and
models/Rule.js
to support Global Rules and Workspace Overrides. A child entity can now override corporate-level automation rules.
Consolidated Currency Exposure: Enhanced
services/revaluationService.js
to report on total currency risk aggregated across all collaborative entities.
New API Endpoints:
POST /sub-workspace: Instantiate child entities within a hierarchy.
GET /consolidated-report: View unified financial analytics for an entire group.
closes #629