public EditPeriodViewModel(PeriodModel vaccinePeriods)
        {
            VaccinePeriods  = vaccinePeriods;
            ValidationRules = new PeriodValidator();

            PutCommand = new Command(Put);
        }
Beispiel #2
0
        public AddPeriodViewModel()
        {
            VaccinePeriod   = new PeriodModel();
            ValidationRules = new PeriodValidator();

            // Command
            PostCommand = new Command(Post);
        }
        /// <summary>
        /// Gets the request list, based on a list of items that need to be included.
        /// </summary>
        /// <param name="optionsList">The options list.</param>
        /// <param name="fromYear">From year.</param>
        /// <param name="fromMonth">From month.</param>
        /// <param name="toYear">To year.</param>
        /// <param name="toMonth">To month.</param>
        /// <param name="includeFields">The include fields.</param>
        /// <returns></returns>
        /// <exception cref="ArgumentException">The field 'fin.trs.head.yearperiod' must be included in the includeFields parameter.</exception>
        public static List <GeneralLedgerRequestOption> GetRequestList(List <GeneralLedgerRequestOption> optionsList, int fromYear, int fromMonth, int toYear, int toMonth, List <string> includeFields)
        {
            var minimalList = optionsList.Where(o => includeFields.Contains(o.Field)).ToList();

            var first = minimalList.FirstOrDefault(o => o.Field == "fin.trs.head.yearperiod");

            if (first == null)
            {
                throw new ArgumentException("The field 'fin.trs.head.yearperiod' must be included in the includeFields parameter.");
            }

            PeriodValidator.Validate(fromYear, fromMonth, toYear, toMonth);

            first.From = $"{fromYear}/{fromMonth.ToString().PadLeft(2, '0')}";
            first.To   = $"{toYear}/{toMonth.ToString().PadLeft(2, '0')}";

            return(minimalList);
        }
 public override IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
 {
   var validator = new PeriodValidator();
   var result = validator.Validate(this);
   return result.Errors.Select(item => new ValidationResult(item.ErrorMessage, new[] { item.PropertyName }));
 }
 private void InitPeriodValidators()
 {
     _apiCountValidator = new PeriodValidator(
         cnt => !(cnt != 0 && (cnt < 20 || cnt > 200)),
         R.TextCountApi_Validating1,
         R.TextCountApi_Validating1);
     _searchApiCountValidator = new PeriodValidator(
         cnt => !(cnt != 0 && (cnt < 20 || cnt > 100)),
         R.TextSearchCountApi_Validating1,
         R.TextSearchCountApi_Validating1);
     _proxyPortNumberValidator = new PeriodValidator(
         p => !(p < 0 && p > 65535),
         R.TextProxyPort_ValidatingText1,
         R.TextProxyPort_ValidatingText2);
     _timeoutLimitsValidator = new PeriodValidator(
         tm => !(tm < (int)HttpTimeOut.MinValue || tm > (int)HttpTimeOut.MaxValue),
         R.ConnectionTimeOut_ValidatingText1,
         R.ConnectionTimeOut_ValidatingText1);
     _userStreamPeriodValidator = new PeriodValidator(
         i => !(i < 0 || i > 60),
         R.UserstreamPeriod_ValidatingText1,
         R.UserstreamPeriod_ValidatingText1);
     _timelilePeriodValidator = new PeriodValidator(
         i => !(i != 0 && (i < 15 || i > 6000)),
         R.TimelinePeriod_ValidatingText1,
         R.TimelinePeriod_ValidatingText2);
     _dmessagesPeriodValidator = new PeriodValidator(
         i => !(i != 0 && (i < 15 || i > 6000)),
         R.DMPeriod_ValidatingText1,
         R.DMPeriod_ValidatingText2);
     _publicSearchPeriodValidator = new PeriodValidator(
         i => (i == 0 || (i >= 30 && i <= 6000)),
         R.PubSearchPeriod_ValidatingText1,
         R.PubSearchPeriod_ValidatingText2);
 }