52 lines
1.4 KiB
C#
52 lines
1.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using TIAM.Database.DbContexts;
|
|
using TIAM.Entities.Users;
|
|
|
|
namespace TIAM.Database.DataLayers.Users
|
|
{
|
|
public class UserDal : TiamDalBase<UserDbContext>
|
|
{
|
|
|
|
public UserDal() : base()
|
|
{
|
|
}
|
|
|
|
public UserDal(UserDbContext _object)
|
|
{
|
|
}
|
|
|
|
public Task<List<User>> GetUsersAsync()
|
|
{
|
|
return Ctx.Users.ToListAsync();
|
|
}
|
|
|
|
public virtual Task<User?> GetUserByEmailAsync(string email)
|
|
{
|
|
Console.WriteLine($"Getting user from db {email}");
|
|
var emailLower = email.ToLower();
|
|
return Ctx.Users.SingleOrDefaultAsync(x=>x.Email.ToLower() == emailLower);
|
|
}
|
|
|
|
public Task<bool> CreateUserAsync(User user)
|
|
{
|
|
user.Created = DateTime.UtcNow;
|
|
user.Modified = DateTime.UtcNow;
|
|
Ctx.Users.Add(user);
|
|
Console.WriteLine($"Saving user to db {user.Id}, {user.Email}, {user.PhoneNumber}, {user.Password}");
|
|
return Ctx.SaveChangesAsync().ContinueWith(x=>x.Result > 0);
|
|
}
|
|
|
|
public Task<bool> UpdateUserAsync(User user)
|
|
{
|
|
user.Modified = DateTime.UtcNow;
|
|
Ctx.Users.Update(user);
|
|
return Ctx.SaveChangesAsync().ContinueWith(x=>x.Result > 0);
|
|
}
|
|
}
|
|
}
|