public virtual bool CustomerHasPropertyValues(CustomerSegmentConditionPropertyValues conditionPropertyValues)
        {
            var result = false;

            if (conditionPropertyValues != null)
            {
                result = CustomerHasDynamicPropertyValues(conditionPropertyValues.Properties) &&
                         CustomerHasModelPropertyValues(conditionPropertyValues);
            }

            return(result);
        }
        // PT-1282 Add reflector for CustomerModelProperty in compare method
        protected virtual bool CustomerHasModelPropertyValues(CustomerSegmentConditionPropertyValues propertyValues)
        {
            var result =
                Compare(propertyValues.BirthDate, Customer.BirthDate) &&
                Compare(propertyValues.DefaultLanguage, Customer.DefaultLanguage) &&
                Compare(propertyValues.FirstName, Customer.FirstName) &&
                Compare(propertyValues.LastName, Customer.LastName) &&
                Compare(propertyValues.MiddleName, Customer.MiddleName) &&
                Compare(propertyValues.FullName, Customer.FullName) &&
                Compare(propertyValues.Salutation, Customer.Salutation) &&
                Compare(propertyValues.TimeZone, Customer.TimeZone) &&
                Compare(propertyValues.TaxPayerId, Customer.TaxPayerId) &&
                Compare(propertyValues.PreferredDelivery, Customer.PreferredDelivery) &&
                Compare(propertyValues.PreferredCommunication, Customer.PreferredCommunication) &&
                Compare(propertyValues.AssociatedOrganizations, Customer.AssociatedOrganizations) &&
                Compare(propertyValues.Organizations, Customer.Organizations);

            return(result);
        }