Commit Graph

709 Commits

Author SHA1 Message Date
Hagernesh Tadesse
ff0fa6bb9e Merge pull request #498 from Tria-plc/Doublehandling
Doublehandling
2026-07-07 09:48:26 +03:00
Hagernesh
24fa6ab83b Doublehandling 2026-07-07 06:25:58 +00:00
marshal
a171cf1f96 Merge pull request #497 from Tria-plc/freight_feature/usermanagement
enhance booking and contract notification systems
2026-07-07 09:07:31 +03:00
Marshal
05b13e84a8 enhance booking and contract notification systems
- Added detailed logging for socket connection events in useBookingWindowSocket.
- Introduced new notification types for contract status and schedule updates.
- Updated notification visuals to include new icons for contract status.
- Enhanced notification href resolution for contract status and schedule updates.
- Implemented booking lifecycle notifier service for customer and staff notifications.
- Created contract notifier service for managing contract lifecycle notifications.
- Added end-to-end tests for booking window socket functionality.
2026-07-06 21:03:08 +00:00
Hagernesh Tadesse
8b5ba8415f Merge pull request #494 from Tria-plc/PertruckExit
Export Loading to train
2026-07-06 22:21:03 +03:00
Hagernesh
838895897d Marshaling doc fix 2026-07-06 19:12:14 +00:00
Hagernesh
8785d992ab export loading 2026-07-06 19:00:04 +00:00
Hagernesh
bc47a42e1e export loading 2026-07-06 18:53:25 +00:00
Marshal
8bd00ea78a enhance user management and booking features with permissions and real-time updates 2026-07-06 17:15:22 +00:00
Nathnael
1fdd5e3c4c feat: add permissions 2026-07-06 14:10:44 +00:00
Hagernesh
692d9074d0 feat: container/bulk items datatable on warehouse view details
Adds a per-container/bulk items view for a booking with derived lifecycle
stage (PENDING -> RECEIVED -> GRN -> LOADED -> LEFT -> DELIVERED) and reference
badges (booking, contract, last-mile). Backend containerItems() aggregates
booking_container_units + customer_truck_containers + inventory; exposed at
GET warehouse-inventory/bookings/:id/container-items.

Frontend ContainerItemsModal (opened from the View Details eye): stage tabs
with counts, ref columns, checkbox multiselect of loadable items -> pick truck
-> load (Truck_dispatch), and per-row per-truck Exit Paper.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-06 13:46:16 +00:00
marshal
1531c16d1a Merge pull request #491 from Tria-plc/freight_feature/usermanagement
implement intercity booking management and booking window websocket i…
2026-07-06 16:44:56 +03:00
Marshal
fed5f2f43f implement intercity booking management and booking window websocket integration 2026-07-06 13:28:21 +00:00
Hagernesh Tadesse
f4ed9db8e4 Merge pull request #490 from Tria-plc/PertruckExit
Pertruck exit

Per-truck Exit Paper button in the TruckDispatchModal → downloads that truck's PDF.
Rule applied

Single truck / whole booking → the existing per-booking release doc.
Multiple trucks → one exit paper per truck (its containers).
2026-07-06 16:22:38 +03:00
Hagernesh
756ad73e9c pERTRUCK EXIT 2026-07-06 13:16:34 +00:00
Hagernesh
551a5fdeed list trucks + loadable containers → load) 2026-07-06 12:40:34 +00:00
Hagernesh Tadesse
065dfa7b5e Merge pull request #485 from Tria-plc/CutomerTruckAssign
separte handover edr lastmile and customer last mile flow

Self-haul: handover auto-generated on first truck arrival.
Signed when customer approves delivery 

Fixes
Import train dispatch no longer blocked by loading confirmation (committed 0a170182).
Marshalling / handover / GRN docs no longer masquerade as "Release Order" (decoupled from the release fallback).
Weighing modal now fetches trucks from both last-mile + customer portal, shows "Truck is not assigned yet".
Name fields (warehouse/fee/allocation) → letters-only.
11 build errors = stale package dist → rebuilt @edr/types + @edr/api-common.
jose missing dep → installed.

