我正在尝试构建一个工具,根据员工安排工作的时间和他们请假的时间来计算称为配额的东西。
我的 ShiftSet 对象是一组 Shift 对象,其中包含 StartTime 和 EndTime(均为 time(7) 类型)。每个 ShiftSet 对应一天。
ScheduleExceptions 是员工请假的时间。一天中可以有任意数量的重叠或不重叠的 ScheduleExceptions。它们是日期时间数据类型。
一个 ShiftSet 的例子:
08:00-10:00
10:00-12:00
13:00-15:00
15:00-17:00
同一天的 ScheduleExceptions 示例:
07:30-10:30
14:35-16:00
我需要做的是找出员工一天的工作时间。我能想到的方法是计算 ShiftSet 的交集和 ScheduleExceptions 的倒数。
我将如何利用时间做到这一点?如果可能,我更愿意使用 Linq。
最佳答案
看看这个很棒的 article在CodeProject
对于您的特定问题,它可能过于宽泛,但它可能会为您提供解决问题的良好起点。
关于c# - 如何找到两组不连续时间的交集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8882917/