Commit Graph

47 Commits

Author SHA1 Message Date
Nathnael
d337fa0d85 fix(freight:backoffice): remove coarse fleet.view/fleet.manage/admin fallbacks
Now that every fleet-resource page and settings page has its own
dedicated permission key (previous commit), the broad fallbacks are
redundant and over-grant: anyone holding only fleet:view/fleet:manage
or admin could reach every page in that whole section, not just one.

Removed fleet.view fallback from: Routes, Locomotives, Train Builder,
Wagons, Containers, Cargoes, Compliance & Alerts, Procurement, and the
Overview dashboard's Fleet KPI tab.

Removed fleet.manage fallback from: canFleetAction() (per-resource
fleet CRUD, lib/permissions.ts) and TrainBuilderDetailPage's wagon-
assignment check. Hard-delete already had no such fallback.

Removed admin fallback from: File settings, Dropdown settings,
Contract templates, Portal content, Trade access, Exchange rate.

Left untouched: Incidents (sole gate is fleet.view — no dedicated
edr_freight_app:incidents:* key exists on the backend yet, so there's
nothing to fall back FROM; removing it would make the page
super-admin-only).

Access-narrowing change: anyone currently relying on the coarse grant
without also holding the specific resource/settings key will lose
access to these pages until roles are updated to grant the specific
keys directly. Audit role assignments before this deploys.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-08 13:59:06 +00:00
Nathnael
41e8c08ba3 feat: WIP Contnet managemtn 2026-08-08 09:37:28 +00:00
Nathnael
ee25de8817 fix(freight:backoffice): wire dedicated permission keys instead of broad fallbacks
Compliance & Alerts, Procurement, File settings, Dropdown settings,
Trade access, and Exchange rate all fell back to a broad permission
(fleet:view or admin) even though a dedicated key already existed in
FREIGHT_PERMS — meaning granting one of these pages meant granting
several unrelated ones too. Each now checks its own key first, with
the broad permission kept as a fallback for existing role grants.

Incidents left as-is: no dedicated edr_freight_app:incidents:* key
exists yet on the backend.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-08 09:36:51 +00:00
Marshal
a05753f4a6 Merge branch 'dev' of github.com:Tria-plc/edr-platform into freight_feature/usermanagement
# Conflicts:
#	apps/edr-freight-web/backoffice/src/App.tsx
2026-08-07 23:55:30 +00:00
Nathnael
1e9149ce00 feat: better navigation in backoffice 2026-08-07 12:24:30 +00:00
Nathnael
595c165820 feat: implement audit logs 2026-08-05 14:17:00 +00:00
Marshal
ea9df9abbe Add a minimal payment mock server for end-to-end testing 2026-08-01 19:58:17 +00:00
Marshal
773456c256 refactor DocReviewAlertButton and FreightDashboardHeader comments for clarity and accuracy 2026-07-27 05:07:09 +00:00
Marshal
fde5e6de4b add company stamp upload functionality for contract signing
- Introduced StampUpload component for uploading company stamp images.
- Integrated stamp upload in contract signing modal, supporting PNG and JPG formats.
- Implemented validation for file type and size (max 5 MB).
- Added visual feedback for drag-and-drop functionality.
- Updated contract-related pages to handle duplicate contract alerts and pricing notices.
- Enhanced contract expiry management with a nightly sweep service.
- Added unit tests for new features and updated existing tests for contract handling.
2026-07-25 17:14:58 +00:00
ghost2023
bd81bbfc2c style: sidebar improvmetn 2026-07-17 11:15:58 +03:00
Nathnael
d1652c1b96 fix: sidebar scrollbar 2026-07-09 07:04:31 +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
439e1ec29e feat: setup notification to the backoffice 2026-07-06 06:52:09 +00:00
Nathnael
ee335e63ba style: sidebar ui 2026-07-04 08:39:16 +00:00
marshal
ccd5d6de31 Implement contract document download functionality and enhance clearance review status checks
- Added methods to assert clearance reviewable, finalizable, and uploadable statuses in the ContractClearanceService.
- Introduced a new endpoint in ContractsController for downloading contract PDFs.
- Implemented download functionality in the contracts service for both backoffice and portal applications.
- Updated UI components to include download buttons for contract PDFs in relevant pages.
- Enhanced contract request and view pages to support contract document downloads.
2026-07-01 07:27:53 +03:00
hagiye
9719bd02d7 Release Order plus Storage Allocation Rule and fee 2026-06-24 15:27:38 +03:00
hagiye
8ee31789c6 merge conflict fix 2026-06-24 12:31:59 +03:00
hagiye
0255adffe6 changes 2026-06-24 09:56:12 +03:00
Marshal
9d81a2e1ee integrate global logistics staff user into seeder
refactor pricing data seeder to fold surcharge types into rates
update route meta subtitle to remove surcharge types
enhance RuleEngineFormDialog to support conditional field visibility
 remove surcharge types from URL constants and related services
