31 lines
936 B
C#
31 lines
936 B
C#
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.Extensions.Logging;
|
|
using PARR.DAL.Context;
|
|
using PARR.DAL.Models;
|
|
using PARR.DAL.Services.Abstracts;
|
|
using PARR.DAL.Services.Interfaces;
|
|
|
|
namespace PARR.DAL.Services.Implementations
|
|
{
|
|
internal class UserService : BaseService<User>, IUserService
|
|
{
|
|
private readonly DataContext dataContext;
|
|
|
|
public UserService(DataContext dataContext, ILogger<UserService> logger) : base(logger)
|
|
{
|
|
this.dataContext = dataContext;
|
|
}
|
|
|
|
protected override DbSet<User> EntitySet => dataContext.Users;
|
|
|
|
protected override DataContext EntitiContext => dataContext;
|
|
|
|
public async Task<User?> GetByIpWithRolesAsync(string ipAddress)
|
|
{
|
|
return await EntitySet
|
|
.Include(t => t.Roles).ThenInclude(t => t.Role)
|
|
.FirstOrDefaultAsync(t => t.Ip == ipAddress);
|
|
}
|
|
}
|
|
}
|