COMPANY
🏢 Technical Specification: Company Setup
📋 Feature Overview
🛠️ Technical Implementation
A. Permissions & Access Control
Note: Access is controlled via
PermissionGuard and UI directives.| Scope | Permission Code | Description & Page Usage |
|---|---|---|
| Menu Visibility | COMPANY.MENU |
Sidebar menu item visibility.
|
| Page Routing | COMPANY.LISTING |
Access to listing route.\listing-company |
| Page Routing | COMPANY.VIEW |
Access to add route.
|
|
Create Action |
COMPANY.CREATE |
Visibility of the Add + button. |
| View/Edit Access | COMPANY.VIEW |
Controls visibility of action buttons to navigate to edit page.\listing-company |
| Delete Action | COMPANY.DELETE |
Visibility of the Delete 🗑️ icon.\listing-company |
| Update/Edit Action | COMPANY.UPDATE |
Ability to save changes on Edit screen.\add-company-manage |
B. API Interaction
Base URL:
${environment.baseApiUrl}1. Listing Company
\listing-company/companies/getQuery
POSTFilter:
companyName, description, remark, isDeleted=0/companyUsers/getQuery
POSTFilter:
companyId (Dependency Check - Users)/drivers/getQuery
POSTFilter:
companyId, isDeleted=0 (Dependency Check - Drivers)/movers/getQuery
POSTFilter:
companyId, isDeleted=0 (Dependency Check - Movers)/tankers/getQuery
POSTFilter:
companyId, isDeleted=0 (Dependency Check - Tankers)/companies/update
POSTPurpose: Delete (
isDeleted=true)2. Add Company Manage
\add-company-manage/companies/getOne
GETPurpose: Fetch specific record by ID
/companies/getQuery
POSTFilter:
companyName (Uniqueness Check)/companies/create
POSTPurpose: Create new
dataSource record/companies/update
POSTPurpose: Update existing
dataSource record