Task #19768
openUser Story : EDL/WSC - Landing/Shipping report
59%
Description
As an operations/logistics user
I want to generate a PDF document that displays both Import and Export details for HBLs
So that I can clearly track HBL movements across import and export files in a single, standardized report.
Description¶
The system shall generate a PDF report listing HBL-related shipment records with both Import and Export references where applicable.
The displayed data must dynamically adjust based on whether the HBL is associated with Import, Export, or both, and whether the HBL has been marked as Landing or Shipping in Import.
PDF Columns / Data Fields¶
The PDF report shall display the following columns:
- Import File Reference
- Import Sub File Reference
- Export File Reference
- Export Sub File Reference
- HBL Reference
- Weight
- Volume
-
Shipper / Consignee
- Shipper → when data relates to Import
- Consignee → when data relates to Export
-
Port of Loading / Port of Destination
- Port of Loading → Export
- Port of Destination → Import
-
Vessel Departure / Arrival
- Vessel Departure → Export
- Vessel Arrival → Import
-
Date of Departure / Arrival
- Date of Departure → Export
- Date of Arrival → Import
Business Rules¶
-
HBL Eligibility
- Only HBLs that are marked as Landing or Shipping in an Import file shall be included in the report.
-
Import & Export Reference Mapping
- If the HBL exists in an Import file, populate:
- Import File Reference
- Import Sub File Reference
- If the same HBL is also used in an Export file, populate:
- Export File Reference
- Export Sub File Reference
- If the HBL is not linked to Export, Export-related columns must remain blank.
- If the HBL exists in an Import file, populate:
-
Conditional Party Display
- Display Consignee when showing Import-related data.
- Display Shipper when showing Export-related data.
-
Conditional Port & Vessel Details
- Import:
- Port of Destination
- Vessel Arrival
- Date of Arrival
- Export:
- Port of Loading
- Vessel Departure
- Date of Departure
- Import:
-
Data Source Rules
- Weight and Volume must be retrieved from the HBL master record.
- File References and Sub File References must reflect the files where the HBL is linked.
-
Single Line per HBL
- Each HBL must appear as a single row in the PDF, showing both Import and Export references side by side when applicable.
Acceptance Criteria¶
✅ Scenario 1: PDF Generation¶
- Given valid HBL records exist
- When the user generates the PDF
- Then a downloadable PDF is created with all defined columns.
✅ Scenario 2: Import-only HBL¶
- Given an HBL exists in Import but not in Export
- Then Import File and Sub File References are populated
- And Export File and Sub File References remain empty.
✅ Scenario 3: Import + Export HBL¶
- Given an HBL marked as Landing or Shipping in Import and also linked to an Export file
- Then both Import and Export File & Sub File References are shown in the PDF.
✅ Scenario 4: Conditional Data Display¶
- Import fields display Consignee, Port of Destination, Vessel Arrival, and Date of Arrival.
- Export fields display Shipper, Port of Loading, Vessel Departure, and Date of Departure.
✅ Scenario 5: PDF Format & Usability¶
- The PDF must be properly formatted, readable, print-friendly, and suitable for audit and sharing purposes.
GitLab Sync Log
[{"id": "43166", "author": "Ra-ees Peeroo", "hours": 5.0, "created": "2026-04-27T09:35:46.489Z", "log_date": "2026-04-26", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-04-27T09:35:46.489Z: 5h-(5.0)h spend at: 2026-04-26", "status": "active", "deleted_by": "", "redmine_entry_id": 13330}, {"id": "43164", "author": "Ra-ees Peeroo", "hours": 1.5, "created": "2026-04-27T09:34:14.953Z", "log_date": "2026-04-21", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-04-27T09:34:14.953Z: 1h 30m-(1.5)h spend at: 2026-04-21", "status": "active", "deleted_by": "", "redmine_entry_id": 13331}, {"id": "43163", "author": "Ra-ees Peeroo", "hours": 2.0, "created": "2026-04-27T09:33:25.502Z", "log_date": "2026-04-22", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-04-27T09:33:25.502Z: 2h-(2.0)h spend at: 2026-04-22", "status": "active", "deleted_by": "", "redmine_entry_id": 13332}, {"id": "43162", "author": "Ra-ees Peeroo", "hours": 3.0, "created": "2026-04-27T09:32:57.362Z", "log_date": "2026-04-23", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-04-27T09:32:57.362Z: 3h-(3.0)h spend at: 2026-04-23", "status": "active", "deleted_by": "", "redmine_entry_id": 13333}, {"id": "43245", "author": "Ra-ees Peeroo", "hours": 1.0, "created": "2026-04-28T05:08:03.399Z", "log_date": "2026-04-26", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-04-28T05:08:03.399Z: 1h-(1.0)h spend at: 2026-04-26", "status": "active", "deleted_by": "", "redmine_entry_id": 13342}]
Updated by Redmine Admin 4 months ago
- Status changed from New to QA
- % Done changed from 0 to 54
- GitLab Time Logged changed from 0 to 41400
Updated by Redmine Admin 4 months ago
- % Done changed from 54 to 59
- GitLab Time Logged changed from 41400 to 45000