46 lines
1.5 KiB
C#
46 lines
1.5 KiB
C#
using AyCode.Database.DataLayers.Users;
|
|
using Mango.Database.DbContexts.Users;
|
|
using Mango.Entities.Addresses;
|
|
using Mango.Entities.Companies;
|
|
using Mango.Entities.Messages.Emails;
|
|
using Mango.Entities.Profiles;
|
|
using Mango.Entities.Users;
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
namespace Mango.Database.DataLayers.Users
|
|
{
|
|
public class UserDal : AcUserDalBase<UserDbContext, User, Profile, UserToken, Company, UserToCompany, Address, EmailMessage>, IDalBase<UserDbContext>
|
|
{
|
|
public UserDal() : base()
|
|
{
|
|
}
|
|
|
|
public UserDal(UserDbContext context)
|
|
{
|
|
}
|
|
|
|
public async Task<bool> CreateUserAsync(User user)
|
|
{
|
|
Context.Users.Add(user);
|
|
Console.WriteLine($@"Saving user to db {user.Id}, {user.EmailAddress}, {user.PhoneNumber}, {user.Password}");
|
|
return await Context.SaveChangesAsync() > 0;
|
|
}
|
|
|
|
|
|
public async Task<bool> UpdateUserAsync(User user)
|
|
{
|
|
var existingUser = await Context.Users.CountAsync(u => u.EmailAddress == user.EmailAddress);
|
|
if (existingUser == 1)
|
|
{
|
|
//user.Modified = DateTime.UtcNow; //ezt nem kell megadni, a háttérben ezt magától megcsinálja a DbContextBase - J.
|
|
Context.Users.Update(user);
|
|
return await Context.SaveChangesAsync() > 0;
|
|
}
|
|
else
|
|
{
|
|
throw new Exception("User not found");
|
|
}
|
|
}
|
|
}
|
|
}
|