Task #19315
openTask #19374: Sprint Planning for 02/02/2026 - 16/02/2026
Segregation of User Access on MAWB - Screen
64%
Description
📌 Objective
Implement user-level access control on the MAWB → House (HAWB) screen to restrict visibility and interaction based on ownership and defined permissions.
🔹 Functional Requirements
1️⃣ Basic User Access Rule
A basic user should:
Be able to click and fully view only the Houses (HAWB) created by him/her.
See all HAWB records listed on the screen(Tree View List).
If attempting to open a restricted HAWB, a popup alert message should be displayed:
“Access Restricted – You are not authorized to view this House.”
2️⃣ Introduce New Field: Access Type
Add a new field on House (HAWB):
Field Name Type Description
Access Type Boolean (Public / Private) Determines if the House is accessible to all users or restricted
Public (False) → Accessible to all users within the tenant.
Private (True) → Access restricted based on defined Access List.
3️⃣ Private Access Logic
If Access Type = Private:
Enable a new field: Access List
This field:
Should be a multi-select dropdown
Displays list of users within the same tenant
Allows selecting specific users who are authorized to access the House
Should only be editable when Access Type = Private
Should be mandatory when Private is selected
Access Validation Rule:
When a user attempts to open a Private HAWB:
System checks:
If user is the creator → Allow
If user exists in Access List → Allow
Otherwise → Deny access with popup message
4️⃣ New Authority: “Admin View All”
Introduce a new user authority/role:
Authority Name Description
Admin View All User can view and access all Houses regardless of Access Type
If a logged-in user has this authority:
Bypass all access restrictions
Can view and open all HAWB records
No popup restriction applies
🔹 UI Behavior Summary
Scenario Expected Result
Public House Accessible to all users
Private House – Creator Accessible
Private House – User in Access List Accessible
Private House – User not in Access List Show popup – Access Restricted
User with “Admin View All” authority Full access to all records
🔹 Technical Considerations
Add new column to HAWB table: ACCESS_TYPE
Add relation table: HAWB_ACCESS_USERS
Authority to be defined in user role/permission configuration
Backend validation mandatory (not only UI restriction)
Ensure filtering does not impact existing reporting or API endpoints
GitLab Sync Log
[{"id": "37369", "author": "Al-Shad Isaac", "hours": 2.0, "created": "2026-01-20T05:12:29.168Z", "log_date": "2026-01-20", "comment": "Imported from GitLab by @Al-Shad Isaac on 2026-01-20T05:12:29.168Z: 2h-(2.0)h spend at: 2026-01-20", "status": "active", "deleted_by": "", "redmine_entry_id": 11994}, {"id": "37431", "author": "Al-Shad Isaac", "hours": 1.0, "created": "2026-01-20T11:35:26.219Z", "log_date": "2026-01-20", "comment": "Imported from GitLab by @Al-Shad Isaac on 2026-01-20T11:35:26.219Z: 1h-(1.0)h spend at: 2026-01-20", "status": "active", "deleted_by": "", "redmine_entry_id": 11999}, {"id": "38454", "author": "Al-Shad Isaac", "hours": 0.5, "created": "2026-02-09T12:03:29.644Z", "log_date": "2026-02-09", "comment": "Imported from GitLab by @Al-Shad Isaac on 2026-02-09T12:03:29.644Z: 30m-(0.5)h spend at: 2026-02-09", "status": "active", "deleted_by": "", "redmine_entry_id": 12218}, {"id": "38720", "author": "Al-Shad Isaac", "hours": 0.5, "created": "2026-02-12T12:04:22.873Z", "log_date": "2026-02-12", "comment": "Imported from GitLab by @Al-Shad Isaac on 2026-02-12T12:04:22.873Z: 30m-(0.5)h spend at: 2026-02-12", "status": "active", "deleted_by": "", "redmine_entry_id": 12270}, {"id": "38734", "author": "Ra-ees Peeroo", "hours": 2.0, "created": "2026-02-13T07:02:41.491Z", "log_date": "2026-02-12", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-13T07:02:41.491Z: 2h-(2.0)h spend at: 2026-02-12", "status": "active", "deleted_by": "", "redmine_entry_id": 12290}, {"id": "38764", "author": "Ra-ees Peeroo", "hours": 2.0, "created": "2026-02-13T11:34:52.801Z", "log_date": "2026-02-13", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-13T11:34:52.801Z: 2h-(2.0)h spend at: 2026-02-13", "status": "active", "deleted_by": "", "redmine_entry_id": 12293}, {"id": "38799", "author": "Ra-ees Peeroo", "hours": 3.75, "created": "2026-02-16T10:28:07.795Z", "log_date": "2026-02-16", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-16T10:28:07.795Z: 3h 45m-(3.75)h spend at: 2026-02-16", "status": "active", "deleted_by": "", "redmine_entry_id": 12306}, {"id": "38897", "author": "Ra-ees Peeroo", "hours": 3.5, "created": "2026-02-18T10:31:04.253Z", "log_date": "2026-02-18", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-18T10:31:04.253Z: 3h 30m-(3.5)h spend at: 2026-02-18", "status": "active", "deleted_by": "", "redmine_entry_id": 12322}, {"id": "38884", "author": "Ra-ees Peeroo", "hours": 3.0, "created": "2026-02-18T10:28:45.685Z", "log_date": "2026-02-15", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-18T10:28:45.685Z: 3h-(3.0)h spend at: 2026-02-15", "status": "active", "deleted_by": "", "redmine_entry_id": 12323}, {"id": "38971", "author": "Ra-ees Peeroo", "hours": 7.0, "created": "2026-02-19T11:39:27.096Z", "log_date": "2026-02-19", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-19T11:39:27.096Z: 7h-(7.0)h spend at: 2026-02-19", "status": "active", "deleted_by": "", "redmine_entry_id": 12346}, {"id": "38970", "author": "Ra-ees Peeroo", "hours": 3.0, "created": "2026-02-19T11:39:18.747Z", "log_date": "2026-02-17", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-19T11:39:18.747Z: 3h-(3.0)h spend at: 2026-02-17", "status": "active", "deleted_by": "", "redmine_entry_id": 12347}, {"id": "39075", "author": "Ra-ees Peeroo", "hours": 6.0, "created": "2026-02-23T05:16:13.530Z", "log_date": "2026-02-19", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-23T05:16:13.530Z: 6h-(6.0)h spend at: 2026-02-19", "status": "active", "deleted_by": "", "redmine_entry_id": 12371}, {"id": "39284", "author": "Ra-ees Peeroo", "hours": 6.0, "created": "2026-02-25T09:29:03.815Z", "log_date": "2026-02-23", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-25T09:29:03.815Z: 6h-(6.0)h spend at: 2026-02-23", "status": "active", "deleted_by": "", "redmine_entry_id": 12413}, {"id": "39417", "author": "Ra-ees Peeroo", "hours": 7.0, "created": "2026-02-27T06:44:06.979Z", "log_date": "2026-02-24", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-02-27T06:44:06.979Z: 7h-(7.0)h spend at: 2026-02-24", "status": "active", "deleted_by": "", "redmine_entry_id": 12437}, {"id": "39555", "author": "Ra-ees Peeroo", "hours": 4.0, "created": "2026-03-02T10:58:57.951Z", "log_date": "2026-03-01", "comment": "Imported from GitLab by @Ra-ees Peeroo on 2026-03-02T10:58:57.951Z: 4h-(4.0)h spend at: 2026-03-01", "status": "active", "deleted_by": "", "redmine_entry_id": 12455}]