首先说一下请假规则吧:
1、上午请假的,时长不得小于3小时
2、下午请假的,时长不得小于5小时
3、工作时间:9:00~18:00
4、中午有一小时非工作时间
因为公司的制度,加班没有加班费但是可以调休,所以时间必须精确到小时。那么问题来了:
1、如果我请假的时间跨度是上午到下午满足规则,但是系统计算时间会多一小时:
我的解决方法是:首先判断开始和节时间是否为同一天,再判断开始时间是否为上午,结束时间是否为下午,如果都满足,那么系统计算的时间再减去一小时
2、如果有些人傻,选择开始和结束时间的时候超出了工作时间,比如结束时间是18:00以后,那么又要判断是否要扣除18:00以后的时间
无线网络修复工具是一款联想出品的小工具,旨在诊断并修复计算机的无线网络问题。它全面检查硬件故障、驱动程序错误、无线开关设置、连接设置和路由器配置。 该工具支持 Windows XP、Win7 和 Win10 系统。请注意,在运行该工具之前,应拔出电脑的网线,以确保准确诊断和修复。 使用此工具,用户可以轻松找出并解决 WiFi 问题,无需手动排查故障。它提供了一键式解决方案,即使对于非技术用户也易于使用。
0
3、最麻烦的就是跨天,如果假期中包含法定假日、双休等特殊情况。还有非整数跨天,比如只请到三天后的上午11点,那么三天后的0:00~9:00这段时间怎么去掉
思绪有些混乱,还请有经验的前辈给分享一下经验,谢谢!!
立即学习“Java免费学习笔记(深入)”;
首先说一下请假规则吧:
1、上午请假的,时长不得小于3小时
2、下午请假的,时长不得小于5小时
3、工作时间:9:00~18:00
4、中午有一小时非工作时间
因为公司的制度,加班没有加班费但是可以调休,所以时间必须精确到小时。那么问题来了:
1、如果我请假的时间跨度是上午到下午满足规则,但是系统计算时间会多一小时:
我的解决方法是:首先判断开始和节时间是否为同一天,再判断开始时间是否为上午,结束时间是否为下午,如果都满足,那么系统计算的时间再减去一小时
2、如果有些人傻,选择开始和结束时间的时候超出了工作时间,比如结束时间是18:00以后,那么又要判断是否要扣除18:00以后的时间
3、最麻烦的就是跨天,如果假期中包含法定假日、双休等特殊情况。还有非整数跨天,比如只请到三天后的上午11点,那么三天后的0:00~9:00这段时间怎么去掉
思绪有些混乱,还请有经验的前辈给分享一下经验,谢谢!!
立即学习“Java免费学习笔记(深入)”;
跨天,其实和当天,没区别,反正每天请假的时间都是9点到18点
先判断
(开始-结束)/(24X3600)=天数,如果大于1,就说明是跨天的如:2016-08-30 10:30-2016-09-04 12:00,其实只要计算08-30和09-04这两天的情况就好了,中间那几天7*3=21小时
某天(上班+请假)
无非几种情况,早上请假,下午请假,早上跨到下午
那if条件就麻烦了点
结束时间 开始时间 >= 13点 && 结束时间
剩下的基本就是跨段的,跨段分上午和下午来计算就好了。
0-9,12-13,18-0的时间段,有交叉的部分不计算就好了
你首先需要一个排班表用于判断是否是工作日。 如果小于9点,=9点,大于18点=18点,再用你1里面说的方法不久完了。
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号