根据_排班_工厂日历_计算预计完成时间
常规排班
白班 夜班
星期一 当日8:00-11:00 当日12:00-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期二 当日8:00-11:30 当日12:30-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期三 当日8:00-12:00 当日13:00-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期四 当日8:00-11:00 当日12:00-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期五 当日8:00-11:30 当日12:30-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期六 当日8:00-12:00 当日13:00-17:00 当日18:00-20:00 当日20:00-23:30 次日00:30-08:00
星期日 当日8:00-12:00 当日13:00-17:00 当日18:00-20:00
例外排班
年月日 星期 开始时间 结束时间 休息0/上班1 优先级
2016-10-1 六 08:00 24:00 休息0 1
2016-10-2 日 00:00 24:00 休息0 1
2016-10-2 日 10:00 12:00 上班1 2
2016-10-2 日 11:00 17:30 上班1 3
2016-10-2 日 17:30 23:00 上班1 4
例外时间:变化很大,有时间段重叠,重叠时休息或上班由优先级决定(值越大优先级越高)
问题
根据开始时间(精确到分钟)、耗时(精确到分钟)计算出预计完成时间
如:开始时间2016-09-30 23:39 耗时7.4小时/19小时/35小时 预计完成时间分别多少?
小弟想了一个星期,暂时想到的解决方法是:所有部门工序.每年的日历详情(精确到分钟)全保存到数据库中,根据例外时间、优先级对指定部门工序的某时间段对应的记录更改上班/休息的字段。
缺点很大.记录数太大了.好可怕.
哥哥姐姐们有没其他方法啊.