This commit is contained in:
Daniel 2023-08-02 12:27:48 +08:00
parent b7cfbf7791
commit 6d59de2577
No known key found for this signature in database
GPG key ID: 86211BA83DF03017

View file

@ -123,6 +123,9 @@ func (value *Value) Compare(other *Value) int {
}
return strings.Compare(v1, v2)
}
if nil != value.URL && nil != other.URL {
return strings.Compare(value.URL.Content, other.URL.Content)
}
return 0
}
@ -238,6 +241,28 @@ func (value *Value) CompareOperator(other *Value, operator FilterOperator) bool
return 0 != len(value.MSelect) && !(1 == len(value.MSelect) && "" == value.MSelect[0].Content)
}
}
if nil != value.URL && nil != other.URL {
switch operator {
case FilterOperatorIsEqual:
return value.URL.Content == other.URL.Content
case FilterOperatorIsNotEqual:
return value.URL.Content != other.URL.Content
case FilterOperatorContains:
return strings.Contains(value.URL.Content, other.URL.Content)
case FilterOperatorDoesNotContain:
return !strings.Contains(value.URL.Content, other.URL.Content)
case FilterOperatorStartsWith:
return strings.HasPrefix(value.URL.Content, other.URL.Content)
case FilterOperatorEndsWith:
return strings.HasSuffix(value.URL.Content, other.URL.Content)
case FilterOperatorIsEmpty:
return "" == strings.TrimSpace(value.URL.Content)
case FilterOperatorIsNotEmpty:
return "" != strings.TrimSpace(value.URL.Content)
}
}
return true
}