Commit Graph

22 Commits

Author SHA1 Message Date
Marshal
88b995d3d7 fix issue 2026-08-08 14:22:38 +00:00
Marshal
a42d32c27c feat(billing): USD offline bank-transfer payments 2026-08-08 13:37:05 +00:00
Marshal
f4fd469643 per-user trade-direction access scope 2026-08-02 22:29:58 +00:00
marshal
bc6999cd10 Merge pull request #786 from Tria-plc/freight_feature/usermanagement
split export
2026-07-18 12:20:48 +03:00
Marshal
406fbf6c45 split export 2026-07-18 09:12:52 +00:00
Hagernesh
a73faecbe3 feat(intercity): raise a GRN when a facility loads or unloads cargo
Every facility raises a GRN — the goods changed hands, whether or not anyone
stores them. What differs is what happens next: Indode has a warehouse, so cargo
left there goes through the existing warehouse flow and accrues storage and
demurrage; Sebeta, Modjo, Adama and Dire Dawa only move cargo between train and
truck, so the handling event and its GRN are the whole record.

facility_handling_events carries that record because warehouse_inventory cannot:
its warehouse/yard/zone are NOT NULL, so a facility with equipment but no
warehouse could never have a row there. inventory_id links the storage record
when the facility does keep the cargo, which is what ties an Indode handover to
its demurrage.

generateGrnNumber moves to common/grn.util.ts so a GRN raised at a facility is
indistinguishable from one raised in a warehouse — the two live in different
tables, and a second generator would let the formats drift.

Recording is best-effort: the cargo moved regardless, so paperwork must never
fail the journey.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 10:40:16 +00:00
Marshal
f300600bfa changes 2026-07-07 12:28:47 +00: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
Marshal
fed5f2f43f implement intercity booking management and booking window websocket integration 2026-07-06 13:28:21 +00:00
Marshal
56de90892d Add booking window management and locomotive scheduling features
- Implemented migration to release stuck assigned locomotives.
- Added schedule window phases to train schedules.
- Created booking batch offers table for partial capacity bookings.
- Developed BookingSplitService to handle partial booking offers and splits.
- Introduced BookingWindowService to manage booking window lifecycle and transitions.
- Added BookingBatchOffer entity to represent offers made during booking splits.
- Enhanced locomotive options with warnings for scheduling.
- Created UpcomingWindowsSection component to display upcoming booking windows.
2026-07-03 03:36:06 +00:00
marshal
7b3f9094ed changes 2026-07-02 13:02:33 +03:00
marshal
612df8daff Enhance clearance milestone management and introduce new contract actions
- Added new milestones for 'Transit Permit Uploaded' and 'Export Transport Document Issued' in the clearance milestone catalog.
- Implemented methods in ClearanceMilestoneService to skip milestones and complete them with metadata.
- Updated ContractBookingService to check boundary conditions before booking creation.
- Introduced new endpoints in ContractsController for uploading customs declarations, advising duty, and handling various document uploads.
- Enhanced the UI to support new clearance actions and display relevant components based on milestone statuses.
2026-07-01 10:20:16 +03:00
Nathnael
8ab27a6721 feat: add expiration to invoice 2026-07-01 06:19:07 +00:00
hagiye
fee4365b70 Import operation gate pass 2026-06-27 21:04:27 +03:00
hagiye
fa4a4e2397 Autounload on train arrival and inspection status column fix 2026-06-26 12:19:38 +03:00
hagiye
75d4c9b7c1 Autounload on train arrival 2026-06-26 12:17:31 +03:00
Marshal
e0c3044933 feat(train-sets): implement multi-locomotive support for train sets
- Added TrainSetLocomotive entity to link multiple locomotives to a train set.
- Updated TrainSet entity to include a OneToMany relationship with TrainSetLocomotive.
- Modified the train scheduling logic to require at least two locomotives for a train set.
- Enhanced the UI components to support selecting multiple locomotives.
- Introduced new permissions for viewing customs clearance.
- Updated migrations to create the train_set_locomotives table and backfill existing data.
- Implemented utility functions for managing train numbers based on cargo type and direction.
- Added tests for train number utilities to ensure correct functionality.
2026-06-24 23:54:45 +00:00
marshal
ef0abf1c41 auto allocation and batch managemnt, tracking the train 2026-06-12 11:42:46 +03:00
Marshal
cde3e462ba automate the schedule 2026-06-11 19:42:23 +00:00
Marshal
088295d81f schedule logic 2026-06-10 09:22:57 +00:00
marshal
5774d7db9d booking operations and trains scheduling also allocations 2026-06-10 00:48:32 +03:00
Michael Abebe
8b3aaad5fd feat(freight): basics of train scheduling 2026-06-04 16:50:38 +03:00