improvement: task assignment flow added. cases and tasks feature updated accordingly.

This commit is contained in:
2026-07-13 15:47:32 +03:30
parent 0d073f1ec0
commit a391eee15f
21 changed files with 357 additions and 35 deletions

View File

@@ -1,6 +1,16 @@
import type { CSSProperties } from 'react';
import type { BadgeVariant } from '@/components/ui/shared/Badge';
import type { LabTaskStatus } from '@/types/cases';
import type { LabTaskListItem, LabTaskStatus } from '@/types/cases';
export function canEditLabTaskStatus(
task: Pick<LabTaskListItem, 'assignee'>,
currentUserId: string | undefined,
canEditTasks: boolean,
): boolean {
if (!canEditTasks || !currentUserId) return false;
if (!task.assignee) return true;
return task.assignee.id === currentUserId;
}
export function labTaskStatusVariant(status: LabTaskStatus): BadgeVariant {
return status === 'COMPLETED' ? 'success' : 'warning';

View File

@@ -8,6 +8,7 @@ export type TasksViewState = {
sortBy: TaskSortField;
sortDir: 'asc' | 'desc';
importantOnly: boolean;
assignedToMe: boolean;
page: number;
highlightTaskId: string | null;
};
@@ -20,6 +21,7 @@ export const DEFAULT_TASKS_VIEW: TasksViewState = {
sortBy: 'date',
sortDir: 'desc',
importantOnly: false,
assignedToMe: false,
page: 1,
highlightTaskId: null,
};
@@ -35,6 +37,7 @@ export function isDefaultTasksView(state: TasksViewState): boolean {
state.sortBy === DEFAULT_TASKS_VIEW.sortBy &&
state.sortDir === DEFAULT_TASKS_VIEW.sortDir &&
state.importantOnly === DEFAULT_TASKS_VIEW.importantOnly &&
state.assignedToMe === DEFAULT_TASKS_VIEW.assignedToMe &&
state.page === DEFAULT_TASKS_VIEW.page &&
state.highlightTaskId === DEFAULT_TASKS_VIEW.highlightTaskId
);