diff --git a/Marco.Pms.Services/Controllers/MasterController.cs b/Marco.Pms.Services/Controllers/MasterController.cs index 37581b4..87b03e2 100644 --- a/Marco.Pms.Services/Controllers/MasterController.cs +++ b/Marco.Pms.Services/Controllers/MasterController.cs @@ -563,5 +563,23 @@ namespace Marco.Pms.Services.Controllers _logger.LogInfo("{count} Work Category records fetched successfully from tenant {tenantId}", workCategoryMasterVMs.Count, tenantId); return Ok(ApiResponse.SuccessResponse(workCategoryMasterVMs, System.String.Format("{0} Work Category records fetched successfully", workCategoryMasterVMs.Count), 200)); } + + [HttpGet("work-category/{id})")] + public async Task GetWorkCategoryMaster(Guid id) + { + Guid tenantId = _userHelper.GetTenantId(); + WorkCategoryMaster? workCategory = await _context.WorkCategoryMasters.FirstOrDefaultAsync(s => s.TenantId == tenantId && s.Id == id); + if (workCategory != null) + { + WorkCategoryMasterVM workCategoryMasterVM = workCategory.ToWorkCategoryMasterVMFromWorkCategoryMaster(); + _logger.LogInfo("{WorkCategoryId} Work Category fetched successfully from tenant {tenantId}", workCategoryMasterVM.Id ?? Guid.Empty, tenantId); + return Ok(ApiResponse.SuccessResponse(workCategoryMasterVM, "Work Category fetched successfully", 200)); + } + + _logger.LogInfo("{WorkCategoryId} Work Category not found in database", id); + return NotFound(ApiResponse.ErrorResponse("Work Category not found", "Work Category not found", 404)); + } + + } }