ksfltd/redmine_multi_calendar — Issue #1: schedules issues: check availability of user when assigning issues
Author: cforce
Created: 2012-02-15 13:51:56+00:00
State: open

Our project manager would like to see conflcits between working times (holidays is no working time) and assigned issues based on start and end date of issues.
THis would need to check if user is on any day on holidays for the time between start and end of an issue.
If yes when assigning user, there shall be shown an warning information right near the assignee field.

Next step would be to detailed check if an issue is optimistic schedulable. That means if a assignee for this issue has enough time (based on default working hours per day per person) between (start and end date must be set) to do and additional estimated effort for this issue recognizing his already scheduled and done effort .

At the moment the feature "define default working hours per user" is missing here (there are many plugins that have only this feature and be copied from) and a hook that checks ia a user has capacity before saving an issue or show users potentianly over scheduled is missing in redmine.

The algo to realize that beyond gui extensions could look like this:

startdate = "get the earliest start date of all issues (all projects/ all versions ) which enddate is > today"
enddate = "get the latest end date of all issues the user is assigned to"
diffdays = enddate - startdate
maxScheduledays = diffdays - (holidays in between startdate and enddate)
maxScheduleHours = maxScheduledays * default_workinghours_per_day_per_user

estimatedHours = "get sum of estimated hours for issues the user is assigned to and are between startdate and enddate"
doneHours = "reported time of user for issues between startdate and enddate"
todoHours = estimatedHours - doneHours
scheduleHours = maxScheduleHours - (todoHours + thisIssue.estimation)

if (scheduleHours<0) then show warning
"Assigning this issue to the user will potentially be over schedule"