From 8ce6f1c32f833c58275df73186b3c8e6efd97654 Mon Sep 17 00:00:00 2001 From: "ashutosh.nehete" Date: Wed, 12 Nov 2025 17:17:24 +0530 Subject: [PATCH] Added the mobile link parameter in side menu --- Marco.Pms.Model/AppMenu/MenuItem.cs | 3 ++- Marco.Pms.Model/AppMenu/SubMenuItem.cs | 1 + .../Dtos/AppMenu/CreateMenuItemDto.cs | 1 + .../Dtos/AppMenu/CreateSubMenuItemDto.cs | 2 +- .../Dtos/AppMenu/UpdateMenuItemDto.cs | 1 + .../Dtos/AppMenu/UpdateSubMenuItemDto.cs | 1 + .../MenuSectionApplicationVM.cs | 2 ++ .../Controllers/AppMenuController.cs | 20 +++++++++++++------ 8 files changed, 23 insertions(+), 8 deletions(-) diff --git a/Marco.Pms.Model/AppMenu/MenuItem.cs b/Marco.Pms.Model/AppMenu/MenuItem.cs index f70c73d..149f8a0 100644 --- a/Marco.Pms.Model/AppMenu/MenuItem.cs +++ b/Marco.Pms.Model/AppMenu/MenuItem.cs @@ -13,7 +13,8 @@ namespace Marco.Pms.Model.AppMenu public string? Icon { get; set; } public bool Available { get; set; } = true; - public string? Link { get; set; } + public string Link { get; set; } = string.Empty; + public string MobileLink { get; set; } = string.Empty; // Changed from string → List public List PermissionIds { get; set; } = new List(); diff --git a/Marco.Pms.Model/AppMenu/SubMenuItem.cs b/Marco.Pms.Model/AppMenu/SubMenuItem.cs index 26e4eca..e67a535 100644 --- a/Marco.Pms.Model/AppMenu/SubMenuItem.cs +++ b/Marco.Pms.Model/AppMenu/SubMenuItem.cs @@ -13,6 +13,7 @@ namespace Marco.Pms.Model.AppMenu public bool Available { get; set; } = true; public string Link { get; set; } = string.Empty; + public string MobileLink { get; set; } = string.Empty; // Changed from string → List public List PermissionIds { get; set; } = new List(); diff --git a/Marco.Pms.Model/Dtos/AppMenu/CreateMenuItemDto.cs b/Marco.Pms.Model/Dtos/AppMenu/CreateMenuItemDto.cs index 0e1ddd3..a932aa9 100644 --- a/Marco.Pms.Model/Dtos/AppMenu/CreateMenuItemDto.cs +++ b/Marco.Pms.Model/Dtos/AppMenu/CreateMenuItemDto.cs @@ -7,6 +7,7 @@ public bool Available { get; set; } = true; public required string Link { get; set; } + public string? MobileLink { get; set; } // Changed from string → List public List PermissionIds { get; set; } = new List(); diff --git a/Marco.Pms.Model/Dtos/AppMenu/CreateSubMenuItemDto.cs b/Marco.Pms.Model/Dtos/AppMenu/CreateSubMenuItemDto.cs index 1ebed17..60eb92c 100644 --- a/Marco.Pms.Model/Dtos/AppMenu/CreateSubMenuItemDto.cs +++ b/Marco.Pms.Model/Dtos/AppMenu/CreateSubMenuItemDto.cs @@ -6,7 +6,7 @@ public bool Available { get; set; } = true; public required string Link { get; set; } = string.Empty; - + public string? MobileLink { get; set; } // Changed from string → List public List PermissionIds { get; set; } = new List(); } diff --git a/Marco.Pms.Model/Dtos/AppMenu/UpdateMenuItemDto.cs b/Marco.Pms.Model/Dtos/AppMenu/UpdateMenuItemDto.cs index dd56d4d..b3433f7 100644 --- a/Marco.Pms.Model/Dtos/AppMenu/UpdateMenuItemDto.cs +++ b/Marco.Pms.Model/Dtos/AppMenu/UpdateMenuItemDto.cs @@ -9,6 +9,7 @@ public bool Available { get; set; } = true; public required string Link { get; set; } + public string? MobileLink { get; set; } // Changed from string → List public List PermissionIds { get; set; } = new List(); diff --git a/Marco.Pms.Model/Dtos/AppMenu/UpdateSubMenuItemDto.cs b/Marco.Pms.Model/Dtos/AppMenu/UpdateSubMenuItemDto.cs index 7aed3fb..746e1f4 100644 --- a/Marco.Pms.Model/Dtos/AppMenu/UpdateSubMenuItemDto.cs +++ b/Marco.Pms.Model/Dtos/AppMenu/UpdateSubMenuItemDto.cs @@ -8,6 +8,7 @@ public bool Available { get; set; } = true; public string Link { get; set; } = string.Empty; + public string? MobileLink { get; set; } // Changed from string → List public List PermissionIds { get; set; } = new List(); diff --git a/Marco.Pms.Model/ViewModels/DocumentManager/MenuSectionApplicationVM.cs b/Marco.Pms.Model/ViewModels/DocumentManager/MenuSectionApplicationVM.cs index 3132e19..6772bb6 100644 --- a/Marco.Pms.Model/ViewModels/DocumentManager/MenuSectionApplicationVM.cs +++ b/Marco.Pms.Model/ViewModels/DocumentManager/MenuSectionApplicationVM.cs @@ -5,5 +5,7 @@ public Guid Id { get; set; } public string? Name { get; set; } public bool Available { get; set; } + public string? MobileLink { get; set; } + } } diff --git a/Marco.Pms.Services/Controllers/AppMenuController.cs b/Marco.Pms.Services/Controllers/AppMenuController.cs index 8818f98..8aaf88b 100644 --- a/Marco.Pms.Services/Controllers/AppMenuController.cs +++ b/Marco.Pms.Services/Controllers/AppMenuController.cs @@ -662,7 +662,8 @@ namespace Marco.Pms.Services.Controllers { Id = item.Id, Name = item.Text, - Available = true + Available = true, + MobileLink = item.MobileLink, }; response.Add(menuVM); @@ -678,7 +679,8 @@ namespace Marco.Pms.Services.Controllers { Id = subItem.Id, Name = subItem.Text, - Available = true + Available = true, + MobileLink = subItem.MobileLink }; response.Add(subMenuVM); continue; @@ -696,7 +698,8 @@ namespace Marco.Pms.Services.Controllers { Id = subItem.Id, Name = subItem.Text, - Available = true + Available = true, + MobileLink = subItem.MobileLink }; response.Add(subMenuVM); } @@ -730,7 +733,8 @@ namespace Marco.Pms.Services.Controllers { Id = subItem.Id, Name = subItem.Text, - Available = true + Available = true, + MobileLink = subItem.MobileLink }; response.Add(subMenuVM); continue; @@ -748,7 +752,8 @@ namespace Marco.Pms.Services.Controllers { Id = subItem.Id, Name = subItem.Text, - Available = true + Available = true, + MobileLink = subItem.MobileLink, }; response.Add(subMenuVM); } @@ -762,7 +767,8 @@ namespace Marco.Pms.Services.Controllers { Id = item.Id, Name = item.Text, - Available = true + Available = true, + MobileLink = item.MobileLink }; response.Add(menuVM); } @@ -815,10 +821,12 @@ namespace Marco.Pms.Services.Controllers Id = Guid.NewGuid(), Name = "Documents", Available = true, + MobileLink = "/dashboard/document-main-page" }); } // Step 3: Log success + response = response.Where(ms => !string.IsNullOrWhiteSpace(ms.MobileLink)).ToList(); _logger.LogInfo("Fetched sidebar menu successfully. Tenant: {TenantId}, EmployeeId: {EmployeeId}, SectionsReturned: {Count}", tenantId, employeeId, menus.Count); return Ok(ApiResponse.SuccessResponse(response, "Sidebar menu fetched successfully", 200));