我希望找到一种可以用来解决加班计算问题的算法,而不会产生无尽的if else链,这就是我到目前为止的管理方式。我寻找的不是代码,而是我可以学习的算法的名称。我已经搜索过Google,但没有找到类似的内容。
加班计算的参数如下。
1。)所有超过40小时的工作时间都是加班。
2。)有3种花样(常规,秋千,墓地)。
2。)在正常工作周之外的所有工作日都加班。例如(如果正常工作周为星期一至星期五的8小时工作日;错过星期一至星期五却在星期六工作8小时的雇员将获得8小时加班和0小时常规时间的报酬。同样,如果将每周四十小时定为星期一-星期四,每天10个小时,员工可能会错过周一至周四的工作时间,而周五和周六则工作10个小时,每个工作时间加班20小时,正常时间为0小时。
3。)对于周日,节假日,轮班工作超过12个小时的工作时间以及星期六工作超过10个小时的工作时间,都支付了加倍/双倍工作时间。
例如,一名从事墓地转移工作的员工在周日晚上10点开始工作,直到第二天工作12点。这将是四个小时的两倍时间和10个小时的常规时间。
我目前正在使用日期时间对象计算轮班时间,以开始/结束轮班,并提供星期几和节假日。那我用if if if 就这样
ABC Store owned by Xyz
然后我继续浏览假期/轮班/加班/保费/常规情况的所有场景。