Beispiel #1
0
        private void ValidateDoesNotAlreadyExists(Entity.Spending spendingToValidate)
        {
            if (spendingToValidate.Spender?.Id == null)
            {
                throw new ValidationException("Spending not valid: No Spender");
            }

            IList <Entity.Spending> spenderSpendings = _spendingRepository.GetFromSpender(spendingToValidate.Spender.Id.Value);

            if (spenderSpendings.Any(sp => sp.Amount.IsEquals(spendingToValidate.Amount) &&
                                     sp.Date.IsEquals(spendingToValidate.Date)))
            {
                throw new ValidationException("Spending not valid: A spending that has the same amount and date already exists");
            }
        }
Beispiel #2
0
 public void ValidateNewSpending(Entity.Spending spendingToValidate)
 {
     spendingToValidate.ValidateNew(DateTime.UtcNow);
     ValidateDoesNotAlreadyExists(spendingToValidate);
 }