/// <summary> /// Date field filter constructor. /// </summary> /// <param name="canonicalLoanField">Canonical loan field.</param> /// <param name="matchType">Filter match type.</param> /// <param name="value">Filter match value.</param> /// <param name="precision">Filter match precision.</param> public DateFieldFilter(CanonicalLoanField canonicalLoanField, OrdinalFieldMatchType matchType, DateTime value, DateFieldMatchPrecision precision = DateFieldMatchPrecision.Day) : this(canonicalLoanField.Validate(nameof(canonicalLoanField)).GetCanonicalName(), matchType, value, precision) { }
/// <summary> /// String field filter. /// </summary> /// <param name="canonicalLoanField">Canonical loan field.</param> /// <param name="matchType">Filter match type.</param> /// <param name="value">Filter match value.</param> /// <param name="include">Indicates whether to include the matched items in the results.</param> public StringFieldFilter(CanonicalLoanField canonicalLoanField, StringFieldMatchType matchType, string value, bool include = true) : this(canonicalLoanField.Validate(nameof(canonicalLoanField)).GetCanonicalName(), matchType, value, include) { }
public FieldSort(CanonicalLoanField canonicalField, SortOrder order) : this(canonicalField.Validate(nameof(canonicalField)).GetCanonicalName(), order) { }
/// <summary> /// Not empty field filter constructor. /// </summary> /// <param name="canonicalLoanField">Canonical loan field.</param> public NotEmptyFieldFilter(CanonicalLoanField canonicalLoanField) : this(canonicalLoanField.Validate(nameof(canonicalLoanField)).GetCanonicalName()) { }
public NumericFieldFilter(CanonicalLoanField canonicalField, OrdinalFieldMatchType matchType, decimal value) : this(canonicalField.Validate(nameof(canonicalField)).GetCanonicalName(), matchType, value) { }
/// <summary> /// Returns if the field is a string field. /// </summary> /// <param name="value">The canonical loan field.</param> /// <returns></returns> public static bool IsStringValued(this CanonicalLoanField value) => (int)value >= 200;
/// <summary> /// Returns if the field is a numeric field. /// </summary> /// <param name="value">The canonical loan field.</param> /// <returns></returns> public static bool IsNumeric(this CanonicalLoanField value) => (int)value >= 100 && (int)value < 200;
/// <summary> /// Returns if the field is a date field. /// </summary> /// <param name="value">The canonical loan field.</param> /// <returns></returns> public static bool IsDateValued(this CanonicalLoanField value) => value >= 0 && (int)value < 100;
/// <summary> /// Gets the canonical name of the field. /// </summary> /// <param name="value">The canonical loan field.</param> /// <returns></returns> public static string GetCanonicalName(this CanonicalLoanField value) => $"Loan.{value.GetValue()}";