55 lines
1.7 KiB
C#
55 lines
1.7 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.Auctions;
|
|
|
|
namespace TIAM.Database.DataLayers.Users
|
|
{
|
|
public class AuctionDal : TiamDalBase<AuctionDbContext>
|
|
{
|
|
|
|
public AuctionDal() : base()
|
|
{
|
|
}
|
|
|
|
public Task<List<AuctionBid>> GetBids()
|
|
{
|
|
return Ctx.AuctionBids.ToListAsync();
|
|
}
|
|
|
|
public Task<List<AuctionBid>> GetBidsByEmail(string email)
|
|
{
|
|
Console.WriteLine($"Getting bid from db {email}");
|
|
var emailLower = email.ToLower();
|
|
return Ctx.AuctionBids.Where(x => x.Email.ToLower() == emailLower).ToListAsync();
|
|
}
|
|
|
|
public async Task<AuctionBid?> GetBidById(Guid id)
|
|
{
|
|
Console.WriteLine($"Getting bid from db {id}");
|
|
|
|
return Ctx.AuctionBids.FirstOrDefault(x => x.Id == id);
|
|
}
|
|
|
|
public Task<bool> CreateBidAsync(AuctionBid auctionBid)
|
|
{
|
|
auctionBid.Created = DateTime.UtcNow;
|
|
auctionBid.Modified = DateTime.UtcNow;
|
|
Ctx.AuctionBids.Add(auctionBid);
|
|
Console.WriteLine($"Saving user to db {auctionBid.Id}, {auctionBid.Email}, {auctionBid.PhoneNumber}");
|
|
return Ctx.SaveChangesAsync().ContinueWith(x => x.Result > 0);
|
|
}
|
|
|
|
public Task<bool> UpdateBidAsync(AuctionBid auctionBid)
|
|
{
|
|
auctionBid.Modified = DateTime.UtcNow;
|
|
Ctx.AuctionBids.Update(auctionBid);
|
|
return Ctx.SaveChangesAsync().ContinueWith(x => x.Result > 0);
|
|
}
|
|
}
|
|
}
|