Как рассчитать дату и время окончания работы?
Прямая с делением на отрезки рабочего времени, далее - рабочие дни и т.д.
по взрослому:
делаешь часы в которых в сутках 8 часов : и работаешь с ними  - цикл и все такле

по детски и попроще - играешься делением длитеольности на отрезки с min max между длительностью и остатком дня