Module: Statesman::Adapters::SequelQueries::DatasetMethods

Defined in:
lib/statesman/adapters/sequel_queries.rb

Instance Method Summary collapse

Instance Method Details

#in_state(*states) ⇒ Object



29
30
31
32
# File 'lib/statesman/adapters/sequel_queries.rb', line 29

def in_state(*states)
  association_left_join(model.most_recent_transition_association_name).
  where(SequelQueries.states_where(model, states.map!(&:to_s)), states)
end

#not_in_state(*states) ⇒ Object



34
35
36
37
# File 'lib/statesman/adapters/sequel_queries.rb', line 34

def not_in_state(*states)
  association_left_join(model.most_recent_transition_association_name).
  exclude(SequelQueries.states_where(model, states.map!(&:to_s)), states)
end

#order_by_activityObject



39
40
41
42
43
# File 'lib/statesman/adapters/sequel_queries.rb', line 39

def order_by_activity
  most_recent_transition = model.most_recent_transition_association_name
  association_left_join(model.most_recent_transition_association_name).
    order(::Sequel.desc("#{most_recent_transition}__updated_at".to_sym))
end