Exemple #1
0
        public IRuleResult Execute(IRuleParameters parameters)
        {
            var customer = parameters as Customer;

            if ((DateTime.Today - customer.CustomerSince).Days / 365 > 10)
            {
                return(new Discount(0.20));
            }
            return(new Discount());
        }
Exemple #2
0
        public IRuleResult Execute(IRuleParameters parameters)
        {
            var customer = parameters as Customer;

            if ((DateTime.Today.Day == customer.Birthday.Day) && (DateTime.Today.Month == customer.Birthday.Month))
            {
                return(new Discount(.15));
            }
            return(new Discount());
        }
Exemple #3
0
        public IRuleResult Execute(IRuleParameters parameters)
        {
            var customer = parameters as Customer;

            if ((DateTime.Today.Day - customer.CustomerSince.Day) < 30)
            {
                return(new Discount(.08));
            }
            return(new Discount());
        }
Exemple #4
0
        public IRuleResult Execute(IRuleParameters parameters)
        {
            var billInfo = parameters as BillInfo;

            if (billInfo.Units <= 100)
            {
                billInfo.Bill = billInfo.Units * 1.35M;
            }
            return(billInfo as IRuleResult);
        }
Exemple #5
0
        public IRuleResult Execute(IRuleParameters parameters)
        {
            var billInfo = parameters as BillInfo;

            if (billInfo.Units <= 500)
            {
                billInfo.Bill = (100 * 1.35M) + (200 * 4.05M) + ((billInfo.Units - 300) * 6.75M); billInfo.RunNext = false;
            }
            ;
            return(billInfo as IRuleResult);
        }
Exemple #6
0
        public List <IRuleResult> Execute(IRuleParameters input, List <IRule> rules)
        {
            var results = new List <IRuleResult>();

            rules.ForEach(rule =>
            {
                var result = rule.Execute(input);
                results.Add(result);
            });

            return(results);
        }
Exemple #7
0
 public IRuleResult Execute(IRuleParameters parameters)
 {
     throw new NotImplementedException();
 }
        public BackPropagationRule(IRuleParameters defaultParameters)
        {
            Contract.Requires(defaultParameters != null);

            DefaultParameters = defaultParameters;
        }