Features built
Multi-truck self-haul assignment — 1–2 containers/truck, per-truck arrival; entities + migration + service + controller + portal card. Exit paper carries truck info; freight-order PDF lists every truck.
Import vs export split — import: no container pre-select, staff weigh + register load on leaving (departTruck, gross weight, gate-out, locks), exit paper per container; export: pre-selected containers, receive-only.
Per-container GRN + received_to_port — on booking_container_units; auto-marked on receive (export delivery), staff-confirmed GRN (per batch / per booking), staff-only.
Online demurrage/storage pay in customer portal — Telebirr/Waafi pay button on warehouse invoices.
Container-number picker on truck assignment (surfaced booking container numbers).
2026-07-06 15:31:25 +03:00
Hagernesh
fe9503638b separte handover edr lastmile and customer last mile flow 2026-07-06 12:27:58 +00:00
Nathnael
4800d1db35 Merge branch 'dev' into freight/feat/fixes-v1 2026-07-06 10:58:57 +00:00
Nathnael
298ad6227b style: ui improvement to the notification cards. 2026-07-06 10:54:43 +00:00
Nathnael
68c60f9e61 feat: add destination to the notification 2026-07-06 09:02:18 +00:00
Marshal
8336a5aff8 refactor contract handling to support single route per contract and improve reference generation logic 2026-07-06 08:42:44 +00:00
Marshal
1b92c57e23 refactor contract handling to support single route per contract and improve reference generation logic 2026-07-06 08:36:11 +00:00
Nathnael
5a10c14ceb feat: setup the notification module to the api 2026-07-06 06:51:38 +00:00
Marshal
44fbb481b1 refactor T1 document handling and update related logic for import/export processes 2026-07-05 22:58:02 +00:00
Marshal
58fa0d9184 improve error handling and query structure in runWarehouseArrivalAutomation 2026-07-05 22:41:39 +00:00
Marshal
5192c6b949 Merge branch 'dev' of github.com:Tria-plc/edr-platform into freight_feature/usermanagement 2026-07-05 22:22:34 +00:00
Marshal
ac7bff8cc8 add overnight desk handling and effective window configuration for train schedules 2026-07-05 22:22:04 +00:00
Marshal
caa8397563 enhance booking window logic to support overnight desk configurations and update related UI components 2026-07-05 21:29:09 +00:00
Marshal
3485a7d63d add loading confirmation for import-Djibouti trains before dispatch 2026-07-05 21:07:03 +00:00
Marshal
1433796db0 add loading status management for bookings 2026-07-05 19:56:21 +00:00
Marshal
3e2299960a add script to seed freight contracts across flow variants 2026-07-05 18:06:24 +00:00
Marshal
3447394e32 add bookings management and settings 2026-07-05 10:22:58 +00:00
Marshal
dfdf7a025d fix(freight): guard booking-desk hours against overnight ranges
Review follow-ups on the window-close-hour feature:

- Reject windowCloseHour < windowOpenHour when saving global rules. The
  reopen engine (nextCycleOpensAt) assumes the daily desk runs within one
  EAT day; an overnight range would misroute a ready-time inside the span
  to the next morning. openHour === closeHour stays valid (24-hour desk).
- Derive the board projection's runaway cap from the real first-open →
  departure span over the minimum per-cycle advance, so a legitimate
  long-lead config is never silently truncated (was a flat 200).
- Document the open <= close precondition on nextCycleOpensAt and clarify
  the ready-before-open comment.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 09:07:21 +00:00
Marshal
93b8b69464 Add window close hour to booking desk configuration 2026-07-05 08:53:27 +00:00
Hagernesh
5954f9a349 Merge remote-tracking branch 'origin/dev' into CutomerTruckAssign
:qa!
2026-07-04 09:53:28 +00:00
Hagernesh
0a17018215 fix: don't block import train dispatch on loading confirmation
Loading (loaded-on-train step + per-booking loading status) no longer gates
dispatch/departure of a Djibouti import train. Per-booking loading status stays
tracking-only; a scheduled train dispatches once gatepass is granted, without
waiting on loading confirmation.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-04 09:50:25 +00:00
Hagernesh
d8da2e49cb fix 2026-07-04 09:42:09 +00:00
Hagernesh
00cd1fccf6 train loading for import 2026-07-04 09:33:07 +00:00
Nathnael
1d8fcaa4f1 Merge branch 'dev' into freight/feat/fixes-v1 2026-07-04 09:28:05 +00:00
marshal
ef2e8b6461 Merge pull request #460 from Tria-plc/freight_feature/usermanagement
Freight feature/usermanagement
2026-07-04 12:04:03 +03:00
Marshal
e6328fc897 changes 2026-07-04 09:03:24 +00:00
Nathnael
b866b59478 feat: add etrade precheck 2026-07-04 09:02:49 +00:00
Hagernesh
5b4f624188 Per truck exit and per truck grn 2026-07-04 08:42:57 +00:00
Marshal
c4a92c6482 changes 2026-07-04 08:23:08 +00:00
Hagernesh Tadesse
d6e4aa188f Merge pull request #459 from Tria-plc/CutomerTruckAssign
Cutomer truck assign

Fields: Truck Plate Number, Driver Name, Truck Type, Container Number to Load (now the Select I just wired) → Verify & Submit Assignment.
2026-07-04 10:59:48 +03:00
Hagernesh
8916182a62 Truck assign containers 2026-07-04 07:56:23 +00:00
marshal
4f31794abd Merge pull request #458 from Tria-plc/freight_feature/usermanagement
refactor: remove gate pass granting logic from clearance services and UI
2026-07-04 10:45:22 +03:00
Marshal
145240d3bd refactor: remove gate pass granting logic from clearance services and UI
- Removed the gate pass granting functionality from the BookingClearanceService and ContractClearanceService, replacing it with a new method to retrieve gate pass status from train schedules.
- Updated the ContractsController to eliminate endpoints related to gate pass granting.
- Refactored the UI components (ExportClearanceStepper and PhasedClearanceActionPanel) to reflect the new gate pass securing process, linking to the train scheduling interface instead.
- Cleaned up related constants and query hooks, removing unused code and references to the gate pass functionality.
- Adjusted types in the contracts to accommodate changes in the gate pass handling logic.
2026-07-04 07:43:03 +00:00
Hagernesh
e8e3e01f31 release order document fix 2026-07-04 07:36:53 +00:00