Finally got the api working properly

This commit is contained in:
2026-04-01 13:10:01 +10:30
parent 5407c7db55
commit ad107753b5
6 changed files with 24 additions and 19 deletions
@@ -2,11 +2,12 @@
using Emergence.models;
using Emergence.services.Interface;
using Microsoft.AspNetCore.Http.HttpResults;
using System.Text.Json.Serialization;
namespace Emergence.api.Controllers;
[ApiController]
[Route("[controller]", Name = "Tenant", Order = 1)]
[Route("[controller]")]
public class TenantController : ControllerBase
{
private readonly ITenantService _tenantService;
@@ -15,10 +16,14 @@ public class TenantController : ControllerBase
_tenantService = tenantService;
}
[HttpGet(Name = "GetTenants"), ProducesResponseType(StatusCodes.Status200OK), ProducesResponseType(StatusCodes.Status404NotFound)]
public async Task<Results<Ok<IList<TenantModel>>, NotFound>> GetAsync()
[HttpGet(Name = "GetTenants")]
public async Task<Results<Ok<IEnumerable<TenantModel>>, NotFound>> Get()
{
var tenants = await _tenantService.GetAllAsync();
return tenants is IList<TenantModel> result ? TypedResults.Ok(result) : TypedResults.NotFound();
if (tenants is null)
{
return TypedResults.NotFound();
}
return TypedResults.Ok(tenants);
}
}
+2
View File
@@ -1,4 +1,5 @@
using Emergence.services.Extensions;
using Scalar.AspNetCore;
var builder = WebApplication.CreateBuilder(args);
@@ -15,6 +16,7 @@ var app = builder.Build();
if (app.Environment.IsDevelopment())
{
app.MapOpenApi();
app.MapScalarApiReference();
}
app.UseHttpsRedirection();
+6 -7
View File
@@ -2,13 +2,12 @@
using System.Collections.Generic;
using System.Text;
namespace Emergence.models
{
namespace Emergence.models;
public class TenantModel
{
public Guid Id = new Guid();
public string TenantCode = string.Empty;
public string CompanyName = string.Empty;
public bool IsInactive = false;
}
public Guid Id { get; set; }
public string TenantCode { get; set; }
public string CompanyName { get; set; }
public bool IsInactive { get; set; }
}
@@ -11,7 +11,6 @@ namespace Emergence.services.Extensions
{
public static IServiceCollection AddEmergenceServices(this IServiceCollection services)
{
services = services.AddTransient<IUserService, UserService>();
services = services.AddTransient<ITenantService, TenantService>();
return services;
+1 -1
View File
@@ -6,7 +6,7 @@ namespace Emergence.services.Interface
{
public interface IService<T, I> where T : class
{
public Task<IList<T>> GetAllAsync();
public Task<IEnumerable<T>> GetAllAsync();
public Task<T> GetByIdAsync(I id);
}
}
+5 -5
View File
@@ -9,13 +9,13 @@ namespace Emergence.services.Services;
public class TenantService : ITenantService
{
private List<TenantModel> testList = [
new TenantModel {TenantCode = "FJP", CompanyName ="Fred J Potter" },
new TenantModel {TenantCode = "JAZZ", CompanyName ="Jazzbond" },
new TenantModel {TenantCode = "TDT", CompanyName ="The Digital Tailor" },
new TenantModel {TenantCode = "HBAS", CompanyName ="Hicks Building and Asbestos Services" },
new TenantModel {Id = Guid.NewGuid(), TenantCode = "FJP", CompanyName = "Fred J Potter", IsInactive = false },
new TenantModel {Id = Guid.NewGuid(), TenantCode = "JAZZ", CompanyName = "Jazzbond", IsInactive = false },
new TenantModel {Id = Guid.NewGuid(), TenantCode = "TDT", CompanyName = "The Digital Tailor", IsInactive = false },
new TenantModel {Id = Guid.NewGuid(), TenantCode = "HBAS", CompanyName = "Hicks Building and Asbestos Services", IsInactive = false },
];
public async Task<IList<TenantModel>> GetAllAsync()
public async Task<IEnumerable<TenantModel>> GetAllAsync()
{
return testList;
}