xsdk-scaffold-rails 0.1.8 → 0.1.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 108cdf26bc4f923371e65b2a9b9f2a5329e6873cca09ae947060b6937d57bbef
4
- data.tar.gz: b2af28bc2f01ff06ba271482a0e62a83ee8f9ff904f2e07e3fa8a792223430c3
3
+ metadata.gz: 9febb86209ef377bac9ac2913c5f9dc7040ffb86217de6bca2144fd8d31cd9c4
4
+ data.tar.gz: d91f1206b72fb81317896a9b96ab5045f783d99ec5796024c86a9a1ab3a98699
5
5
  SHA512:
6
- metadata.gz: 147f2ddd341e232b7bc2892aec51abec222ffaded11d6557385e202c1983e9d8318236edfde503bae09b620b73d0f43b43d15125d1beba954f1e28a525c80556
7
- data.tar.gz: 816c60a6133969e2120ff2c417dee9acd1aeba8060d86a952b3c4b3fc72e6551bc7af1b98bf21616d309765f1c9909f9c200e5c7b8538d943cc86f467eae6e18
6
+ metadata.gz: dbbba730369a3f1c38e3cb8e82541f60b6e32d897ef02b5022c2446c4fa02da773495413bc1b180835037c926ed628ee8623afb854bda59b49d92fcf07e99290
7
+ data.tar.gz: 0cd783af14aeab46f95ae0bdc2675c8a4211ac0735107accd403c92dd1735daa2927fecfe9d9e9699df3ab968d87ce27bb0fab06fff13b2c6772fa64b29c31e6
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- xsdk-scaffold-rails (0.1.7)
4
+ xsdk-scaffold-rails (0.1.11)
5
5
  activerecord (>= 6.0.0)
6
6
  pg (>= 1.1)
7
7
 
@@ -42,7 +42,7 @@ GEM
42
42
  parallel (1.20.1)
43
43
  parser (3.0.1.1)
44
44
  ast (~> 2.4.1)
45
- pg (1.2.3)
45
+ pg (1.3.5)
46
46
  racc (1.5.2)
47
47
  rack (2.2.3)
48
48
  rainbow (3.0.0)
@@ -127,4 +127,4 @@ DEPENDENCIES
127
127
  xsdk-scaffold-rails!
128
128
 
129
129
  BUNDLED WITH
130
- 2.2.17
130
+ 2.3.10
@@ -28,10 +28,16 @@ module Xsdk
28
28
  sort = @options[:sortBy]
29
29
  direction = @options[:sortDesc]
30
30
  order_string = sort.map.with_index { |k, idx| "#{sorting_map[k.to_sym]} #{direction[idx] ? 'DESC' : 'ASC'}" }
31
- data.limit(per_page)
32
- .offset(page * per_page)
33
- .order(order_string)
34
- .as_json(methods: methods + enum_methods, except: keys_to_exclude, include: has_many_include)
31
+
32
+ if per_page > 0
33
+ data = data.limit(per_page).offset(page * per_page)
34
+ end
35
+
36
+ data.order(order_string).as_json(
37
+ methods: methods + enum_methods,
38
+ except: keys_to_exclude,
39
+ include: has_many_include
40
+ )
35
41
  end
36
42
 
37
43
  def keys_to_exclude
@@ -89,7 +95,7 @@ module Xsdk
89
95
 
90
96
  # Build columns
91
97
  def build_headers
92
- headers = columns.map do |c|
98
+ headers = columns_orderd.map do |c|
93
99
  {
94
100
  value: c, # warehouse_id
95
101
  table_value: get_table_value(c), # "mag1"
@@ -167,6 +173,14 @@ module Xsdk
167
173
  @options[:transient_columns] || {}
168
174
  end
169
175
 
176
+ def column_name_ordered_list
177
+ []
178
+ end
179
+
180
+ def columns_orderd
181
+ column_name_ordered_list + (columns - column_name_ordered_list)
182
+ end
183
+
170
184
  def columns
171
185
  @clazz.column_names - %w[created_at updated_at] + transient_columns.keys
172
186
  end
@@ -266,7 +280,7 @@ module Xsdk
266
280
  def sorting_map
267
281
  build_headers.map do |h|
268
282
  if h[:type] == 'foreign_key'
269
- [h[:value].to_sym, "#{h[:table]}.#{h[:source]}"]
283
+ [h[:table_value].to_sym, "#{h[:table]}.#{h[:source]}"]
270
284
  elsif h[:type] == 'enum'
271
285
  ["#{h[:value]}_text".to_sym, "#{h[:table]}.#{h[:table_value]}"]
272
286
  elsif h[:type].nil? || h[:value] == 'actions'
@@ -1,7 +1,7 @@
1
1
  module Xsdk
2
2
  module Scaffold
3
3
  module Rails
4
- VERSION = "0.1.8"
4
+ VERSION = "0.1.11"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xsdk-scaffold-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Davide Croci
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-08-20 00:00:00.000000000 Z
11
+ date: 2022-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord