Phiếu in (print pack)

Tờ giấy đi kèm hộp không biến mất khi lên phần mềm — nó vẫn là quy trình sàn của labo VN. In thẳng từ trình duyệt, không cần app PDF.

Print pack là bộ giấy in đi kèm hộp vật lý của một case. Ở labo VN, tờ phiếu giấy nằm trong khay/hộp và đi theo răng từ lúc nhận mẫu tới lúc giao — sản phẩm không thay được cuốn sổ nếu thiếu tờ giấy này. Có hai loại phiếu, in trực tiếp từ dữ liệu case đã có, không cần thư viện PDF phía máy chủ:

  • Phiếu labo (labo slip) — in lúc nhận case: bệnh nhân, răng (FDI), material, shade, hạn, người chỉ định, ghi chú Rx, kèm QR mã ca.
  • Phiếu giao hàng (delivery note) — in lúc giao: mã ca, phòng khám, ngày giao, danh sách unit, dòng ký nhận (người giao / người nhận), kèm QR mã ca.

Cách in

Danh sách ca, mỗi dòng có nút "In phiếu" mở một trong hai route in chuyên biệt — trang không có menu/sidebar, chỉ nội dung phiếu. Bấm Ctrl+P (Windows) hoặc Cmd+P (Mac) để in. Phiếu labo mặc định khổ A5, phiếu giao hàng khổ A4 — CSS in tối ưu sẵn, không cần chỉnh khổ giấy thủ công.

Chỉ đọc, không đổi trạng thái

Phiếu in không gọi bất kỳ hành động ghi nào và không đổi trạng thái case — chỉ đọc dữ liệu case đã có rồi hiển thị. In bao nhiêu lần cũng được, không phát sinh gì mới. Dữ liệu lấy từ đúng response case mà người dùng vốn đã được xem — route in không lộ thêm trường nào, cùng cổng quyền như xem case (yêu cầu đăng nhập, case thuộc labo của mình).

Gate theo trạng thái case

PhiếuIn được từChưa tới → hiện gì
Phiếu laboĐã nhận (accepted) trở đi"Case chưa nhận, chưa in được"
Phiếu giao hàngChờ giao / đã gửi đi (ready_to_ship/shipped) trở đi"Chưa tới bước giao"

Case không tồn tại hoặc không thuộc labo của bạn → màn not-found, không lộ dữ liệu case khác.

QR mã ca — không phải link công khai

QR trên cả hai phiếu mã hoá mã ca (mã người-đọc-được đã in trên phiếu) — quét để tra nhanh ca trên sàn, đối chiếu khay/hộp với đúng case. QR không chứa tracking token công khai của case: token là credential, in nó lên hộp đi ngoài đường sẽ rò rỉ quyền truy cập.

Lưu ý

Trường tùy chọn vắng (SĐT/tên bệnh nhân/ghi chú Rx/hạn) → phiếu in dấu "—" hoặc bỏ dòng, không chặn in. SĐT bệnh nhân không in trên phiếu labo (giữ ranh giới riêng tư hiện có) — chỉ in tên nếu có. Case không có unit/items → phiếu giao hàng vẫn in được, bảng unit trống có nhãn "—", vẫn có mã ca + dòng ký nhận.