GeneratedTransaction GetSuggestedTransaction(BankRow bankRow) { var item = new GeneratedTransaction() { Date = bankRow.AccountingDate, Sum = bankRow.Sum, BankRowReference = bankRow }; return(item); }
public static bool CheckIfBankRowValidatesToRule(Rule rule, BankRow bankRow) { var i = 0; var oneOrRulesValidate = false; while (i < rule.AndConditionGroups.Count && !oneOrRulesValidate) { var andRule = rule.AndConditionGroups[i]; // = (a & b & c) var allAndRulesValidate = true; if (andRule.Conditions.Count > 0) { var j = 0; while (j < andRule.Conditions.Count && allAndRulesValidate) { var condition = andRule.Conditions[j]; // = a var rowValue = typeof(BankRow).GetProperty(condition.Property).GetValue(bankRow); allAndRulesValidate = RuleEvaluator.IsConditionTrue(condition, rowValue); j++; } if (allAndRulesValidate) { oneOrRulesValidate = true; } } else { throw new Exception("AndCondtionGroups can NOT be without at least one condition!"); } i++; } return(oneOrRulesValidate); }
public bool Update(BankRow transaction) { return(true); }
public BankRow Insert(BankRow transaction) { throw new NotImplementedException(); }