Class: Dorsale::Flyboy::Folder
- Inherits:
-
ActiveRecord::Base
- Object
- ActiveRecord::Base
- Dorsale::Flyboy::Folder
- Includes:
- AASM, Search
- Defined in:
- app/models/dorsale/flyboy/folder.rb
Instance Method Summary collapse
- #create_tracking ⇒ Object
-
#initialize(*args) ⇒ Folder
constructor
A new instance of Folder.
- #no_undone_tasks? ⇒ Boolean
- #revision ⇒ Object
- #update_progress ⇒ Object
- #update_progress! ⇒ Object
- #update_version ⇒ Object
Methods included from Search
Constructor Details
#initialize(*args) ⇒ Folder
Returns a new instance of Folder.
33 34 35 36 |
# File 'app/models/dorsale/flyboy/folder.rb', line 33 def initialize(*args) super self.progress = 0 if progress.nil? end |
Instance Method Details
#create_tracking ⇒ Object
48 49 50 51 |
# File 'app/models/dorsale/flyboy/folder.rb', line 48 def create_tracking dailycounter = self.class.where("DATE(created_at) = ?", Time.zone.now.to_date).count + 1 self.tracking = "#{Time.zone.now.strftime("%y%m%d")}-#{dailycounter}" end |
#no_undone_tasks? ⇒ Boolean
38 39 40 |
# File 'app/models/dorsale/flyboy/folder.rb', line 38 def no_undone_tasks? tasks.where(done: false).count == 0 end |
#revision ⇒ Object
42 43 44 |
# File 'app/models/dorsale/flyboy/folder.rb', line 42 def revision "#{tracking} #{version}" end |
#update_progress ⇒ Object
60 61 62 63 64 65 66 |
# File 'app/models/dorsale/flyboy/folder.rb', line 60 def update_progress if tasks.count.zero? self.progress = 0 else self.progress = tasks.sum(:progress) / tasks.count end end |
#update_progress! ⇒ Object
68 69 70 71 |
# File 'app/models/dorsale/flyboy/folder.rb', line 68 def update_progress! update_progress save end |
#update_version ⇒ Object
55 56 57 58 |
# File 'app/models/dorsale/flyboy/folder.rb', line 55 def update_version self.version = 0 if self.version.nil? self.version = self.version + 1 end |