code-corps-api
code-corps-api copied to clipboard
Implement basic task matcher module
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
I'll grab this if no one else wants it. I should be able to get it done tomorrow.
@ignu, feel free to mark in progress and assign yourself