aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/referential.rb
diff options
context:
space:
mode:
authorXinhui2017-04-18 11:58:14 +0200
committerXinhui2017-04-18 11:58:19 +0200
commit6b09b7c2ae7917aa177b6698811da189db8ae25c (patch)
tree2a31451e659c74009827edfd44ae81e3fcfe2549 /app/models/referential.rb
parent703068f7f6c42119ec83339d80eecb1a08d3b2a8 (diff)
downloadchouette-core-6b09b7c2ae7917aa177b6698811da189db8ae25c.tar.bz2
Workbenches#show order referentials by validity periode
Refs #3010
Diffstat (limited to 'app/models/referential.rb')
-rw-r--r--app/models/referential.rb2
1 files changed, 2 insertions, 0 deletions
diff --git a/app/models/referential.rb b/app/models/referential.rb
index 2c64a9a5c..50db32637 100644
--- a/app/models/referential.rb
+++ b/app/models/referential.rb
@@ -45,6 +45,8 @@ class Referential < ActiveRecord::Base
scope :ready, -> { where(ready: true) }
scope :in_periode, ->(periode) { where(id: referential_ids_in_periode(periode)) }
scope :include_metadatas_lines, ->(line_ids) { where('referential_metadata.line_ids && ARRAY[?]::bigint[]', line_ids) }
+ scope :order_by_validity_period, ->(dir) { joins(:metadatas).order("unnest(periodes) #{dir}") }
+ scope :order_by_lines, ->(dir) { joins(:metadatas).group("referentials.id").order("sum(array_length(referential_metadata.line_ids,1)) #{dir}") }
def lines
if metadatas.blank?