public async Task <IActionResult> OnPostAsync() { var matchEntity = await GetMatchById(ResultModel.MatchId); matchEntity.Result = ResultModel.GetResult(); PointHistory pointHistory = new PointHistory { Id = Guid.NewGuid(), TimeStamp = DateTime.Now }; List <PointResult> results = new List <PointResult>(); foreach (var matchEntityBet in matchEntity.Bets) { List <PointPolicy> policies = new List <PointPolicy>(); foreach (var pointPolicy in PointPoliciese) { PointPolicy tmp = new PointPolicy { Applied = pointPolicy.CanApply(matchEntity.Result, matchEntityBet), Description = pointPolicy.Description, Name = pointPolicy.Name, Id = Guid.NewGuid(), Points = pointPolicy.Points, PolicyType = PolicyType.Match, TimeStamp = DateTime.Now }; policies.Add(tmp); } var user = await GetUserById(matchEntityBet.UserId); matchEntityBet.Result = new PointResult { User = user, Id = Guid.NewGuid(), AddedPoints = policies.Sum(c => c.Applied ? c.Points.Value : 0), PointPolicies = policies, SumPoints = user.Points + policies.Sum(c => c.Applied ? c.Points.Value : 0), TimeStamp = DateTime.Now }; user.Points = user.Points + policies.Sum(c => c.Applied ? c.Points.Value : 0); results.Add(matchEntityBet.Result); } pointHistory.PointResults = results; _context.PointHistories.Add(pointHistory); await _context.SaveChangesAsync(); return(RedirectToPage("../Dashboard/Index")); }
protected void OnSave(PointPolicy item) { this.AccountDependency.Save(item); item.AccountLevels = Levels == null ? "" : string.Join(",", this.Levels.GetCheckedIds().Select(x => x.ToString()).ToArray()); item.Priority = Priority; }
protected void SetInnerObject(PointPolicy item) { _innerObject = item; }
public PointPolicyModelBase(PointPolicy shop) { _innerObject = shop; }
public PointPolicyModelBase() { _innerObject = new PointPolicy(); }
public EditPointPolicy(PointPolicy item) : base(item) { }
public ListPointPolicy(PointPolicy adminUser) { _innerObject = adminUser; }
public ListPointPolicy() { _innerObject = new PointPolicy(); }