示例#1
0
        public override void Handle(ValidateChargeLimitArgs args)
        {
            if (!TimeHelper.IsIn24Hr(args.LastModifiedTime, args.ModifyTime))
            {
                base.Handle(args);
                return;
            }

            var rules = ChainOfResponsibilityHandler.Chain(
                new CannotIncreaseRule(),
                new CannotLimitToUnlimitRule()
                );

            rules.Handle(args);
        }
示例#2
0
        public bool Validate(ChargeLimitsConfig oldConfig, ChargeLimitsConfig newConfig)
        {
            var allChargeLimits = GetAllChargeLimits(oldConfig, newConfig)
                                  .ToList();

            if (!IsNoAnyChanged(allChargeLimits))
            {
                return(false);
            }

            var rule = ChainOfResponsibilityHandler.Chain(
                new In24HrRule(),
                new Out24HrRule());

            return(HandleAllChargeLimitsByRule(allChargeLimits, rule));
        }