Add JWT authentication and authorization infrastructure

This commit is contained in:
2026-08-18 15:43:46 +05:30
parent ea2e5229c8
commit e0e691acbf
18 changed files with 395 additions and 4 deletions
@@ -0,0 +1,21 @@
using Distribution.Data;
using Microsoft.EntityFrameworkCore;
namespace Distribution.Infra.Auth
{
public class PermissionService : IPermissionService
{
private readonly AppDBContext _context;
public PermissionService(AppDBContext context)
{
_context = context;
}
public async Task<bool> HasPermissionAsync(Guid roleId, string permissionCode) =>
await _context.RolePermissions
.Where(rp => rp.FK_RoleId == roleId && rp.IsActive)
.Join(_context.Permissions.Where(p => p.IsActive), rp => rp.FK_PermissionId, p => p.Id, (rp, p) => p.Code)
.AnyAsync(code => code == permissionCode);
}
}