class Bizflow::BusinessModel::Task

Public Instance Methods

assign(user_id, &block) click to toggle source
# File lib/bizflow/business_model/task.rb, line 11
def assign(user_id, &block)
  setup_callbacks(&block)

  if(finished_at != nil)
    callback(:already_finished, data: self, message: "Task has already been finished.")
    return
  end

  update(assignee_id: user_id)

  callback(:success, data: self, message: "Task assigned successfully.")
end
finish(user_id, &block) click to toggle source
# File lib/bizflow/business_model/task.rb, line 24
def finish(user_id, &block)
  setup_callbacks(&block)

  if(finished_at != nil)
    callback(:already_finished, data: self, message: "Task has already been finished.")
    return
  end

  update(finished_at: Time.now)
  Bizflow::BusinessModel::TaskAction.wrap(action).task_finished

  callback(:success, data: self, message: "Task has been finished successfully.")
end