//Выбрать победителя аукциона public void ElectWinnerInAuction(AuctionWinnerVm model) { AuctionWinner auctionWinner = new AuctionWinner() { AuctionId = model.AuctionId, OrganizationId = model.OrganizationId }; _aplicationDbContext.AuctionsWinners.Add(auctionWinner); _aplicationDbContext.SaveChanges(); }
public void ElectWinnerInAuction(SelectAuctionWinnerVm model) { var auctionExists = _aplicationDbContext.Auctions.SingleOrDefault(p => p.Id == model.AuctionId); if (auctionExists == null) { throw new Exception("Аукциона под данным номером не имеется"); } var organizationExists = _aplicationDbContext.Organizations.SingleOrDefault(p => p.Id == model.OrganizationId); if (organizationExists == null) { throw new Exception("Организации под данным номером не имеется"); } var bidIsActive = _aplicationDbContext.Bids.SingleOrDefault(p => p.OrganizationId == model.OrganizationId && p.AuctionId == model.AuctionId && p.BidStatus == BidStatus.Active); if (bidIsActive == null) { throw new Exception("У компании нет активной заявки на этот аукцион"); } AuctionWinner winner = new AuctionWinner() { AuctionId = model.AuctionId, OrganizationId = model.OrganizationId, CreatedAt = DateTime.Now }; _aplicationDbContext.AuctionWinners.Add(winner); auctionExists.FinishDateActual = model.CreatedDate; auctionExists.AuctionStatus = AuctionStatus.Finished; _aplicationDbContext.SaveChanges(); }