Nathnael
9b48955eaf
feat: centralized the user onboaridn requriements
2026-06-24 11:50:28 +00:00
Nathnael
43be6892aa
fix: block the user from booking if not approved
2026-06-24 11:50:04 +00:00
Nathnael
c9694177d8
style: ui improvement to kpi in portal
2026-06-24 08:55:09 +00:00
Nathnael
9d5c195d94
style: improvment to the booking
2026-06-24 08:16:49 +00:00
Nathnael
10d74a65b0
fix: type error and fixes
2026-06-23 14:20:16 +00:00
Nathnael
cbbad02b29
fix: type error and other fixes
2026-06-23 13:14:06 +00:00
ghost2023
cdfe7c1f5b
fix: type errors
2026-06-23 15:02:25 +03:00
ghost2023
fab05569d4
fix
2026-06-23 10:03:54 +03:00
Nathnael Wondisha
56968e0709
Merge branch 'freight/develop' into freight/style/ui-sync
2026-06-23 09:51:24 +03:00
Nathnael
a6f3fd5643
feat: finish company profile in the backoffice
2026-06-23 06:45:29 +00:00
Nathnael
f7cbb6af6f
fix: query key
2026-06-22 13:52:34 +00:00
Nathnael
2700a3edec
refactor: migrate from most of the custom hooks into the api.ts
2026-06-22 13:46:38 +00:00
marshal
02427f72f1
Merge pull request #243 from Tria-plc/freight_feature/profile
...
Freight feature/profile
2026-06-22 15:49:25 +03:00
Marshal
39f2c99395
feat: add phone number normalization to Ethiopian E.164 format in CompanyProfileForm
2026-06-22 12:35:01 +00:00
Nathnael
c6bc636495
feat(customers): implement customer management page with mock data
...
- Created CustomersPage component to display a list of companies with search and pagination features.
- Added mock data for companies, including various statuses and profiles.
- Implemented a service layer to simulate API calls for fetching company data, bookings, documents, and payments.
- Defined TypeScript types for company and related entities to ensure type safety.
- Integrated Mantine components for UI consistency and improved user experience.
2026-06-22 12:32:52 +00:00
Marshal
30b022356c
feat: update onboarding and company role handling to support multiple service types
2026-06-22 12:30:44 +00:00
Nathnael
d66ccc5363
refactor: migrated of the customer hooks for warehouse data fetching
2026-06-22 12:25:20 +00:00
Marshal
ad0043b580
feat: enhance service profile handling for customer companies
2026-06-22 12:11:10 +00:00
Marshal
3e45d694da
changes
2026-06-22 11:54:10 +00:00
Nathnael
74e03f2067
refactor: migrate to use the central api obj
2026-06-22 11:52:59 +00:00
Marshal
b031ddb204
Merge branch 'freight/develop' of github.com:Tria-plc/edr-platform into freight_feature/priority
2026-06-22 11:43:38 +00:00
Marshal
ff039bd440
feat(bookings): update payment eligibility logic for general contracts and one-time bookings
2026-06-22 11:40:35 +00:00
yaschalew
78692c6b59
Merge branch 'freight/develop' of github.com:Tria-plc/edr-platform into freight/feature/vehicle_2
2026-06-22 14:23:59 +03:00
yaschalew
7f51f24a77
fix conflict
2026-06-22 14:23:43 +03:00
ghost2023
992ba8f55f
fix: migration issue
2026-06-22 14:20:17 +03:00
ghost2023
b1318a6ef5
fix: pruge the js blob
2026-06-22 14:13:15 +03:00
Dagimassefa
b3bfa899f5
update
2026-06-22 12:29:48 +03:00
Nathnael Wondisha
fff679369d
Merge branch 'freight/develop' into freight/style/ui-sync
2026-06-22 11:58:18 +03:00
Muluhabt
41c51b7986
Adding local packages
2026-06-22 11:53:17 +03:00
Nathnael
8fb432e30f
style: finalize the style of the dashboard
2026-06-22 08:52:45 +00:00
Nathnael
feddce8a0c
style: use the proper primary color
2026-06-22 08:11:11 +00:00
Nathnael
ec708d85b3
style: update the overview style
2026-06-22 08:05:04 +00:00
natib21
6b1bbd8e59
last mile
2026-06-22 07:58:56 +00:00
natib21
bee47b231a
add column
2026-06-22 07:54:07 +00:00
natib21
00d722fa4f
last mile
2026-06-22 07:49:47 +00:00
Nathnael
9a224e9baf
style: WIP ui updates
2026-06-22 07:44:03 +00:00
marshal
b777da4bd7
remove defect
2026-06-22 10:01:07 +03:00
natib21
f2d0a90065
:Merge branch 'freight/feature/vehicle' of github.com:Tria-plc/edr-platform into freight/feature/vehicle
2026-06-22 06:55:03 +00:00
Nathnael
e6101c5514
style: WIP BatchBoard and train schedule
2026-06-22 06:38:05 +00:00
Hagernesh
0939202c8f
Merge freight/develop into Warehouse_updates
2026-06-21 15:41:32 +00:00
Hagernesh
14b6219c9d
chore(warehouse): comprehensive demo seeder — populate every queue coherently
...
WarehouseDemoSeeder creates one coherent WH-DEMO-* dataset so every tab shows data:
- Export Receive (3 PAID export bookings, no inventory)
- Export Ready To Load (3 READY_FOR_LOADING + PASSED)
- Export Loaded/Dispatch (2 LOADED)
- Import Arrive (1 ARRIVED Djibouti→Ethiopia train, 3 IN_TRANSIT bookings)
- Import Unloaded (3 UNLOADED)
- Import Dispatch (3 READY_FOR_PICKUP + PASSED)
Idempotent (sentinel WH-DEMO-RCV-1); dedicated refs so it never collides with SEED-* data.
Verified: all queues populated, dashboard shows 19 items across all 7 statuses.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-21 15:06:50 +00:00
Hagernesh
41d21edae5
feat(warehouse): Batch 10 — import post-inspection actions (pickup / last-mile / store / dispatch)
...
- READY_FOR_PICKUP transitions now → DELIVERED (customer pickup) OR DISPATCHED (dispatch out) OR
STORED (operator-chosen storage) — pickup and dispatch kept separate. No auto-storage.
- GET /warehouse-inventory/import/pickup-ready-queue: READY_FOR_PICKUP import items (shared query
with the unloaded queue, route-derived import filter)
- WarehouseInventoryTable: PICKUP_READY rows now show explicit Store + Dispatch buttons alongside
the customer-pickup (release/deliver) next action; reuses the existing advance() dispatcher
- Import → Dispatch Queue tab renders pickup-ready items via InventoryWorkbench (all existing
actions + modals intact) with Last Mile shown only when door delivery was requested
- Verified: pickup-ready item → Store → STORED; → Dispatch → DISPATCHED
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-21 14:38:23 +00:00
Hagernesh
040ba6d495
feat(warehouse): Batch 9 — Import Unloaded Queue + bulk destination inspection
...
- bulkMarkInspected: UNLOADED added to eligible statuses; IMPORT passed items now advance to
READY_FOR_PICKUP (pickup ready) instead of READY_FOR_LOADING (export unchanged)
- GET /warehouse-inventory/import/unloaded-queue: UNLOADED import items with the inspection-screen
columns (booking, customer, arrival, container, cargo type, weight, train schedule, inspection
status, pickup option, last-mile, current status); route-derived import filter
- Dedicated ImportUnloadedQueueTab replaces the Batch 8 workbench reuse: full spec columns,
Select All / Unselect All / selected count / Mark Selected as Inspected, plus per-row
Inspect / Report (InspectionReportModal) for damage / image / weight-loss detail
- Verified: import item UNLOADED → bulk inspect → READY_FOR_PICKUP (PASSED), drops out of queue
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-21 14:15:22 +00:00
Hagernesh
8b28a7c430
feat(warehouse): Batch 8 — Import Auto Unload Arrived Bookings (→ UNLOADED)
...
- New UNLOADED inventory status (train-arrival landing state) + transitions + unloaded_at column
(idempotent migration 1791000000003) + INVENTORY_UNLOADED activity type
- POST /warehouse-inventory/import/auto-unload-arrived-bookings { scheduleId }: validates ARRIVED
IMPORT train, unloads all eligible assigned bookings (IN_TRANSIT/ARRIVED_AT_*) into UNLOADED,
records unloadedAt + activity. Does NOT store and does NOT inspect. Reuses allocation + inventory
plumbing. Returns { unloadedCount, skippedCount, failedCount, results }.
- Arrive Queue "Auto Unload Arrived Bookings" button now calls the new endpoint (was per-booking loop)
- Import → Unloaded Queue tab: lists UNLOADED items via InventoryWorkbench (existing actions preserved:
Inspect/Store/Move/History) + a Last Mile action shown ONLY when booking requested door delivery
- Batch8TestDataSeeder: sets seed import train bookings to IN_TRANSIT (unload-eligible)
- Verified: auto-unload → 1 UNLOADED (unloadedAt set, not stored, not inspected); ineligible skipped;
idempotent re-run skips already-unloaded
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-21 12:57:29 +00:00
Hagernesh
35c3341baf
feat(warehouse): Batch 7 — Import Arrive Queue (arrived import trains, read-only)
...
- SchedulingReadFacade: importArriveQueue() + importTrainDetail() — read-only SELECTs only,
direction derived from origin/destination station countries (route-based), so EXPORT/DOMESTIC
trains are excluded. Per-train booking/container/cargo counts.
- GET /warehouse-inventory/import/arrive-queue + /import/trains/:scheduleId/items
- Import tab restructured into sub-tabs: Arrive Queue (implemented) / Unloaded Queue /
Dispatch Queue (placeholders for next batch)
- ImportArriveQueueTab: train table (schedule id, train #, route, origin, destination, arrival,
bookings/containers/cargoes, status) with Open (expandable assigned-items detail) + Auto Unload
(reuses existing per-booking unload endpoint over the train's bookings)
- Batch7TestDataSeeder: 1 arrived IMPORT train (SEED-IMP-001) + 1 arrived EXPORT train
(SEED-EXP-001, proves exclusion); idempotent
- Train schedule service logic untouched (facade is SELECT-only)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-21 11:15:31 +00:00
Marshal
dc708a2473
Refactor phone input handling across onboarding and settings forms
...
- Replaced PhoneInput component with ControlledPhoneField for better integration with react-hook-form.
- Updated validation for phone numbers using isValidPhone function to ensure proper formatting.
- Removed country code handling from forms, simplifying phone number management.
- Introduced new phone field component with consistent styling and behavior.
- Added phone number validation on the backend using class-validator.
- Removed unused phone utility functions and cleaned up related code.
2026-06-21 10:34:40 +00:00
Dagimassefa
e6d3e2401b
feat(backoffice): integrate IAM user management with host auth adapter and freight theming
2026-06-21 12:16:48 +03:00
Dagimassefa
8111606e89
switch user management to package implmentation
2026-06-21 12:11:35 +03:00
Marshal
171e02cf7f
feat(bookings): enhance booking filtering and pagination
...
- Added createdFrom and createdTo filters to BookingListFilterOptions and FilterBookingDto for date range filtering.
- Updated BookingsService and BookingsRepository to handle pagination metadata in responses.
- Enhanced BookingsController to return pagination metadata when no company is linked.
- Introduced ModeIndicator component to display current operational mode across various pages.
- Added ContainersCard and KeyFactsStrip components for detailed booking views.
- Implemented CargoModeCell, BookingTypeBadge, and PaymentBadge for consistent display of booking attributes.
- Updated MyBookings and ContractsList pages to include new filters and display enhancements.
2026-06-21 07:41:04 +00:00
marshal
f82dad3657
Merge branch 'freight_feature/priority' of github.com:Tria-plc/edr-platform into freight_feature/priority
2026-06-21 09:39:50 +03:00