code-corps-api icon indicating copy to clipboard operation
code-corps-api copied to clipboard

Implement basic task matcher module

Open begedin opened this issue 8 years ago • 2 comments

Problem

From #668 we need a very basic task matcher module.

We would require a module, for example, UserTaskMatcher with a &match_user/2

defmodule CodeCorps.UserTaskMatcher do
  @default_task_count
  def match_user(%CodeCorps.User{} = user, task_count // @default_task_count) do
    get_list_of_tasks_with_most_overlapping_skills(tasks_count) 
  end

  defp get_list_of_tasks_with_most_overlapping_skills(amount) do
    # implementation goes here. probably a simple query initially
    # join user skills and tasks skills, group and count by task, order by count
    # limit the number of results to amount
  end
end

Subtasks

  • write described module
  • write tests for it

References

  • taken from #668

begedin avatar Mar 08 '17 11:03 begedin

I'll grab this if no one else wants it. I should be able to get it done tomorrow.

ignu avatar Mar 08 '17 23:03 ignu

@ignu, feel free to mark in progress and assign yourself

begedin avatar Mar 09 '17 09:03 begedin