User Story #693
openEPIC #670: Package Catalogue Management - 2 days front end and 2 days backend
Feature #691: Country & City Management
backend - manage countries and cities
0%
Description
As a Super Admin,
I want to manage Countries and Cities,
So that only valid destinations are available while creating travel packages and searching destinations.
Business Background¶
Countries and Cities act as master data across the platform.
Every travel package must belong to an active Country and an active City.
Inactive Countries or Cities shall no longer be available for new package creation but must remain visible for historical records.
Functional Requirements¶
1. Country Listing¶
The system shall display a list of all Countries.
Each Country shall display:
- Country Name
- Country Flag (Optional)
- Number of Cities
- Number of Packages
- Status
- Last Updated Date
2. City Listing¶
When a Country is selected,
The system shall display all Cities belonging to that Country.
Each City shall display:
- City Name
- Country Name
- Number of Packages
- Status
- Last Updated Date
3. Search Countries¶
The Super Admin shall be able to search Countries by:
- Country Name
If no Country is found,
Display
No countries found matching your search.
4. Search Cities¶
The Super Admin shall be able to search Cities by:
- City Name
- Country Name
If no City is found,
Display
No cities found matching your search.
5. Filter Countries¶
The Super Admin shall be able to filter Countries by:
- Active
- Inactive
6. Filter Cities¶
The Super Admin shall be able to filter Cities by:
- Active
- Inactive
7. Activate Country¶
The Super Admin shall be able to activate an inactive Country.
Display
Country activated successfully.
8. Deactivate Country¶
Before deactivating,
Display confirmation.
Are you sure you want to deactivate this country?
Additional Information
Packages already created for this country will remain available, but this country cannot be selected while creating new packages.
Buttons
- Cancel
- Deactivate Country
After successful completion,
Display
Country deactivated successfully.
9. Activate City¶
The Super Admin shall be able to activate an inactive City.
Display
City activated successfully.
10. Deactivate City¶
Before deactivating,
Display
Are you sure you want to deactivate this city?
Additional Information
Existing packages will remain available. This city cannot be selected for new packages.
Buttons
- Cancel
- Deactivate City
After completion,
Display
City deactivated successfully.
11. Empty State¶
If no Countries exist,
Display
No countries have been added yet.
If no Cities exist,
Display
No cities have been added yet.
12. Status Indicators¶
Each Country and City shall clearly display its status.
Possible values
- Active
- Inactive
Status shall be visible using color indicators.
Validation Messages¶
Country not found
No countries found matching your search.
City not found
No cities found matching your search.
Unable to update
We couldn't update the status. Please try again.
Acceptance Criteria¶
Scenario 1¶
Given Countries exist,
When Country Management opens,
Then all Countries shall be displayed.
Scenario 2¶
Given a Country is inactive,
When it is activated,
Then
Display
Country activated successfully.
Scenario 3¶
Given a City is active,
When it is deactivated,
Then
Display
City deactivated successfully.
Scenario 4¶
Given a search has no results,
When searching,
Then display the appropriate "No results found" message.
Scenario 5¶
Given no Countries exist,
When opening the page,
Then display
No countries have been added yet.
In Scope¶
- Country listing
- City listing
- Search Countries
- Search Cities
- Activate Country
- Deactivate Country
- Activate City
- Deactivate City
- Status display
Out of Scope¶
- Creating Countries
- Editing Countries
- Deleting Countries
- Creating Cities
- Editing Cities
- Deleting Cities
- Import/Export
Back-End User Story (BE)¶
Story Overview¶
Story ID: PKG-BE-CCM-001
Title: Country & City Master Management
Epic: Package Management
Sub Feature: Country & City Management
Objective¶
As the platform,
I need to maintain Country and City master records,
So that travel packages can only be associated with valid and active destinations.
Business Rules¶
Every City must belong to one Country.
A Country can contain multiple Cities.
Only Active Countries and Cities shall be available while creating or updating Packages.
Inactive Countries and Cities must continue to appear in historical data and existing packages.
Functional Requirements¶
1. Country Status¶
Each Country shall have one status.
Supported values
- Active
- Inactive
2. City Status¶
Each City shall have one status.
Supported values
- Active
- Inactive
3. Activate Country¶
When activated,
The Country becomes available for package creation.
Its Cities retain their individual status.
4. Deactivate Country¶
When a Country is deactivated,
It shall no longer be available while creating new Packages.
Existing Packages shall continue displaying the Country.
Cities belonging to the Country shall remain unchanged.
5. Activate City¶
When activated,
The City becomes available for Package creation.
6. Deactivate City¶
When deactivated,
The City shall not be selectable for new Packages.
Existing Packages shall continue displaying the City.
7. Country Search¶
The system shall support searching Countries by name.
8. City Search¶
The system shall support searching Cities by:
- City Name
- Country
9. Filters¶
The system shall support filtering by:
Countries
- Active
- Inactive
Cities
- Active
- Inactive
10. Existing Package Protection¶
If a Country or City is deactivated,
Previously created Packages shall continue functioning normally.
No historical booking or package information shall be modified.
Business Exceptions¶
Country not found
Country does not exist.
City not found
City does not exist.
Invalid status
Invalid status selected.
Inactive destination selected during Package creation
Please select an active Country and City.
Acceptance Criteria¶
Scenario 1¶
Given an Active Country,
When it is deactivated,
Then it shall no longer be available during Package creation.
Scenario 2¶
Given existing Packages belong to a deactivated Country,
When viewing those Packages,
Then the Country name shall still be displayed.
Scenario 3¶
Given an Active City,
When it is deactivated,
Then it cannot be selected for new Packages.
Scenario 4¶
Given a search request,
When matching records exist,
Then matching Countries or Cities shall be returned.
Scenario 5¶
Given no matching destination exists,
When searching,
Then an empty result shall be returned.
In Scope¶
- Country master management
- City master management
- Status management
- Search
- Filters
- Package dependency validation
Out of Scope¶
- Destination import
- Destination deletion
- Package Management
- Itinerary Management
- Airport Management
- Region Management
No data to display