func (manager Manager) AcceptTask(teammate *model.Teammate, task *model.Task) bool { if !task.Assign(teammate.Uid()) { return false } if teammate.AcceptTask(task.Uid()) { manager.busManager.PublishEvent(event.AcceptTask, teammate.Identity, []interface{}{teammate.Uid(), task.Uid()}) return true } task.Requeue() return false }