Bỏ qua

11. ĐẶC TẢ DỮ LIỆU

Cấu trúc cơ sở dữ liệu của HRM Service được thiết kế theo mô hình quan hệ (Relational Database) sử dụng PostgreSQL và Prisma ORM.

11.1 Sơ đồ Thực thể Liên kết

Dưới đây là mô hình ERD đơn giản hóa, mô tả các thực thể cốt lõi trong hệ thống:

Sơ đồ Thực thể Liên kết ERD

11.2 Các thực thể chính

1. Phân quyền và Bảo mật

  • User: Lưu thông tin đăng nhập (email, password_hash, v.v.)
  • Role: Phân quyền RBAC cơ bản (ADMIN, HR, MANAGER, EMPLOYEE).
  • Permission: Định nghĩa các quyền chi tiết (ví dụ: attendance.manage).

2. Sơ đồ Tổ chức

  • Department: Phòng ban. Có cấu trúc cha - con (parent_department_id).
  • Team: Đội/nhóm thuộc phòng ban.
  • Employee: Thông tin nhân sự. Lưu lịch sử công tác qua EmployeeJobHistory.

3. Chấm công

  • AttendanceEvent: Log sự kiện IN/OUT thô được bắn lên từ thiết bị.
  • AttendanceRecord: Bản ghi chấm công tổng hợp theo ngày.
  • AttendancePunchPair: Cặp IN/OUT cụ thể.

4. Quản lý Phép

  • LeaveType: Các loại quỹ phép (Nghỉ ốm, Nghỉ phép năm, v.v.).
  • LeaveBalance: Số dư quỹ phép hiện tại của nhân sự.
  • LeaveRequest: Đơn xin nghỉ phép.

5. Bảng công

  • TimesheetSymbol: Ký hiệu chấm công (Vắng, Đi làm đủ, Phép...).
  • MonthlySummary: Tổng hợp ngày công, giờ OT để chốt lương.