class Bizflow::BusinessModel::Process

Public Class Methods

create_process(blueprint_id, creator_id) click to toggle source
# File lib/bizflow/business_model/process.rb, line 33
def self.create_process(blueprint_id, creator_id)
  Bizflow::Lib::ProcessBuilder.new.build(blueprint_id, creator_id)
end

Public Instance Methods

finish() click to toggle source
# File lib/bizflow/business_model/process.rb, line 29
def finish
  update(finished_at: Time.now)
end
start(runner_id, &block) click to toggle source
# File lib/bizflow/business_model/process.rb, line 13
def start(runner_id, &block)

  setup_callbacks(&block)
  
  if runned_at != nil
    callback(:already_started, data: self, message: "process has already been started") and return 
  end
  
  ph = Bizflow::BusinessModel::Head.wrap(head)
  ph.jump(start_action_id)
  update(runner_id: runner_id, runned_at: Time.now)
  
  callback(:success, data: self, message: "process started successfully")

end

Private Instance Methods

start_action() click to toggle source
# File lib/bizflow/business_model/process.rb, line 39
def start_action
  Bizflow::DataModel::Action[start_action_id]
end