1
0
Fork 0
mirror of https://github.com/plankanban/planka.git synced 2025-07-18 20:59:44 +02:00

feat: Include task assignees in member filter logic (#1214)

This commit is contained in:
millenium-codebug 2025-06-16 23:16:57 +02:00 committed by GitHub
parent 774bdc2b64
commit c8cb1f4a20
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 17 additions and 1 deletions

View file

@ -280,7 +280,20 @@ export default class extends BaseModel {
if (filterUserIds.length > 0) {
cardModels = cardModels.filter((cardModel) => {
const users = cardModel.users.toRefArray();
return users.some((user) => filterUserIds.includes(user.id));
if (users.some((user) => filterUserIds.includes(user.id))) {
return true;
}
return cardModel
.getTaskListsQuerySet()
.toModelArray()
.some((taskListModel) =>
taskListModel
.getTasksQuerySet()
.toRefArray()
.some((task) => filterUserIds.includes(task.assigneeUserId)),
);
});
}

View file

@ -29,6 +29,8 @@ const getIdsByEndlessListId = async (
if (filterUserIds) {
query += ' JOIN card_membership ON card.id = card_membership.card_id';
query += ' JOIN task_list ON card.id = task_list.card_id';
query += ' JOIN task ON task_list.id = task.task_list_id';
}
if (filterLabelIds) {
@ -84,6 +86,7 @@ const getIdsByEndlessListId = async (
});
query += ` AND card_membership.user_id IN (${inValues.join(', ')})`;
query += ` AND task.assignee_user_id IN (${inValues.join(', ')})`;
}
if (filterLabelIds) {