OVIRO LogoOVIRO | Trợ giúp
Nhân sự & phân quyềnVăn phòng làm việc

Cài đặt chấm công văn phòng (legacy)

3 field chấm công cũ (date_review_checkin, allow_late_time, allow_early_time) nằm trong form Office nhưng UI đã ẩn (className="hidden"). Không thao tác được qua form hiện tại.

Bài này mô tả các field chấm công legacy đã được ẩn khỏi UI trong frontend hiện tại. Các field vẫn còn trong model + payload submit, nhưng người dùng KHÔNG thao tác được qua form Office.

Trạng thái UI

<Row gutter={16} className="hidden">
  <Col><Form.Item hidden={model.id === 0} name="date_review_checkin">...</Form.Item></Col>
  <Col><Form.Item hidden={model.id === 0} name="allow_late_time">...</Form.Item></Col>
  <Col><Form.Item hidden={model.id === 0} name="allow_early_time">...</Form.Item></Col>
</Row>
  • Cả <Row>className="hidden" → bị CSS ẩn.
  • Mỗi <Form.Item> còn hidden={model.id === 0} - thêm 1 lớp ẩn nữa khi tạo mới.
  • Nếu xoá class hidden khỏi Row, vẫn chỉ hiện khi sửa.

Hiện tại: KHÔNG ai dùng được qua UI form Office.

Các field

FieldLoạiMục đích (theo i18n key)
date_review_checkinInputNumberGiới hạn ngày duyệt công - bao nhiêu ngày sau ca làm vẫn được duyệt.
allow_late_timeInputNumber + tooltip office:time_helpPhút vào làm trễ được phép tính là đúng giờ.
allow_early_timeInputNumber + tooltip office:time_helpPhút ra về sớm được phép tính là đủ ca.

→ Đơn vị thời gian: phút (theo các bài hướng dẫn cũ).

Hành vi với dữ liệu cũ

Nếu trong DB đã có giá trị:

  • initialValues lấy giá trị từ model.<field>.
  • Khi save, doPrepareData truyền lại giá trị đó.
  • → Dữ liệu cũ KHÔNG bị xoá khi save form mới (vì payload vẫn chứa value).

Nếu DB chưa có giá trị (record cũ tạo bằng admin pre-checkin):

  • initialValues = undefined → form không gửi field hoặc gửi undefined.
  • Save sẽ giữ nguyên trạng (chưa biết logic backend - cần test).

Cấu hình hiện tại nếu cần thiết

Vì UI đã ẩn, có 3 cách đặt giá trị:

  1. Sửa frontend để bỏ class hidden + bỏ hidden={model.id === 0} (cần dev).
  2. Gọi API direct với payload có 3 field.
  3. Đề xuất rebuild module chấm công ở phía dev nếu cần phổ biến.

Ai được xem và chỉnh?

  • Hiện tại module không có UI cho user nào (kể cả SETTING_HRM).
  • Nếu rebuild, gate sẽ giống các thao tác Office khác: SETTING_HRM.

Lưu ý - Lỗi thường gặp

  • "Tại sao tôi không thấy cài đặt chấm công?": UI đã ẩn. Form Office hiện chỉ có Tên + Địa chỉ + Thứ tự.
  • "Tôi cần cấu hình giờ làm cho công ty": hiện hệ thống không có module chấm công đầy đủ. Liên hệ dev để biết roadmap.
  • "Module Booking có lịch làm việc - khác gì": Booking quản lý lịch resource cho khách book dịch vụ. Khác với chấm công nhân viên (timekeeper).
  • "Dữ liệu cũ trong các field này còn ý nghĩa không?": nếu module chấm công cũ đã ngừng phát triển thì dữ liệu chỉ còn ý nghĩa lịch sử. Backend có thể vẫn dùng để tính toán cho luồng cũ.

On this page