Class: Task
- Inherits:
-
Object
- Object
- Task
- Includes:
- ActiveModel::MassAssignmentSecurity, Model::MongoDb::Commentable, Model::MongoDb::Customizable, Mongoid::Document, Mongoid::Slug, Mongoid::Timestamps, StateMachines::Task
- Defined in:
- app/models/task.rb
Constant Summary collapse
- PARENT_TYPES =
track_history on: [:user_id, :name, :text, :state]
['story']
Instance Method Summary collapse
- #after_transition(transition) ⇒ Object
- #author ⇒ Object
- #author=(value) ⇒ Object
- #before_transition(transition) ⇒ Object
-
#offeror ⇒ Object
belongs_to (SQL).
- #offeror=(value) ⇒ Object
- #result_class ⇒ Object
- #user ⇒ Object
- #user=(value) ⇒ Object
- #with_result? ⇒ Boolean
Methods included from Model::MongoDb::Commentable
Instance Method Details
#after_transition(transition) ⇒ Object
89 90 91 92 93 94 95 96 97 98 |
# File 'app/models/task.rb', line 89 def after_transition(transition) case transition.event when :follow_up self.story.activate if self.story.completed? when :complete if self.story.tasks.complete.count == self.story.tasks.count self.story.complete end end end |
#author ⇒ Object
54 |
# File 'app/models/task.rb', line 54 def ; ? User.find() : nil; end |
#author=(value) ⇒ Object
55 |
# File 'app/models/task.rb', line 55 def (value); self. = value.id; end |
#before_transition(transition) ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'app/models/task.rb', line 69 def before_transition(transition) self.event = transition.event.to_s self.state_before = transition.from case transition.event when :assign self. = self.user_id when :cancel self.unassigned_user_ids ||= [] self.unassigned_user_ids << self.user_id self.user_id = nil self. = nil self.result.text = nil if self.result when :review self.user_id = self.offeror_id when :follow_up self.user_id = self. end end |
#offeror ⇒ Object
belongs_to (SQL)
48 |
# File 'app/models/task.rb', line 48 def offeror; offeror_id ? User.find(offeror_id) : nil; end |
#offeror=(value) ⇒ Object
49 |
# File 'app/models/task.rb', line 49 def offeror=(value); self.offeror_id = value.id; end |
#result_class ⇒ Object
57 58 59 60 61 62 63 |
# File 'app/models/task.rb', line 57 def result_class if product_id.present? "#{product.class.name}::Result".constantize rescue Result else Result end end |
#user ⇒ Object
51 |
# File 'app/models/task.rb', line 51 def user; user_id ? User.find(user_id) : nil; end |
#user=(value) ⇒ Object
52 |
# File 'app/models/task.rb', line 52 def user=(value); self.user_id = value.id; end |
#with_result? ⇒ Boolean
65 66 67 |
# File 'app/models/task.rb', line 65 def with_result? true end |