mirror of
https://github.com/GCMatters/hermes.git
synced 2026-02-04 05:30:13 +01:00
feat: skills endpoint, stylistic changes
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
using System.Security.Cryptography;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using WebApp.Data;
|
||||
@@ -18,6 +18,7 @@ namespace WebApp.Endpoints
|
||||
var group = app.MapGroup("api/auth")
|
||||
.WithParameterValidation();
|
||||
|
||||
// POST /api/auth/login
|
||||
group.MapPost("/login", async (LoginDto dto, ApplicationDbContext context, GeneralUseHelpers guh) =>
|
||||
{
|
||||
var user = await context.WebUsers.FirstOrDefaultAsync(u => u.Email == dto.Email);
|
||||
@@ -38,6 +39,7 @@ namespace WebApp.Endpoints
|
||||
});
|
||||
});
|
||||
|
||||
// POST /api/auth/logout
|
||||
group.MapPost("/logout", async (HttpContext httpContext, GeneralUseHelpers guh) =>
|
||||
{
|
||||
var token = await guh.GetTokenFromHTTPContext(httpContext);
|
||||
@@ -54,6 +56,7 @@ namespace WebApp.Endpoints
|
||||
return Results.Ok(new { success = true });
|
||||
});
|
||||
|
||||
// GET /api/auth/my_account
|
||||
group.MapGet("/my_account", async (HttpContext httpContext, GeneralUseHelpers guh) =>
|
||||
{
|
||||
var token = await guh.GetTokenFromHTTPContext(httpContext);
|
||||
@@ -77,6 +80,7 @@ namespace WebApp.Endpoints
|
||||
})
|
||||
.WithName(GetUserEndpointName);
|
||||
|
||||
// GET /api/auth/my_events
|
||||
group.MapGet("/my_events", async (HttpContext httpContext, GeneralUseHelpers guh, ApplicationDbContext context) =>
|
||||
{
|
||||
var token = await guh.GetTokenFromHTTPContext(httpContext);
|
||||
@@ -122,6 +126,7 @@ namespace WebApp.Endpoints
|
||||
|
||||
});
|
||||
|
||||
// POST /api/auth/add_skill
|
||||
group.MapPost("/add_skill", async (SingleSkillDto dto, HttpContext httpContext, ApplicationDbContext context, GeneralUseHelpers guh) =>
|
||||
{
|
||||
// Uzyskaj użytkownika z tokenu
|
||||
@@ -158,7 +163,7 @@ namespace WebApp.Endpoints
|
||||
return Results.Json(new { message = "Skill added successfully!" }, statusCode: 201);
|
||||
});
|
||||
|
||||
|
||||
// POST /api/auth/remove_skill
|
||||
group.MapPost("/remove_skill", async (SingleSkillDto dto, HttpContext httpContext, ApplicationDbContext context, GeneralUseHelpers guh) =>
|
||||
{
|
||||
// Uzyskaj użytkownika z tokenu
|
||||
@@ -199,7 +204,8 @@ namespace WebApp.Endpoints
|
||||
return Results.Json(new { message = "Skill deleted successfully!" }, statusCode: 201);
|
||||
});
|
||||
|
||||
group.MapGet("/get_skills", async (HttpContext httpContext, ApplicationDbContext context, GeneralUseHelpers guh) =>
|
||||
// GET /api/auth/skills
|
||||
group.MapGet("/skills", async (HttpContext httpContext, ApplicationDbContext context, GeneralUseHelpers guh) =>
|
||||
{
|
||||
// Uzyskaj użytkownika z tokenu
|
||||
Token? token = await guh.GetTokenFromHTTPContext(httpContext);
|
||||
@@ -240,4 +246,4 @@ namespace WebApp.Endpoints
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using WebApp.Data;
|
||||
using WebApp.DTOs;
|
||||
@@ -134,7 +134,7 @@ namespace WebApp.Endpoints
|
||||
// Uzyskaj organizację z tokenu
|
||||
Token? token = await guhf.GetTokenFromHTTPContext(httpContext);
|
||||
Organisation? org = await guhf.GetOrganisationFromToken(token);
|
||||
if (org is null) return Results.StatusCode(403);
|
||||
if (org is null) return Results.Unauthorized();
|
||||
|
||||
// Sprawdź, czy organizacja ma prawo
|
||||
// do usunięcia tego (EventId = id) eventu.
|
||||
@@ -160,7 +160,6 @@ namespace WebApp.Endpoints
|
||||
Organisation? org = await guhf.GetOrganisationFromToken(token);
|
||||
List<EventSummaryDto> SearchResults = [];
|
||||
|
||||
|
||||
|
||||
List<Event> AllEvents = await dbContext.Events.ToListAsync();
|
||||
if (sort is null || sort.ToUpper() != "ASC")
|
||||
|
||||
26
WebApp/Endpoints/SkillsEndpoints.cs
Normal file
26
WebApp/Endpoints/SkillsEndpoints.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using WebApp.Data;
|
||||
using WebApp.Mapping;
|
||||
|
||||
namespace WebApp.Endpoints;
|
||||
|
||||
public static class SkillsEndpoints
|
||||
{
|
||||
const string GetSkillEndpointName = "GetSkill";
|
||||
|
||||
public static RouteGroupBuilder MapSkillsEndpoints(this WebApplication app)
|
||||
{
|
||||
var group = app.MapGroup("api/skills").WithParameterValidation();
|
||||
|
||||
// GET /skills
|
||||
group.MapGet("/",
|
||||
async (ApplicationDbContext dbContext) =>
|
||||
await dbContext.Skills
|
||||
.OrderBy(Sk => Sk.SkillId)
|
||||
.Select(Sk => Sk.ToSkillSummaryDto()) // SkillSummaryDto
|
||||
.AsNoTracking()
|
||||
.ToListAsync());
|
||||
|
||||
return group;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user