public ActionResult CreateBet(string jsonModel) { try { CreateBetViewModel model = JsonConvert.DeserializeObject <CreateBetViewModel>(jsonModel); Bet bet = AutoMapper.Mapper.Map <CreateBetViewModel, Bet>(model); bet.StatusId = BetsRepository.GetStatusNumber(BetStatus.Applying); bet.Interest = unitOfWork.InterestsRepository.Get(bet.InterestId); unitOfWork.BetsRepository.Create(bet); bet.Id = unitOfWork.BetsRepository.GetAll().LastOrDefault().Id; string curUserId = unitOfWork.UsersRepository.GetAll().Where(u => u.UserName == User.Identity.Name).FirstOrDefault().Id; unitOfWork.Save(); unitOfWork.UsersInBetRepository.CreateForUser(curUserId, bet); foreach (var user in model.Users) { unitOfWork.UsersInBetRepository.CreateForUser(user.Id, bet); } ViewBag.SuccesCreateBet = true; unitOfWork.Save(); RedirectToAction("AllBets", "Bet"); } catch (Exception ex) { throw; } return(RedirectToAction("AllUsers", "Home")); }
public ActionResult Create(CreateBetViewModel model) { if (ModelState.IsValid) { Bet bet = AutoMapper.Mapper.Map <Bet>(model); bet.StatusId = BetsRepository.GetStatusNumber(BetStatus.Applying); unitOfWork.BetsRepository.Create(bet); unitOfWork.Save(); RedirectToAction("Index"); } return(View(model)); }
public async Task <IActionResult> OnPostAsync(int id) { Market = await _db.Market.FromSql($"ReadMarketByID {id}").FirstOrDefaultAsync(); if (!ModelState.IsValid) { return(Page()); } Bet.PotentialPayout = Bet.Stake + Bet.Stake * Market.Odds; if (Pages.PlaceBetModel.Punts.Balance < Bet.Stake) { RedirectToPage("./AddBetModel"); } else { BetsRepository repo = new BetsRepository(_db); var add = await repo.SaveBet(Bet, Market, punt); } return(RedirectToPage("./PlaceBet")); }
protected override List <Bet> GetAllEntites() { var repository = new BetsRepository(); return(repository.GetBets().ToList()); }