Content
View differences
Updated by Jens Ulferts about 1 year ago
## Phases as work package attribute
**As** a project member
**I want to** assign to and see the assignment of a work package to a phase
**so that** I can better understand the context the work package is in.
Assumes ###58159 is done.
**Acceptance criteria**
* Work pages receive a new attribute: The phase they belong to.
* The [open] What is the name of the attribute is "Project phase".
attribute? e.g. "Project phase"
* A work package can be assigned to a single phase. There is not multi assignment.
* The attribute can be administrated same as every other attribute (e.g. status, assignee, version).
* It can be moved in and out of an attribute group.
* \[open\] [open] Should this be an attribute that is seeded? If so, which group should it be seeded into?
* Existing [open] Should existing installations are not migrated to have get the attribute activated for their existing types.
types? Assumption - no.
* The attribute's value is displayed including the colored type indicator prefix in both the split/full view as well as the table.
* \[Technical detail\] [Technical detail] It is probably not possible to display the existence/non existence of a gate for the stage.
* The attribute can be changed via an ng-select.
* \[Technical detail\] [Technical detail] Getting the data for displaying the existence/non existence of a gate should be possible here, but it will require coding a variation of the autocompleter.
* The attribute can be added as a column to the work package list.
* The table can be ordered and grouped by that column. The order is not by name of the phase but by the order the phase are in.
* The attribute can be filtered by. There is used as a single filter called the same as the work package attribute available in both the global work package list as well as in the project work package lists.
filter.
* \[open\] [open] What are the operators available? Assumption: 'is (or)', 'is not', 'is empty' and 'is not empty'.
* The [open] What are the values available are:
* in a work package list inside a project: available? The project phases phase active in that the current project
* or those in the global work package list: All current project phases.
* \[open\] should this be limited and its descendants? The current behaviour with all of the other fields is to only return phases active in any project shows those of the user is member in (or public project)
* The current project. If the filter is not available used in the project if there are no active project phases. In the global list,
all phases should be shown.
* [open] Which kind of filters exist for phases and phase gates?
* The attribute is journalized.
* In case the work package is added to a phase: "Added to project phase \[x\]"
* In cast the work package is removed from a phase: "Removed from project phase \[x\]"
* \[open\] [open] Which messages are printed in the activity?
* In case the associated phase is later disabled in the project administration, the value is no longer displayed, changes are not shown in the journal and the work package are not found via filters (see ###58163).
* The API v3 has a dedicated resource for phases
* GET endpoint for referencing a selected phase
* GET endpoint for selecting all available (active) phases of the project when selecting the value of the attribute.
* \[open\] [open] Is the attribute selectable to be displayed left/right/far right in the Gantt-Chart. Assumption: No.
* The new functionality is hidden behind the feature flag developed as part of ###58159
**Permission considerations**
* The property and all the related functionality is only available if the user has the permission 'view\_project\_phases' in the project the work package is associated to. This extends to i.e.
* Filters
* Displaying the value in the table and on the split/full screen view.
* Activity?
* \[open\] Check if this is possible at all.
**Out of scope**
* Showing changes when activating the work package baseline comparison.
* Indicating the time span the phase spans in the date picker of the work package.
* This would indicate when the work package should be worked on.
* Date alert notification in case a work package is not finished but the phase ends.
* A hard limit regarding the dates or a message displayed if the dates are outside of the phase's phase's date range.
* This would also require rescheduling a work package in case the phase's phase's dates are changed. The complexity of this would be quite high.
* Displaying the phase's phase's time span inside the gantt chart.
**As** a project member
**I want to** assign to and see the assignment of a work package to a phase
Assumes ###58159 is done.
**Acceptance criteria**
* Work pages receive a new attribute: The phase they belong to.
* in a work package list inside a project:
*
* \[open\] should this be limited
* The
*
* In cast the work package is removed from a phase: "Removed from project phase \[x\]"
* \[open\]
**Permission considerations**
* The property and all the related functionality is only available if the user has the permission 'view\_project\_phases' in the project the work package is associated to. This extends to i.e.
* Filters
* Displaying the value in the table and on the split/full screen view.
* Activity?
* \[open\] Check if this is possible at all.
* Showing changes when activating the work package baseline comparison.