Skip to main content

ORDER

🛒 Technical Specification: Order Setup


📋 Feature Overview

Attribute Detail
Module 📂 Transaction (ORDER)
Feature Name Order Management
Description Central hub for managing client orders. Supports Bulk Orders, Non-Standard (NS) Orders, Diverting active orders, and managing backlogs.
Page & Detail
1. Listing Page: /listing-order-manage
Displays tabs for Backlog, All Orders, and Diverted Orders.
2. Add/Edit Page: /add-order-manage
Form for creating new orders headers.
3. Bulk Order: BulkOrderPage
Popup dialog for mass creation of orders via grid.
4. NS Order: AddNSOrderPopup
Popup dialog for creating Non-Standard orders via SO List.
5. Order Details: OrderDetailsPage
Popup dialog for adding individual line items (products) to an order.
6. Divert Actions: DivertOrderConfirmation 
Dialogs to confirm and process order diversion to new clients.
User Guide 📄 [Ekajaya Admin User Guide - Transaction Module]

🛠️ Technical Implementation

A. Permissions & Access Control

Note: Access is controlled via PermissionGuard and component-level checks.
Scope Permission Code Description & Page Usage
Menu Visibility ORDER.MENU

Sidebar menu visibility.

\listing-order-manage

\add-order-manage

Page Routing ORDER.VIEW Access to listing and add page.
\listing-order-manage
Create Action ORDER.UPDATE Controls the + Add button on listing.
\listing-order-manage
View Access ORDER.VIEW Controls visibility of Edit icon.
\listing-order-manage
Delete Action ORDER.DELETE Visibility of the Delete 🗑️ icon.
\listing-order-manage
Bulk Order BULK_ORDER.VIEW Visibility of the Bulk Order button.
\listing-order-manage
Edit/Save Action ORDER.UPDATE Ability to save changes on Add/Edit screen.
\add-order-manage

B. API Interaction

Base URL: ${environment.baseApiUrl}
1. Listing Order Manage \listing-order-manage
/settings/getQuery
POST
Filter: type='Order Status'
/clients/getQuery
POST
Filter: isDeleted=0
/deliveryAddresses/getQuery
POST
Filter: clientId
/products/getQuery
POST
Filter: isDeleted=0
/orders/getQuery
POST
Filter: orderStatus, clientId, isLocal, divertStatus
/jobs/getQuery
POST
Filter: orderId (Dependency Check)
/orders/delete
POST
Purpose: Hard Delete Order
/order/updateDivertStatus
POST
Purpose: Update Divert Flag (Diverting/Undiverting)
/order/divertOrder
POST
Purpose: Process Order Diversion (New Client/Address)
2. Add/Edit Order Manage \add-order-manage
/clients/getQuery
POST
Filter: isDeleted=0
/deliveryAddresses/getQuery
POST
Filter: clientId
/suppliers/getQuery
POST
Filter: isDeleted=0
/pickupAddresses/getQuery
POST
Filter: supplierId
/settings/getQuery
POST
Filter: type='Additional Option'
/order/createEkaOrder
POST
Purpose: Create multiple orders (Loop)
3. Bulk Order Popup BulkOrderPage
/pickupAddresses/getQuery
POST
Purpose: Fetch initial data (Supplier/Pickup info)
/clients/getQuery
POST
Filter: isDeleted=0
/deliveryAddresses/getQuery
POST
Filter: clientId
/supplierProducts/getQuery
POST
Filter: supplierId, pickupAddressId
/productUnitOfMeasurements/getQuery
POST
Filter: productId
/companies/getQuery
POST
Filter: isDeleted=0
/order/createEkaOrder
POST
Purpose: Create multiple orders (Loop)
4. NS Order Popup AddNSOrderPopup
/order/createNSOrder
POST
Purpose: Create Non-Standard Order from SO List
5. Order Details Popup OrderDetailsPage
/supplierProducts/getQuery
POST
Filter: supplierId, pickupAddressId
/productUnitOfMeasurements/getQuery
POST
Filter: productId
/companies/getQuery
POST
Filter: isDeleted=0