public Participation GetParticipationById(int id) { Participation p = _repository.Get(filter => filter.Id == id).FirstOrDefault(); if (p != null) { p.Activity = _activityRepository.Get(filter => filter.Id == p.ActivityId).FirstOrDefault(); } return(p); }
public void RedeemParticipation(string loginEmail, int participationId, decimal amount) { ExecuteFaultHandledOperation(() => { IAccountRepository accountRepository = _DataRepositoryFactory.GetDataRepository <IAccountRepository>(); IParticipationRepository ParticipationRepository = _DataRepositoryFactory.GetDataRepository <IParticipationRepository>(); IParticipationEngine ParticipationEngine = _BusinessEngineFactory.GetBusinessEngine <IParticipationEngine>(); Account account = accountRepository.GetByLogin(loginEmail); if (account == null) { NotFoundFault fault = new NotFoundFault(string.Format("No account found for login '{0}'.", loginEmail)); throw new FaultException <NotFoundFault>(fault, fault.Message); } ValidateAuthorization(account); Participation participation = ParticipationRepository.Get(participationId); if (participation == null) { NotFoundFault fault = new NotFoundFault(string.Format("No participation record found for id '{0}'.", participationId)); throw new FaultException <NotFoundFault>(fault, fault.Message); } ParticipationEngine.RedeemFundsFromParticipation(participationId, amount); }); }
public Participation GetParticipation(int participationId) { return(ExecuteFaultHandledOperation(() => { IParticipationRepository ParticipationRepository = _DataRepositoryFactory.GetDataRepository <IParticipationRepository>(); Participation participation = ParticipationRepository.Get(participationId); if (participation == null) { NotFoundFault fault = new NotFoundFault(string.Format("No participation record found for id '{0}'.", participationId)); throw new FaultException <NotFoundFault>(fault, fault.Message); } ValidateAuthorization(participation); return participation; })); }