Ejemplo n.º 1
0
        /// <summary>
        /// Checks the value matches value condition.
        /// </summary>
        /// <param name="firstValue">
        /// The first value.
        /// </param>
        /// <param name="secondValue">
        /// The second value.
        /// </param>
        /// <param name="conditionOperator">
        /// The condition operator.
        /// </param>
        /// <returns>
        /// The <see cref="bool"/>.
        /// </returns>
        public bool CheckValueMatchesValueCondition(
            string firstValue,
            string secondValue,
            UPConditionOperator conditionOperator)
        {
            var result = this.CompareValueWithValue(firstValue, secondValue);

            switch (conditionOperator)
            {
            case UPConditionOperator.Equal:
                return(result == 0);

            case UPConditionOperator.NotEqual:
                return(result != 0);

            case UPConditionOperator.GreaterEqual:
                return(result != -1);

            case UPConditionOperator.Greater:
                return(result == 1);

            case UPConditionOperator.Less:
                return(result == -1);

            case UPConditionOperator.LessEqual:
                return(result != 1);

            default:
                return(false);
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="UPCRMResultFieldCondition"/> class.
 /// </summary>
 /// <param name="field">
 /// The field.
 /// </param>
 /// <param name="condition">
 /// The condition.
 /// </param>
 /// <param name="fieldValue">
 /// The field value.
 /// </param>
 /// <param name="resultPosition">
 /// The result position.
 /// </param>
 public UPCRMResultFieldCondition(
     UPCRMField field,
     UPConditionOperator condition,
     string fieldValue,
     int resultPosition)
 {
     this.Field          = field;
     this.ResultPosition = resultPosition;
     this.FieldValue     = fieldValue;
     this.Condition      = condition;
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Results for value.
        /// </summary>
        /// <param name="value">
        /// The value.
        /// </param>
        /// <param name="compare">
        /// The compare.
        /// </param>
        /// <param name="_fieldValue">
        /// The _field value.
        /// </param>
        /// <param name="_toFieldValue">
        /// The _to field value.
        /// </param>
        /// <param name="numericEmptyCheck">
        /// if set to <c>true</c> [numeric empty check].
        /// </param>
        /// <param name="boolEmptyCheck">
        /// if set to <c>true</c> [bool empty check].
        /// </param>
        /// <param name="emptyFieldValue">
        /// if set to <c>true</c> [empty field value].
        /// </param>
        /// <returns>
        /// The <see cref="bool"/>.
        /// </returns>
        public static bool ResultForValue(
            string value,
            UPConditionOperator compare,
            string _fieldValue,
            string _toFieldValue,
            bool numericEmptyCheck,
            bool boolEmptyCheck,
            bool emptyFieldValue)
        {
            var result = 0;

            if (emptyFieldValue)
            {
                if (string.IsNullOrEmpty(value))
                {
                    result = 0;
                }
                else if (numericEmptyCheck)
                {
                    var intValue = int.Parse(value);
                    if (intValue == 0)
                    {
                        result = 0;
                    }
                    else if (intValue > 0)
                    {
                        result = 1;
                    }
                    else
                    {
                        result = -1;
                    }
                }
                else if (boolEmptyCheck && value == "false")
                {
                    result = 0;
                }
                else
                {
                    result = 1;
                }
            }
            else if (compare == UPConditionOperator.Like)
            {
                return(LikeResultForValuePattern(value, _fieldValue));
            }
            else
            {
                result = value.CompareTo(_fieldValue);
            }

            switch (compare)
            {
            case UPConditionOperator.Equal:
                return(result == 0);

            case UPConditionOperator.NotEqual:
                return(result != 0);

            case UPConditionOperator.GreaterEqual:
                return(result != -1);

            case UPConditionOperator.Greater:
                return(result == 1);

            case UPConditionOperator.Less:
                return(result == -1);

            case UPConditionOperator.LessEqual:
                return(result != 1);

            default:
                return(false);
            }
        }