上班时间:
周一到周五
8:30-12:00
13:30-18:00
情况下
可以设置任意不同的节假日日期时间。
输入任意两个时间点( YYYY-MM-DD HH:mm:ss )
计算真实的工作时间(小时数)。
具体写了下发现被卡住了,感觉自己算法水平不够啊 T_T
1
xomix 2017-12-12 17:04:52 +08:00 1
这是逻辑分析能力不是算法吧。
先分解需求 1、计算两个时间范围内的工作时间,精确程度未定义。 2、可以设置节假日,设置精度未定义。 3、使用工作范围内的时间减去节假日时间求出工作时常。 然后就是具体分析,先是工作时间这块,因为未定义精度,就暂时按分钟计算吧,更详细的你自己计算。 首先将求出起止时间之间的日数,减去起始时间 1 日,减去终止时间 1 日。 然后用工作时落点计算起始时间和终止时间的具体工作时间。 节假日也暂定按照小时设置。 先看起止时间是否落点到节假日范围内,如果是,稍后特殊处理。 如果不是在节假日范围内,那么计算节假日的实际工作时常,然后用上一步求出来的工作时常减去节假日即可。 如果起止时间落点节假日范围内,那么将节假日的起止时间就设置为具体落点时间,然后求出时常,然后一样减去即可。 |
2
yujieyu7 2017-12-12 17:25:11 +08:00
这里边最麻烦的是节假日的设定吧,要是简化成周六日就好了,每年的周末之外的法定节假日都不一样,
|