Content
View differences
Updated by Klaus Zanders 1 day ago
**As** a resource manager \[enter role of user\]
**I want to** go through all visible allocations that have user attributes and no user assigned yet (i.e. "Developer (EN-DE)") and assign real users to them \[enter objective\]
**so that** real users can do the work. \[enter desired result\]
**Acceptance criteria**
* A new _Staffing_ menu item under _Resource Planning_ that shows a list of all `Resource Allocations` in the project that do not have a user assignment for users that have the permission
* The view that list all of those allocations
* A warning when an allocation starts in the past and is still unassigned
* Alloctions should be sorted by Start time. It should show
* The given filter name (i.e. "_Ruby Developer (EN-DE)_")
* If visible, the work package details
* The start & end dates of the allocation
* The requested amount of time
* Click opens a modal that lists all _project members_ that match the given criteria and show with an indicator if the allocation fits into the user's other allocations or not (same logic that shows a user as overbooked in other places of the codebase)
* A user can be selected from the list and an assign button assigns the user to the resource allocation. <br>
**Technical notes**
* When a user is assigned to the allocation, we **do keep** the `filters` and `filter_name` on the Resource Allocation. It must **not** be removed. `principal_explicit` should also stay `false`.
* Let's add a new column `principal_assigned_by` on the `ResourceAllocation` model that stores the information who has made the assignment
* When a user is initially selected in the creation of the allocation, this is set to the same user as the \`requested\_by\_id\`
<br>
**Permissions and visibility considerations**
* A new `Assign users to generic allocations` permission, givable on the project level. _To whom is this feature visible?_
* _When is it not visible?_
**Translation considerations**
* Suggestions for _Key terms and phrases in the name of the process would either be _Staffing_ or _Resource Assignment_. Looking at that we are already thinking about going away from resource as a word, staffing might be more appropriate. key languages_
**Out of scope**
* A proper integration with departments <br>
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._
**I want to** go through all visible allocations that have user attributes and no user assigned yet (i.e. "Developer (EN-DE)") and assign real users to them
**so that** real users can do the work.
**Acceptance criteria**
* A new _Staffing_ menu item under _Resource Planning_ that shows a list of all `Resource Allocations` in the project that do not have a user assignment for users that have the permission
* The view that list all of those allocations
* A warning when an allocation starts in the past and is still unassigned
* Alloctions should be sorted by Start time. It should show
* The given filter name (i.e. "_Ruby Developer (EN-DE)_")
* If visible, the work package details
* The start & end dates of the allocation
* The requested amount of time
* Click opens a modal that lists all _project members_ that match the given criteria and show with an indicator if the allocation fits into the user's other allocations or not (same logic that shows a user as overbooked in other places of the codebase)
* A user can be selected from the list and an assign button assigns the user to the resource allocation.
**Technical notes**
* When a user is assigned to the allocation, we **do keep** the `filters` and `filter_name` on the Resource Allocation. It must **not** be removed. `principal_explicit` should also stay `false`.
* Let's add a new column `principal_assigned_by` on the `ResourceAllocation` model that stores the information who has made the assignment
* When a user is initially selected in the creation of the allocation, this is set to the same user as the \`requested\_by\_id\`
* A new `Assign users to generic allocations` permission, givable on the project level.
* _When is it not visible?_
**Translation considerations**
* Suggestions for
**Out of scope**
* A proper integration with departments
_Set the_ **To be informed/consulted teams** _field to include all teams necessary to be informed of the changes._