工时计算器
结果
每周工时
- 整小时数
- 40 小时
- 剩余分钟数
- 0 分钟
- 扣除休息前的工时
- 42.50 小时
- 扣除的休息合计
- 2.50 小时
- 出勤天数
- 5 天
这个工时计算器把一周最多七天的上下班时间加起来,再按出勤天数扣掉休息时间,得到的是真正计入工资的那一段工时。每天填一对打卡时间,休息的那天两格都留空;休息时长一周只填一次,对应固定扣午休的常见口径。结束时间早于开始时间时按跨过零点读,所以 22:00 到 06:00 是八小时而不是负数,夜班不需要换成别的写法。未扣休息的总时长、休息合计与出勤天数与净工时并排给出,方便逐项核对考勤表。
公式
一周工时 = 七天的(结束 − 开始)分别相加,结束早于开始的当天再加 24 小时;再按出勤天数每天扣一次休息时长,扣减不超过当天班次的长度
- start
- 当天上班的时刻,按 24 小时制填,例如 09:00。两格都留空表示这天没上班
- end
- 当天上班结束的时刻。早于开始时刻时按第二天早上读,22:00 之后填 06:00 是八小时,不是倒着算十六小时
- break
- 每个出勤日扣除的休息时间,可以按分钟或小时填。一周共用这一个数
- weeklyHours
- 主结果:扣掉休息之后的一周工时,也就是考勤表与工资条上用的那个数
- grossHours
- 什么都不扣的一周总时长,用来和每天的班次长度对一遍
- breakHours
- 各出勤日实际扣掉的休息时间合计。休息长于当天班次时它可能小于「休息 × 出勤天数」,见下面的限制
- daysWorked
- 七天里两格都填了的天数。整天留空的不算,没上班的那天也不算
用它结算一周的考勤、核对工资条上的工时,或者按小时给一份活报价。它回答的是「一共投入了多少时间」,不是「这些时间值多少钱」——加班费、夜班津贴与节假日工资是薪酬规则而不是算术规则,各家各地都不一样。只要一段班次而不是一周时,把其余六天留空即可:一周工时本来就是七天的和,填一天得到的就是那一天的净工时。
算例
五个标准工作日,午休 30 分钟
- 每个工作日 09:00 到 17:30 是 8.5 小时,五天合计 42.5 小时——这是扣休息之前的总时长
- 午休每天 30 分钟,五天一共扣掉 2.5 小时
- 42.5 − 2.5 = 40 小时净工时,正好是这五天本来要凑出来的整周工时
- 整小时是 40,没有余下的分钟,所以小时与分钟两行读作 40 和 0
这就是扣掉午休之后的一个全职周:五天在场 42.5 小时,其中 2.5 小时是休息,剩下的 40 小时才是计薪部分。
同一周再加一个四小时的周六
- 五个工作日仍然是 42.5 小时,周六 10:00 到 14:00 再加 4 小时,合计 46.5 小时
- 休息现在要扣六天而不是五天:6 × 30 分钟 = 3 小时
- 46.5 − 3 = 43.5 小时净工时
- 43.5 小时就是 43 小时 30 分,所以两行文字读作 43 与 30,主结果读作 43.5
超过 40 小时的那部分要不要按加班算,不由这个页面决定——它只负责把时间数准,43.5 是要拿去套薪酬规则的那个数。
五个跨过零点的夜班
- 06:00 早于 22:00,所以每个班次都按跨过零点读:到零点 2 小时,零点之后 6 小时,一个班次 8 小时
- 五个这样的夜班是 40 小时,与五个普通工作日扣休息前完全一样,尽管钟点完全不同
- 五个 30 分钟的休息扣掉 2.5 小时,剩下 37.5 小时净工时
- 37 小时 30 分,也就是同一段时间的另一种写法
把这一对读成跨夜班是唯一说得通的解释,换一种解释会得到负十六小时,一周的合计数立刻崩掉。开始与结束填成同一时刻(例如 22:00 到 22:00)算零,不算一整天。
局限
休息时长是整周共用的一个数,所以「周二休了一小时、其余几天休半小时」这样的周没法照原样填——固定扣减的部分在这里算,多出来的差额手工加减,或者把那一天单独算一次。休息长于当天班次时会被夹到班次长度,不会出现负工时,代价是休息合计可能小于「休息 × 出勤天数」。只认整点时刻:没法填 09:00:30 上班,也没法填超过 23 小时 59 分的班次,因为每一天都是一对时刻而不是一对日期。法定节假日、带薪年休假与加班费标准完全不在这套计算里。
常见问题
- 一周的工时怎么算?
- 把每个出勤日的上班与下班时刻各填一对,页面先把七天加起来,再按出勤天数每天扣一次休息时长。五个 09:00 到 17:30 的工作日配 30 分钟午休,得到 40 小时净工时。休息的那天两格都留空——它不贡献时长,也不进出勤天数。
- 标准工时是每天几小时、每周几小时?
- 每日 8 小时、每周 40 小时,这是《国务院关于职工工作时间的规定》第三条写死的标准工时制。超过的部分属于延长工作时间:《劳动法》第四十四条规定,安排延长工作时间的应支付不低于工资的百分之一百五十的报酬,休息日安排工作又不能补休的是百分之二百,法定休假日是百分之三百。所以周工时是不是超过 40,才是决定加班的那条线,而不是每天干了几小时。
- 夜班跨过零点要怎么填?
- 照打卡时刻原样填,结束时刻早于开始时刻会被自动读成跨到第二天,所以 22:00 到 06:00 就是 8 小时。不要自己加 24 小时,也不要写成 30:00 之类——那种写法会被当成非法时刻。开始与结束填成同一个时刻(22:00 到 22:00)按零算,不会算成 24 小时。
- 每天的休息时间不一样怎么办?
- 这里只有一个休息时长字段,整周共用。常见的情况是每天固定扣半小时午休,那么填 30 就够了;如果周二休了一小时、其余四天各半小时,可以先按统一的 30 分钟算出一版,再把多出来的那 30 分钟手工减掉,或者把那一天单独填一次、其余留空。把每天的休息都做成独立字段会让最常见的那种周多出六个空格,所以没有那样做。
- 休息时间比上班时间还长会怎样?
- 那一天的休息会被夹到班次长度,结果记为零而不是负数。比如一小时班次配两小时休息,扣掉的只有一小时,这一天净工时为 0。因此休息合计有时会小于「休息 × 出勤天数」——夹掉的部分没有地方可扣。两个时刻相同的日子同样算零工时,但仍然算一个出勤日。
参考资料
- 国务院关于职工工作时间的规定(第三条:每日工作 8 小时、每周工作 40 小时) — 司法部 国家行政法规库
- 中华人民共和国劳动法(2018 年修正本)第四十四条 — 广东省人民政府门户网站