4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'app/services/forest_liana/operator_value_parser.rb', line 4
def self.parse(value)
operator = nil
if value.first == '!'
operator = '!='
value.slice!(0)
elsif value.first == '>'
operator = '>'
value.slice!(0)
elsif value.first == '<'
operator = '<'
value.slice!(0)
elsif value.include?('*')
operator = 'ILIKE'
value.gsub!('*', '%')
elsif value === '$present'
operator = 'IS NOT NULL'
value = nil
elsif value === '$blank'
operator = 'IS NULL'
value = nil
else
operator = '='
end
[operator, value]
end
|