我需要编写一个脚本来计算在多个不同时间范围之外行进的秒数。举个例子:
Shift Hours: 09:00 - 17:00
Standby Hours: 06:00 - 09:00
Travel start time: 05:00
Site arrival: 06:00
在上面的示例中,脚本将输出3600秒(1小时),因为它将从05:00 - 06:00计算。
在待机或轮班时间内旅行的任何时间都不应计算在内。
另一个例子:
Shift Hours: 09:00 - 17:00
Standby Hours: 06:00 - 09:00
Travel start time: 06:00
Site arrival: 08:00
上面的例子应该输出0,因为在待机时间里旅行的时间是06:00 - 08:00。
另一个例子:
Shift Hours: 09:00 - 17:00
Standby Hours: 06:00 - 09:00
Travel start time: 06:00
Site arrival: 08:00
Site Departure: 18:00
Home time: 20:30
在上面的示例中,应该输出9000秒,因为他们在18:00离开现场并在20:30(2.5小时)回家。
另一个例子:
Shift Hours: 09:00 - 17:00
Standby Hours: 06:00 - 09:00
Travel start time: 06:00
Site arrival: 08:00
Site Departure: 16:00 << leaves before shift ends
Home time: 18:00
上面的示例应该只输出3600秒,因为它们提前离开了站点,它只计算从班次结束时的行程,即17:00 - 18:00。
有谁知道如何编程以上内容?