query_filter 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +17 -0
- data/lib/query_filter/utils/date_period.rb +23 -6
- data/lib/query_filter/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b6afc4d8301e89187a25929659d0bf700393759
|
4
|
+
data.tar.gz: f02b574cca6bb204af006029925294da51b8ea0b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 907332261dafbb301d9d59ab4cf50673dcb8b4fe08ce120b4a0e42f7fa5a4d12feca5dfb95bf40adc9682e3ef81f5a83d8d5dea817b540a2bc5a33669f9406cd
|
7
|
+
data.tar.gz: 4fd382934f56ffcc95722d9ac05c4e02a20575f29402e197b4c1518a6b7f697c9aa3caf8dc7402a8d4096f7ce5da9ca466deef646c86934a39e1aeae972e8511
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -94,6 +94,23 @@ This gem support next types of filter params:
|
|
94
94
|
orders.created_at BETWEEN '2017-06-24 04:00:00.000000' AND '2017-07-01 03:59:59.999999'
|
95
95
|
```
|
96
96
|
|
97
|
+
When we have date with custom time:
|
98
|
+
```ruby
|
99
|
+
date_range :range, format: '%m/%d/%Y %H:%M'
|
100
|
+
|
101
|
+
def date_range_range(period)
|
102
|
+
query.where(created_at: period.range)
|
103
|
+
end
|
104
|
+
```
|
105
|
+
|
106
|
+
`period.range` will ignore time and always return time start_of_day and end_of_day, but the method `period.range_original` will return dates without time modification
|
107
|
+
|
108
|
+
```ruby
|
109
|
+
def date_range_range(period)
|
110
|
+
query.where(created_at: period.range_original)
|
111
|
+
end
|
112
|
+
```
|
113
|
+
|
97
114
|
* order by
|
98
115
|
```ruby
|
99
116
|
order_by :sort_column, via: :sort_mode
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module QueryFilter
|
4
4
|
module Utils
|
5
5
|
class DatePeriod
|
6
|
-
attr_reader :
|
6
|
+
attr_reader :date_from_raw, :date_to_raw, :format
|
7
7
|
|
8
8
|
TIME_FORMAT = '%Y-%m-%d %H:%M:%S'
|
9
9
|
|
@@ -11,25 +11,42 @@ module QueryFilter
|
|
11
11
|
@format = (format.blank? ? QueryFilter.date_period_format : format)
|
12
12
|
@date_from_raw = date_from
|
13
13
|
@date_to_raw = date_to
|
14
|
-
|
15
|
-
@date_from = normalize_date(date_from).beginning_of_day
|
16
|
-
@date_to = normalize_date(date_to).end_of_day
|
17
14
|
end
|
18
15
|
|
19
16
|
def range
|
20
17
|
@range ||= date_from..date_to
|
21
18
|
end
|
22
19
|
|
20
|
+
def range_original
|
21
|
+
@range_original ||= date_from_original..date_to_original
|
22
|
+
end
|
23
|
+
|
24
|
+
def date_from
|
25
|
+
@date_from ||= date_from_original.beginning_of_day
|
26
|
+
end
|
27
|
+
|
28
|
+
def date_to
|
29
|
+
@date_to ||= date_to_original.end_of_day
|
30
|
+
end
|
31
|
+
|
32
|
+
def date_from_original
|
33
|
+
@date_from_original ||= normalize_date(@date_from_raw)
|
34
|
+
end
|
35
|
+
|
36
|
+
def date_to_original
|
37
|
+
@date_to_original ||= normalize_date(@date_to_raw)
|
38
|
+
end
|
39
|
+
|
23
40
|
def title
|
24
41
|
@title ||= to_human
|
25
42
|
end
|
26
43
|
|
27
44
|
def datefrom
|
28
|
-
@datefrom ||= I18n.l(
|
45
|
+
@datefrom ||= I18n.l(date_from, format: @format)
|
29
46
|
end
|
30
47
|
|
31
48
|
def dateto
|
32
|
-
@dateto ||= I18n.l(
|
49
|
+
@dateto ||= I18n.l(date_to, format: @format)
|
33
50
|
end
|
34
51
|
|
35
52
|
def to_param
|
data/lib/query_filter/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: query_filter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Igor Galeta
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-01-
|
12
|
+
date: 2018-01-10 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|