private async Task <BonusResult> CreateCandidateBonus(Guid candidateId) { var retVal = new BonusResult(); var candidate = _candidates .Queryable() .Include(x => x.OrganizationBonusIntent) .First(x => x.Id == candidateId && x.OrganizationBonusIntent == null); Guid?organizationId = candidate.RecruiterOrganizationId; var individualAmount = candidate.RecruitingAgencyBonus; var bonusType = BonusType.CandidateQualificationBonus; var intent = new OrganizationBonusIntent() { OrganizationId = organizationId.Value, CandidateId = candidateId, Amount = individualAmount, BonusType = bonusType, ObjectState = ObjectState.Added, }; var records = await Repository.InsertAsync(intent, true); _logger.LogDebug(GetLogMessage("{0} records updated"), records); if (records > 0) { retVal.BonusId = intent.Id; retVal.Succeeded = true; } return(await Task.FromResult(retVal)); }
public void BonusResults(BonusResult e) { //base.BonusResults(e); if (m_BonusResult != null) { m_BonusResult(e); } }
public BonusResult getRecoverBonusResult() { if (m_CurrentBonusGame == null) { return(null); } BonusResult bResult = m_CurrentBonusGame.getBonusResult(); if (bResult != null) { return(bResult); } return(null);//throw new NotImplementedException(); }
public async Task <BonusResult> Create(CreateBonusIntentOptions options) { _logger.LogInformation(GetLogMessage("Creating Bonus: {@options}"), options); BonusResult retVal = new BonusResult(); if (options.CandidateId.HasValue) { return(await CreateCandidateBonus(options.CandidateId.Value)); } if (options.LeadId.HasValue) { return(await CreateLeadBonus(options.LeadId.Value)); } retVal.ErrorMessage = "LeadID or MarketerId must be specified"; return(retVal); }
private async Task <BonusResult> CreateLeadBonus(Guid leadId) { var retVal = new BonusResult(); var lead = await _leads .Queryable() .Include(x => x.IndividualBonusIntent) .Where(x => x.Id == leadId && x.IndividualBonusIntent == null) .FirstAsync(); Guid?personId = lead.MarketerId; Guid?organizationId = lead.MarketerOrganizationId; var individualAmount = lead.MarketerBonus; var bonusType = BonusType.LeadQualificationBonus; var intent = new IndividualBonusIntent() { PersonId = personId.Value, OrganizationId = organizationId.Value, LeadId = leadId, Amount = individualAmount, BonusType = bonusType, ObjectState = ObjectState.Added, }; var records = await Repository.InsertAsync(intent, true); _logger.LogDebug(GetLogMessage("{0} records updated"), records); if (records > 0) { retVal.BonusId = intent.Id; retVal.Succeeded = true; } return(await Task.FromResult(retVal)); }
public Result <SpinResult, ErrorCode> UpdateUserLastSpinData(int level, UserGameSpinData userGameSpinData, RequestContext <BonusArgs> requestContext, BonusResult bonusResult) { throw new NotImplementedException(); }
public void SendBonusResult(BonusResult bResult) { BonusResult(bResult); }
public async Task <bool> NotifyEndGame <T>(RequestContext <T> requestContext, BonusResult bonusResult) { var w = await userService.GetWallet(requestContext.UserSession); return(await w.EndGame(requestContext.Game.Id, bonusResult.RoundId)); }