User Story #682
openEPIC #670: Package Catalogue Management - 2 days front end and 2 days backend
Feature #680: View Package Details
Backend – View Package Details
0%
Description
As a Super Admin, I want the system to retrieve the complete details of a travel package so that I can review its information before editing, publishing, or performing other administrative actions.
Business Background¶
The Package Details service acts as the central source of package information within the administration portal. It aggregates the package master record and related information, enabling administrators to review the package as a whole and identify incomplete sections before publication.
Objective¶
The backend shall:
- Retrieve complete package details.
- Validate access permissions.
- Aggregate related package information.
- Return completion status for each package module.
- Provide audit information.
Functional Behaviour¶
The system shall:
- Retrieve the package by its identifier.
- Validate user permissions.
- Retrieve associated Country and City details.
- Retrieve current package status.
- Retrieve audit information.
- Determine completion status of related modules (Itinerary, Inclusions, Halal Facilities, Package Groups, Images).
- Return all information required for the Package Details screen.
Business Logic¶
Package Retrieval¶
- Only authorised users may access package details.
- Deleted packages shall not be returned unless specifically permitted by business rules.
- Draft, Published, Archived, and Inactive packages may be viewed according to role permissions.
Completion Status¶
The system shall evaluate whether each module contains the required information and assign one of the following statuses:
- Not Started
- In Progress
- Complete
These statuses are calculated dynamically based on available data.
Audit Information¶
The system shall return:
- Created By
- Created Date
- Last Updated By
- Last Updated Date
- Current Package Status
Audit data is read-only.
Database Entity Changes¶
No new records are created or modified.
Entities referenced include:
- Package
- Country
- City
- Itinerary
- Inclusions
- Halal Facilities
- Package Groups
- Images
- User
Validation Rules¶
| Validation | Rule |
|---|---|
| Package ID | Must exist |
| User Permission | Required |
| Package Status | Must be valid |
| Related Data | Retrieved only if available |
Permission Rules¶
| Role | Permission |
|---|---|
| Super Admin | View Package Details |
| Admin (if configured) | Based on assigned permissions |
| Supplier | Not Allowed |
| Partner | Not Allowed |
| Customer | Not Allowed |
Audit Requirements¶
The system shall expose audit information without allowing any modifications.
No audit record is created for viewing the package unless platform-wide activity logging requires view events.
Acceptance Criteria¶
AC-1¶
Given a valid package exists
When the details request is processed
Then the complete package information shall be returned.
AC-2¶
Given the package contains related information
When the request is processed
Then all related module summaries shall be included.
AC-3¶
Given some package modules are incomplete
When completion is evaluated
Then the correct completion status shall be returned for each module.
AC-4¶
Given the requesting user lacks permission
When the request is processed
Then package information shall not be returned.
AC-5¶
Given the package has audit history
When details are retrieved
Then audit information shall be included.
AC-6¶
Given the package does not exist
When retrieval is attempted
Then no package information shall be returned.
In Scope¶
- Package retrieval
- Related data aggregation
- Completion status calculation
- Permission validation
- Audit information retrieval
Out of Scope¶
- Package updates
- Package publishing
- Package deletion
- Image uploads
- Itinerary management
- Pricing calculations
Dependencies¶
- Authentication
- Authorization
- Package Master
- Country Master
- City Master
- Itinerary Management
- Inclusions Management
- Halal Facilities Management
- Package Group Management
- Image Management
Edge Cases¶
- Package exists but has no related data.
- Package references inactive master data.
- Large package descriptions.
- Simultaneous updates while viewing.
- Archived package access based on permissions.
Definition of Done¶
- Package details retrieved successfully.
- Related information aggregated correctly.
- Completion status calculated accurately.
- Audit information included.
- Permission rules enforced.
- Acceptance criteria verified.
- QA completed.
- Product Owner approval obtained.
No data to display