有效工作日计算方法

拥有回忆 提交于 2020-03-15 05:44:21

功能要求:每天工作时间为9:00~17:00,周六、周日为休息日,输入当前日期和预计的工作日,得出实际完成的日期。

大致实现流程:

1、先算出今天占工作日的多少系数(今天已经用去的0.多少天)。
2、计算出这个星期用去的天数需要到小数位。
3、根据本周所用天数及工作日之和除以每周工作日数得到工作周数。
4、工作周数乘以2得到休息日数。工作周数乘以2得到休息日数(工作日数 + 休息日数得到实际工作天数。)
5、工作日数 + 休息日数得到实际工作天数。
6、工作起始日期 + 工作系数 + 实际工作天数 得到到期日期 + 到期那天的工作系数。
7、根据到期那天的的工作系数,得到小时数,最后就得到到期的日期和时间了。

代码模式
BeginData = 起始日期
BeginUsedHours = 起始当天的工作系数(已经工作小时数/每天总工作小时数)
EndData = 结束的日期
EndTime = 结束当天时间
EndUsedHours = 结束当天的工作系数
ThisWeekUsedDays = 本周已用天数(包括小数,本周已过天数 + BeginUsedHours)
WordDays = 工作日总数
RealDays = 实际所用天数
RealDays = 取整((ThisWeekUsedDays + WordDays) / 5) * 2 + WordDays
EndData = BeginData + 取整(RealDays)
EndUsedHours = 取小数(RealDays)
EndTime = EndUsedHours * 每天工作小时数 + 每天起始工作时间
工作结束日期和时间为 EndData : EndTime

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!