public async Task Handle(TransactionSavedEvent @event) { var rules = await ruleAccess.GetRules(@event.UserId); var parsedRules = ruleParser.Parse(rules); foreach (var rule in parsedRules) { if (ruleMatchChecker.IsRuleMatch(rule, @event.DatabaseTransaction)) { await bus.SendAsync(new AddGroupCommand(@event.DatabaseTransaction.Id, rule.GroupName, @event.UserId, rule.Id)); } } }
public async Task <IEnumerable <RuleParsedViewModel> > ReadRules(Guid userId) { var rules = await ruleAccess.GetRules(userId); return(mapper.Map <IEnumerable <RuleParsedViewModel> >(ruleParser.Parse(rules))); }