Not sure if there is a better way - but for now instead of using a SQL Command on your OLEDB source you need to use a variable. The variable will then be created as something like:
"SELECT ... FROM ... WHERE department_ID in (" + @[User::vdept] + ") AND ..."
This will build the query string to be executed against the source system with the appropriate IN clause.
Another option - maybe better - would be to create a permanent table in tempdb using an execute SQL task...in your task you check for the table, if it exists truncate it - if it doesn't exist - create it.
Then you have a data flow that pulls the list of valid departments and populates this temp table. You then create your normal data flow and in that one you use a query that joins to your temp table to filter the list of departments.
At the end of your process you then drop the temp table.