Bạn được giao thiết kế và xây dựng ứng dụng quản lý chấm công nhân viên cho các doanh nghiệp sản xuất. Có hai loại nhân viên: công nhân (Worker) và nhân viên văn phòng (Officer). Nhân viên có thông tin cơ bản là họ tên, mã nhân viên, tên bộ phận làm việc (department). Tất cả công nhân thuộc nhánh bộ phận“Nhà máy sản xuất”. Nhân viên văn phòng thuộc các nhánh khác. Những thông tin này được lấy từ API hệ thống quản lý nhân sự.
Hàng ngày, tất cả các nhân viên đều được chấm công qua máy quét vân tay. Sẽ có máy quét vân tay vào cửa và máy quét vân tay ra cửa. Người quản lý nhân sự sẽ dẫn Nhân viên mới và tới các máy quét này và cấu hình vân tay cũng như họ tên và mã nhân viên trên máy quét.
Máy vân tay có hai chế độ hoạt động. Ở chế độ kết nối wifi, máy quét vân tay cung cấp API để phần mềm bất kỳ có thể gọi để lấy dữ liệu. Ở chế độ không có kết nối wifi, người quản lý nhân sự hàng tuần/hàng tháng phải đến lấy file excel xuất từ các máy quét vân tay bằng cách cắm USB vào. Mỗi bản ghi dữ liệu có 2 thông tin: time stamp, mã nhân viên (các thông tin khác bỏ qua). Tất cả các bản ghi đều được lưu lại để đối soát về sau nếu cần.
Người quản lý nhân sự thực hiện import dữ liệu trong file excel vào hệ thống. Khi import có thể có lỗi, nếu bị lỗi cần hiển thị thông báo “Có lỗi xảy ra” kèm chi tiết tất cả các lỗi. Cách thức chấm công của công nhân khác với nhân viên văn phòng: công nhân được chấm công theo ca (mỗi ca không quá 4 tiếng) và nhân viên văn phòng được chấm công theo buổi (sáng/chiều). Dựa trên các bản ghi của máy chấm công, ứng dụng sẽ lưu và hiển thị thông tin cho công nhân và nhân viên văn phòng như hai bảng dưới đây:
Người quản lý nhân sự có thể xem báo cáo chấm công một đơn vị bất kỳ theo tháng và xuất báo cáo chấm công ra 1 trong 2 định dạng CSV và Excel. Báo cáo chấm công công nhân: mỗi công nhân 1 dòng, có họ tên, mã nhân viên, đơn vị, tháng, tổng số giờ làm việc (ca 1 và 2), tổng số giờ tăng ca (ca 3). Báo cáo chấm công nhân viên văn phòng: tương tự nhưng các trường thông tin là họ tên, mã nhân viên, đơn vị, tháng, tổng số buổi đi làm (cả sáng và chiều), tổng số giờ đi muộn/về sớm. Người quản lý nhân sự có thể xem chấm công chi tiết của nhân viên bất kỳ trong doanh nghiệp. Họ còn có thể xem các thông tin tổng hợp như tổng số giờ đi muộn, về sớm, … của tất cả các nhân viên trong 1 đơn vị hoặc trong cả doanh nghiệp theo tháng, quý, hoặc năm
Trưởng đơn vị có chức năng xem báo cáo chấm công tương tự như người quản lý nhân sự, nhưng họ chỉ xem được chấm công của tất cả nhân viên trong đơn vị của mình quản lý.
Nhân viên có thể chọn tháng muốn xem chấm công và xem chi tiết chấm công các ngày của mình trong tháng. Nhân viên cũng có thể xem các bản ghi chấm công lấy từ máy chấm công để kiểm tra cho 1 ngày bất kỳ (Trưởng đơn vị cũng như người quản lý chấm công đều có thể xem các bản ghi chấm công chi tiết của 1 nhân viên nào đó trong 1 ngày bất kỳ). Nếu có vấn đề gì đó, họ sẽ trao đổi với người quản lý nhân sự để người này sửa lại thông tin chấm công nếu cần (sửa cho nhân viên theo từng ngày chấm công). Nhân viên cũng có thể xem các thông tin tổng hợp (như tổng số giờ đi muộn, về sớm, …) của mình theo tháng, quý, hoặc năm
Ứng dụng quản lý chấm công cần cung cấp API cho hệ thống kế toán. Dựa vào thông tin chấm công, lương của nhân viên sẽ có sự thay đổi cho từng tháng.