Class: RailsExecution::Services::Approvement

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_execution/services/approvement.rb

Instance Method Summary collapse

Constructor Details

#initialize(task, reviewer: nil) ⇒ Approvement

Returns a new instance of Approvement.



5
6
7
8
# File 'lib/rails_execution/services/approvement.rb', line 5

def initialize(task, reviewer: nil)
  @task = task || (raise 'task is blank')
  @reviewer = reviewer || (raise 'reviewer is blank')
end

Instance Method Details

#approveObject



10
11
12
13
14
# File 'lib/rails_execution/services/approvement.rb', line 10

def approve
  task.update(status: :approved)
  review.update(status: :approved)
  add_activity('approved')
end

#rejectObject



16
17
18
19
20
# File 'lib/rails_execution/services/approvement.rb', line 16

def reject
  review.update(status: :rejected)
  task.update(status: :rejected) if make_task_to_rejected?
  add_activity('rejected')
end