public async Task <bool> Update(Participation participation) { if (!ExecuteValidation(new ParticipationValidation(), participation)) { return(false); } await _participationRepository.Update(participation); return(true); }
public Participation PushAllocationIntoParticipation(Allocation allocation) { IParticipationRepository participationRepository = _DataRepositoryFactory.GetDataRepository <IParticipationRepository>(); IFundRepository fundRepository = _DataRepositoryFactory.GetDataRepository <IFundRepository>(); Participation participation = participationRepository.GetParticipationsByAccount(allocation.Reservation.AccountID) .Where(p => p.FundID == allocation.FundID) .FirstOrDefault(); try { if (participation == null) { if (CanFundAcceptNewParticipation(allocation.FundID, allocation.Amount)) { participation = new Participation() { AccountID = allocation.Reservation.AccountID, InitialBalance = allocation.Amount, Fund = fundRepository.Get(allocation.FundID) }; participationRepository.Add(participation); } } else { if (CanFundAcceptParticipationAddition(participation.Fund.FundID, allocation.Amount)) { participation.CurrentBalance += allocation.Amount; } participationRepository.Update(participation); } allocation.Pushed = true; } catch (Exception e) { } return(participation); }
public bool UpdateParticipation(ParticipationDto participation) { return(_participationRepository.Update(participation)); }