From e73413c84975a96e6a56c0e0f68d069727022916 Mon Sep 17 00:00:00 2001 From: "ashutosh.nehete" Date: Mon, 24 Nov 2025 12:01:56 +0530 Subject: [PATCH] Added the date in project report API in market controller --- .../Controllers/MarketController.cs | 30 +++++++------------ Marco.Pms.Services/Helpers/ReportHelper.cs | 3 +- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/Marco.Pms.Services/Controllers/MarketController.cs b/Marco.Pms.Services/Controllers/MarketController.cs index 484039a..e6065c0 100644 --- a/Marco.Pms.Services/Controllers/MarketController.cs +++ b/Marco.Pms.Services/Controllers/MarketController.cs @@ -133,30 +133,13 @@ namespace Marco.Pms.Services.Controllers } [HttpGet("get/project/report/{projectId}")] - public async Task GetProjectReport(Guid projectId) - { - using var scope = _serviceScopeFactory.CreateScope(); - var _reportHelper = scope.ServiceProvider.GetRequiredService(); - var _logger = scope.ServiceProvider.GetRequiredService(); - - var resonse = await _reportHelper.GetDailyProjectReportWithOutTenant(projectId); - - if (resonse == null) - { - _logger.LogWarning("Project report not found"); - return NotFound(ApiResponse.ErrorResponse("Project report not found", "Project report not found", 404)); - } - _logger.LogInfo("Report for the project fetched successfully"); - return Ok(ApiResponse.SuccessResponse(resonse, "Report for the project fetched successfully", 200)); - } /// /// Retrieves a daily project report by its unique identifier. /// /// The GUID of the project for which to generate the report. /// An IActionResult containing the project report or an appropriate error response. - [HttpGet("{projectId}/report")] - public async Task GetProjectReportAsync(Guid projectId) + public async Task GetProjectReportAsync(Guid projectId, [FromQuery] DateTime? date) { using var scope = _serviceScopeFactory.CreateScope(); var _reportHelper = scope.ServiceProvider.GetRequiredService(); @@ -167,8 +150,17 @@ namespace Marco.Pms.Services.Controllers try { + DateTime reportDate; + if (date.HasValue) + { + reportDate = date.Value; + } + else + { + reportDate = DateTime.UtcNow.AddDays(-1).Date; + } // Call the helper service, which is now available as a class member. - var response = await _reportHelper.GetDailyProjectReportWithOutTenant(projectId); + var response = await _reportHelper.GetDailyProjectReportWithOutTenant(projectId, reportDate); // Check if the report data was found. if (response == null) diff --git a/Marco.Pms.Services/Helpers/ReportHelper.cs b/Marco.Pms.Services/Helpers/ReportHelper.cs index 573c8b8..cfcb474 100644 --- a/Marco.Pms.Services/Helpers/ReportHelper.cs +++ b/Marco.Pms.Services/Helpers/ReportHelper.cs @@ -25,10 +25,9 @@ namespace Marco.Pms.Services.Helpers _cache = cache; } - public async Task GetDailyProjectReportWithOutTenant(Guid projectId) + public async Task GetDailyProjectReportWithOutTenant(Guid projectId, DateTime reportDate) { // await _cache.GetBuildingAndFloorByWorkAreaId(); - DateTime reportDate = DateTime.UtcNow.AddDays(-1).Date; var project = await _cache.GetProjectDetailsWithBuildings(projectId); if (project == null) {