Kalkulator Kartu Waktu
Lacak jam kerja mingguan dengan pengurangan istirahat dan perhitungan lembur.
| Hari | Mulai | Selesai | Jam | |
|---|---|---|---|---|
| 7.50h | ||||
| 7.50h | ||||
| 7.50h | ||||
| 7.50h | ||||
| 7.50h |
Tentang alat ini
Kalkulator kartu waktu adalah alat penting untuk melacak jam kerja mingguan, terutama bagi karyawan, freelancer, dan manajer yang perlu memantau biaya tenaga kerja dan kepatuhan terhadap peraturan lembur. Berbeda dengan pelacakan waktu manual, kalkulator digital ini secara otomatis mempertimbangkan pengurangan istirahat dan menghitung secara instan total jam kerja, jam reguler, dan lembur—menghemat waktu dan menghilangkan kesalahan aritmetika. Apakah Anda mengelola penggajian mingguan tim, menghitung jam yang dapat ditagih untuk penagihan klien, atau sekadar menyimpan catatan pribadi, pelacakan waktu yang akurat adalah fondasi kompensasi yang adil dan efisiensi bisnis.
Menggunakan alat ini sangat sederhana: masukkan waktu masuk dan keluar Anda untuk setiap hari dalam seminggu, tentukan istirahat yang tidak dibayar yang Anda ambil, dan kalkulator akan segera menampilkan total jam, rata-rata jam harian, dan jumlah lembur Anda. Antarmuka menangani skenario dunia nyata yang umum, seperti shift malam yang melewati tengah malam, dengan mendeteksi ketika waktu keluar Anda lebih awal dari waktu masuk Anda dan secara otomatis menyesuaikan perhitungan. Anda dapat menambah atau menghapus hari sesuai kebutuhan, bereksperimen dengan durasi istirahat yang berbeda, dan melihat statistik Anda diperbarui secara real-time—sempurna untuk mengaudit kartu waktu, merencanakan jadwal, atau memahami bagaimana lembur terakumulasi minggu demi minggu.
Alat ini sangat berharga bagi manajer penggajian, pengawas shift, freelancer, dan siapa pun yang tunduk pada aturan lembur atau penagihan per jam kepada klien. Ini menghilangkan tebakan dari perhitungan waktu dan membantu memastikan kepatuhan dengan hukum tenaga kerja yang menentukan ambang jam mingguan dan tarif lembur. Dengan memberikan umpan balik visual instan tentang jam reguler versus lembur, ini memberdayakan pekerja untuk memahami kompensasi mereka dan membantu pemberi kerja memverifikasi catatan penggajian yang akurat.
Pertanyaan yang Sering Diajukan
Implementasi Kode
from datetime import datetime, timedelta
def calculate_time_card(entries: list[dict]) -> dict:
"""Calculate total hours from clock-in/clock-out pairs.
Each entry: {"clock_in": "HH:MM", "clock_out": "HH:MM", "break_minutes": 0}
"""
total_seconds = 0
for entry in entries:
fmt = "%H:%M"
clock_in = datetime.strptime(entry["clock_in"], fmt)
clock_out = datetime.strptime(entry["clock_out"], fmt)
if clock_out < clock_in:
clock_out += timedelta(days=1) # overnight shift
duration = clock_out - clock_in
break_secs = entry.get("break_minutes", 0) * 60
total_seconds += max(0, duration.total_seconds() - break_secs)
hours = int(total_seconds // 3600)
minutes = int((total_seconds % 3600) // 60)
return {
"total_seconds": total_seconds,
"total_hours": total_seconds / 3600,
"formatted": f"{hours}h {minutes:02d}m",
}
# Example time card
entries = [
{"clock_in": "09:00", "clock_out": "12:30", "break_minutes": 0},
{"clock_in": "13:00", "clock_out": "17:30", "break_minutes": 15},
{"clock_in": "22:00", "clock_out": "06:00", "break_minutes": 30}, # overnight
]
result = calculate_time_card(entries)
print(f"Total: {result['formatted']} ({result['total_hours']:.2f} hours)")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.