Content
View differences
Updated by Aleix Suau over 5 years ago
**This is a translation of** #32616 **, which is authoritative over the requirements formulated in here.**
#### Acceptance criteria
* Aggregate work packages present in the filter results within the group row of a project. (/projecst > click on 'Open as a Gantt View' (table grouped by projects))
* It cannot be guaranteed, due to the available space being restricted, that the labels associated with the aggregated work packages can be fully displayed. The labels of an individual work package will become visible on hover, same as for work packages not in an aggregated row.
* Aggregation will be available when grouping the work package list by project. When a project row is folded (by clicking on the '-' icon before the project name), the aggregation is displayed. Projects not being folded (by clicking on the '+' icon before the project name) will have no work packages displayed aggregated within the project row. The work packages will be displayed below the project row as before.
#### Acceptance criteria still to be discussed
* When grouping by project, the groups are folded by default.
* Only milestones (rhombus shaped) are displayed in aggregation.
#### Out of scope
* Only work packages returned by the filter results on the current page are aggregated. There is no mechanism to guarantee the presence of all work packages that belong to the project.
* Work packages in close proximity to each other are not summarized visually.
* Lines representing relations are not displayed to/from work packages displayed in aggregation.
NOTES:
* Only show on the header of a collapsed group
* Only show milestones
* Only display milestone dates when hovering
* Only display milestone title when hovering at the right side
* Collapsed project Milestones:
* Should be displayed in the first load
* Should reposition on zoom changes
* Jens/Wieland:
* When collapsing a group, the timeline container shrinks to its earlier and later child so, if any milestone is before or after them, it can’t be rendered. I changed WorkPackageTimelineTableController.workPackageIdOrder = orderedRows to show all wp instead only the visible orderedRows.filter(row => !row.hidden);
* Any better way of getting the changedGroupId (WorkPackageTimelineTableController:168)?
* Any better way to get the group type (ids?): const groupTypesToManage = \['project'\]; // const changedGroupId = changedGroupIdentifier!.split('-').pop();
* Question / Corner case: changing grouping criteria and coming back to the last grouping criteria where there was a collapsed group >> the group is collapsed but the icons are not shown properly.
* Currently when we change the grouping criteria,
* this.querySpace.collapsedGroups.changes$() is not triggered + its following emissions come with all the previous grouping changes (ie: {**project**\-demo-project-api-v3-projects-1: true, **status**\-new-api-v3-statuses-1: true}) this difficults to refresh the view when needed. Can we group by two criteria at the same time (ie: project and Status?), if not, the previous behaviour doesn't make sense and we should we remove the old data when changing the groupBy? refactor it.
* We should see that the groupBy changes by listening to:
* this.querySpace.groups.changes$() but groups and this.querySpace.groups.value comes undefined.
* this.querySpace.query.changes$() but changing the groupBy sometimes triggers query changes and sometimes don't.
* The timeline is refreshed multiple times. \* All this points to a broader issue that would require analyze/debug the entire timeline
TODO:
* [x] Add wp show in collapsed group headers (ie: Milestones) in the wp array to calculate the width of the grid
* [x] Limit this.querySpace.collapsedGroups.changes$() to projects
#### Acceptance criteria
* Aggregate work packages present in the filter results within the group row of a project. (/projecst > click on 'Open as a Gantt View' (table grouped by projects))
* It cannot be guaranteed, due to the available space being restricted, that the labels associated with the aggregated work packages can be fully displayed. The labels of an individual work package will become visible on hover, same as for work packages not in an aggregated row.
* Aggregation will be available when grouping the work package list by project. When a project row is folded (by clicking on the '-' icon before the project name), the aggregation is displayed. Projects not being folded (by clicking on the '+' icon before the project name) will have no work packages displayed aggregated within the project row. The work packages will be displayed below the project row as before.
#### Acceptance criteria still to be discussed
* When grouping by project, the groups are folded by default.
* Only milestones (rhombus shaped) are displayed in aggregation.
#### Out of scope
* Only work packages returned by the filter results on the current page are aggregated. There is no mechanism to guarantee the presence of all work packages that belong to the project.
* Work packages in close proximity to each other are not summarized visually.
* Lines representing relations are not displayed to/from work packages displayed in aggregation.
NOTES:
* Only show on the header of a collapsed group
* Only show milestones
* Only display milestone dates when hovering
* Only display milestone title when hovering at the right side
* Collapsed project Milestones:
* Should be displayed in the first load
* Should reposition on zoom changes
* Jens/Wieland:
* When collapsing a group, the timeline container shrinks to its earlier and later child so, if any milestone is before or after them, it can’t be rendered. I changed WorkPackageTimelineTableController.workPackageIdOrder = orderedRows to show all wp instead only the visible orderedRows.filter(row => !row.hidden);
* Any better way of getting the changedGroupId (WorkPackageTimelineTableController:168)?
* Any better way to get the group type (ids?): const groupTypesToManage = \['project'\]; // const changedGroupId = changedGroupIdentifier!.split('-').pop();
* Question / Corner case: changing grouping criteria and coming back to the last grouping criteria where there was a collapsed group >> the group is collapsed but the icons are not shown properly.
* Currently when we change the grouping criteria,
* this.querySpace.collapsedGroups.changes$() is not triggered + its following emissions come with all the previous grouping changes (ie: {**project**\-demo-project-api-v3-projects-1: true, **status**\-new-api-v3-statuses-1: true}) this difficults to refresh the view when needed. Can we group by two criteria at the same time (ie: project and Status?), if not,
* We should see that the groupBy changes by listening to:
* this.querySpace.groups.changes$() but groups and this.querySpace.groups.value comes undefined.
* this.querySpace.query.changes$() but changing the groupBy sometimes triggers query changes and sometimes don't.
* The timeline is refreshed multiple times. \* All this points to a broader issue that would require analyze/debug the entire timeline
TODO:
* [x] Add wp show in collapsed group headers (ie: Milestones) in the wp array to calculate the width of the grid
* [x] Limit this.querySpace.collapsedGroups.changes$() to projects