add cargo leaf options query for bulk cargo type selection
update RuleEngineResourcePage to utilize cargo leaf options
modify resources configuration to remove surcharge types
implement migration to fold surcharge types into rates
create utility to derive legacy rate types from new rate structure
2026-06-23 23:15:32 +00:00
yaschalew
7f51f24a77 fix conflict 2026-06-22 14:23:43 +03:00
natib21
b28cf6ae91 fix slip 2026-06-20 14:00:34 +00:00
natib21
28dd7f9c72 last mile 2026-06-20 12:36:13 +00:00
Nathnael
138ac5b47d style:wip dashboard ui revamp 2026-06-20 10:20:38 +00:00
Nathnael
e4955c75de style: revamp the backaoffice shell 2026-06-20 09:25:23 +00:00
hagiye
a8cdbdf386 Warehouse Enhancemendt 2026-06-20 11:49:22 +03:00
hagiye
484ac187a9 warehouse 2026-06-19 17:13:17 +03:00
ghost2023
9caf9bbd59 style: some clean up 2026-06-19 16:24:20 +03:00
marshal
f1dfbbcc3f Replace EDR logo image with Train icon in FreightSidebar 2026-06-19 01:13:52 +03:00
marshal
72b63c319e - Fix shipping line mapping to use ID instead of name in EditBookingPage and NewBookingPage 2026-06-19 01:07:05 +03:00
Marshal
2de3f78fb0 Add payments management features including summary and listing, and integrate with the dashboard 2026-06-17 04:35:43 +00:00
Marshal
052829c7e6 Add freight demo data seeder and permissions management
- Introduced `DemoFreightDataSeeder` to seed demo freight data including wagons, approval rules, and staff users.
- Added `seed:freight-demo` script to `package.json` for easy execution.
- Updated permissions for operations officer and added permission checks in various components.
- Enhanced sidebar and booking actions to respect user permissions.
2026-06-16 15:28:10 +00:00
Marshal
f6c28635bc add 'My signature' menu item to user menu 2026-06-16 14:26:17 +00:00
Marshal
366a335f85 add reusable per-user contract signatures with profile prefill and approval 2026-06-16 13:26:45 +00:00
marshal
a0dbb4ca6f backoffice cleen up 2026-06-16 11:04:36 +03:00
Marshal
d3a479c142 ui fix 2026-06-12 14:21:07 +00:00
marshal
10b011de8f merge conflict 2026-06-10 16:45:45 +03:00
Marshal
0335555892 overview, booking and train scheduling ui 2026-06-10 07:53:15 +00:00
Marshal
2b5a0f4e96 ui design for schedule 2026-06-10 00:12:52 +00:00
marshal
5774d7db9d booking operations and trains scheduling also allocations 2026-06-10 00:48:32 +03:00
hagiye
eda21e22d8 Resolve merge conflicts from Train-Scheduling 2026-06-08 16:51:29 +03:00
hagiye
bffa5020ac wagon types added UI with API integrations 2026-06-07 21:56:33 +03:00
marshal
4993453993 generate contract by the system, add waggon type,fix ui 2026-06-07 01:20:52 +03:00
Marshal
08b46c306f ui improvemnt 2026-06-06 21:17:20 +00:00
Michael Abebe
a9c2f2eb97 feat(freight): added routes and locomotives 2026-06-06 16:23:48 +03:00
ghost2023
da0f1e4cc9 feat(bookings): enhance contract viewer and backoffice UI consistency 2026-06-06 09:11:30 +03:00
marshal
e4859b3eeb solf merge conflict 2026-06-01 23:50:49 +03:00
marshal
452ebdbc0a rule engine and configration and fix booking for custoemr 2026-06-01 23:15:11 +03:00