Organization_Management #142

Merged
ashutosh.nehete merged 92 commits from Organization_Management into main 2025-09-30 09:05:14 +00:00
3 changed files with 47 additions and 5 deletions
Showing only changes of commit 8c97c78408 - Show all commits

View File

@ -38,6 +38,18 @@ namespace Marco.Pms.Services.Controllers
tenantId = userHelper.GetTenantId(); tenantId = userHelper.GetTenantId();
} }
#region =================================================================== Organization Type APIs ===================================================================
[HttpGet("organization-type/list")]
public async Task<IActionResult> GetOrganizationTypes()
{
var loggedInEmployee = await _userHelper.GetCurrentEmployeeAsync();
var response = await _masterService.GetOrganizationTypesAsync(loggedInEmployee, tenantId);
return StatusCode(response.StatusCode, response);
}
#endregion
#region =================================================================== Global Services APIs =================================================================== #region =================================================================== Global Services APIs ===================================================================
[HttpGet("global-service/list")] [HttpGet("global-service/list")]

View File

@ -51,10 +51,34 @@ namespace Marco.Pms.Services.Service
_cache = cache; _cache = cache;
} }
#region =================================================================== Organization Type APIs ===================================================================
public async Task<ApiResponse<object>> GetOrganizationTypesAsync(Employee loggedInEmployee, Guid tenantId)
{
_logger.LogDebug("GetOrganizationTypes called");
try
{
// Step 1: Fetch global services
var services = await _context.OrgTypeMasters.OrderBy(ot => ot.Name).ToListAsync();
_logger.LogInfo("Fetched {Count} organization type records for tenantId: {TenantId}", services.Count, tenantId);
return ApiResponse<object>.SuccessResponse(services, $"{services.Count} record(s) of organization type fetched successfully", 200);
}
catch (Exception ex)
{
_logger.LogError(ex, "Error fetching organization type");
return ApiResponse<object>.ErrorResponse("An error occurred while fetching organization type", ex.Message, 500);
}
}
#endregion
#region =================================================================== Global Services APIs =================================================================== #region =================================================================== Global Services APIs ===================================================================
public async Task<ApiResponse<object>> GetGlobalServicesAsync(Employee loggedInEmployee, Guid tenantId) public async Task<ApiResponse<object>> GetGlobalServicesAsync(Employee loggedInEmployee, Guid tenantId)
{ {
_logger.LogInfo("GetServices called"); _logger.LogInfo("GetGlobalServices called");
try try
{ {
@ -63,12 +87,12 @@ namespace Marco.Pms.Services.Service
_logger.LogInfo("Fetched {Count} global service records for tenantId: {TenantId}", services.Count, tenantId); _logger.LogInfo("Fetched {Count} global service records for tenantId: {TenantId}", services.Count, tenantId);
return ApiResponse<object>.SuccessResponse(services, $"{services.Count} record(s) of services fetched successfully", 200); return ApiResponse<object>.SuccessResponse(services, $"{services.Count} record(s) of global services fetched successfully", 200);
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.LogError(ex, "Error fetching services"); _logger.LogError(ex, "Error fetching global services");
return ApiResponse<object>.ErrorResponse("An error occurred while fetching services", ex.Message, 500); return ApiResponse<object>.ErrorResponse("An error occurred while fetching global services", ex.Message, 500);
} }
} }
public async Task<ApiResponse<object>> CreateGlobalServiceAsync(ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId) public async Task<ApiResponse<object>> CreateGlobalServiceAsync(ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId)

View File

@ -7,7 +7,13 @@ namespace Marco.Pms.Services.Service.ServiceInterfaces
{ {
public interface IMasterService public interface IMasterService
{ {
#region =================================================================== Service Master APIs =================================================================== #region =================================================================== Organization Type APIs ===================================================================
Task<ApiResponse<object>> GetOrganizationTypesAsync(Employee loggedInEmployee, Guid tenantId);
#endregion
#region =================================================================== Golbal Service Master APIs ===================================================================
Task<ApiResponse<object>> GetGlobalServicesAsync(Employee loggedInEmployee, Guid tenantId); Task<ApiResponse<object>> GetGlobalServicesAsync(Employee loggedInEmployee, Guid tenantId);
Task<ApiResponse<object>> CreateGlobalServiceAsync(ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId); Task<ApiResponse<object>> CreateGlobalServiceAsync(ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId);
//Task<ApiResponse<object>> UpdateGlobalServiceAsync(Guid id, ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId); //Task<ApiResponse<object>> UpdateGlobalServiceAsync(Guid id, ServiceMasterDto serviceMasterDto, Employee loggedInEmployee, Guid tenantId);