modify my task
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: My Tasks page uses Shot Task style header
|
||||
The My Tasks page SHALL use a header layout consistent with the Shot Task page, including title, filter bar, and action buttons.
|
||||
|
||||
#### Scenario: My Tasks header matches Shot Task style
|
||||
- **WHEN** the My Tasks page is rendered
|
||||
- **THEN** the header SHALL contain a title section, filter controls, and action buttons arranged similarly to the Shot Task page
|
||||
|
||||
#### Scenario: Header includes project filter
|
||||
- **WHEN** the My Tasks header is displayed
|
||||
- **THEN** there SHALL be a project dropdown filter to select which project's tasks to view (or all projects)
|
||||
|
||||
### Requirement: My Tasks data table columns match Shot Task configuration
|
||||
The My Tasks page SHALL display task data in columns that align with the Shot Task page table structure, with the addition of a Project column.
|
||||
|
||||
#### Scenario: Table columns follow Shot Task pattern
|
||||
- **WHEN** the My Tasks data table is rendered
|
||||
- **THEN** it SHALL display columns similar to Shot Task (e.g., Name, Status, Priority, Due Date, Assignee) plus a Project column
|
||||
|
||||
#### Scenario: Column ordering is consistent with Shot Task
|
||||
- **WHEN** the columns are displayed
|
||||
- **THEN** they SHALL be ordered to match Shot Task conventions with Project column prominently placed
|
||||
|
||||
### Requirement: My Tasks visual styling matches Shot Task page
|
||||
The My Tasks page SHALL use visual styling (colors, spacing, typography) consistent with the Shot Task page.
|
||||
|
||||
#### Scenario: Visual consistency with Shot Task
|
||||
- **WHEN** the My Tasks page is rendered
|
||||
- **THEN** it SHALL use the same color scheme, spacing, and typography as the Shot Task page
|
||||
|
||||
#### Scenario: Component styling matches Shot Task
|
||||
- **WHEN** UI components (buttons, inputs, dropdowns) are rendered
|
||||
- **THEN** they SHALL use the same styling as corresponding Shot Task components
|
||||
@@ -0,0 +1,55 @@
|
||||
## MODIFIED Requirements
|
||||
|
||||
### Requirement: My Tasks View uses Shot Task page layout instead of project task page layout
|
||||
The system SHALL use the Shot Task page layout and styling for the My Tasks page to ensure visual consistency across the application.
|
||||
|
||||
#### Scenario: My Tasks uses Shot Task layout style
|
||||
- **WHEN** the My Tasks page is rendered
|
||||
- **THEN** it SHALL use the same layout structure as the Shot Task page (header with filters, data table, pagination)
|
||||
|
||||
#### Scenario: My Tasks uses Shot Task visual styling
|
||||
- **WHEN** the My Tasks page components are rendered
|
||||
- **THEN** they SHALL use the same visual styling (colors, spacing, typography) as the Shot Task page
|
||||
|
||||
### Requirement: My Tasks View displays all tasks assigned to the current user across projects
|
||||
The system SHALL provide a My Tasks page that displays a unified list of all tasks assigned to the currently logged-in user, aggregated from all projects where the user has access.
|
||||
|
||||
#### Scenario: User accesses My Tasks page
|
||||
- **WHEN** the user navigates to the My Tasks page (e.g., /my-tasks)
|
||||
- **THEN** the system SHALL display a list of all tasks assigned to the user across all accessible projects
|
||||
|
||||
#### Scenario: My Tasks page shows task details
|
||||
- **WHEN** the My Tasks list is displayed
|
||||
- **THEN** each task item SHALL display at minimum: task name, project name, status, due date, and assignee
|
||||
|
||||
#### Scenario: User can filter tasks by project
|
||||
- **WHEN** the user selects a specific project from the project filter dropdown
|
||||
- **THEN** the list SHALL display only tasks from the selected project
|
||||
|
||||
#### Scenario: User can filter tasks by status
|
||||
- **WHEN** the user selects a specific status from the status filter dropdown
|
||||
- **THEN** the list SHALL display only tasks with the selected status
|
||||
|
||||
#### Scenario: User can sort tasks
|
||||
- **WHEN** the user clicks a column header to sort
|
||||
- **THEN** the list SHALL be sorted by that column in ascending/descending order
|
||||
|
||||
#### Scenario: User clicks on a task
|
||||
- **WHEN** the user clicks on a task row in the My Tasks list
|
||||
- **THEN** the system SHALL navigate to the task detail page in its project (e.g., /projects/{project_id}/tasks/{task_id})
|
||||
|
||||
#### Scenario: User sees only accessible tasks
|
||||
- **WHEN** the My Tasks list is loaded
|
||||
- **THEN** tasks from projects where the user lacks access SHALL NOT be displayed
|
||||
|
||||
#### Scenario: API returns user's tasks
|
||||
- **WHEN** a authenticated user requests GET /api/tasks/my-tasks
|
||||
- **THEN** the system SHALL return a list of tasks assigned to that user
|
||||
|
||||
#### Scenario: API supports project filter
|
||||
- **WHEN** the user requests GET /api/tasks/my-tasks?project_id={id}
|
||||
- **THEN** the system SHALL return only tasks from the specified project
|
||||
|
||||
#### Scenario: API supports status filter
|
||||
- **WHEN** the user requests GET /api/tasks/my-tasks?status={status}
|
||||
- **THEN** the system SHALL return only tasks with the selected status
|
||||
Reference in New Issue
Block a user