NewSky Express — Tài liệu nghiệp vụ

NV kho thao tác gì trên app
để xử lý hàng của tôi?

Nhân viên kho (NV) là người trực tiếp đụng tay vào kiện hàng của tôi — từ lúc đến nhà tôi lấy hàng, mang về kho, cân đo đóng gói, gắn túi, gắn chuyến, in nhãn QR, quét xác nhận, hoàn tất đóng kiện, và scan từng kiện theo chuyến để xuất kho. Toàn bộ thao tác diễn ra trên app mobile chạy trên điện thoại Android cấp riêng. Tài liệu này mô tả 34 màn hình app — từ thao tác hằng ngày đến quản lý điều phối.

34Màn app mobile
7Giai đoạn xử lý
2Kho làm việc
8 giờHạn xử lý 1 Y/C

App mobile — công cụ chính của nhân viên kho

Khác với CS ngồi văn phòng làm việc trên Odoo browser, NV kho làm việc trên hiện trường: tại nhà khách, trong kho, cạnh máy in nhãn, gần kệ hàng. Họ cần công cụ chạy được trên điện thoại — không thể vác laptop theo. Vì vậy NewSky cấp riêng cho mỗi NV một điện thoại Android có cài app TNS Scanner.

App này có 2 nhóm chức năng: tác vụ hằng ngày (pickup, nhận hàng, đóng gói, gắn túi/chuyến, in nhãn) và quản lý điều phối (dashboard tổng quan, search/filter, tạo đơn ad-hoc tại field, theo dõi đơn nháp, báo cáo). NV thường trực hiện trường dùng nhóm 1; trưởng kho/giám sát dùng cả 2.

Tài liệu này đi qua từng bước theo lifecycle thực tế của một kiện hàng. Mỗi bước có ảnh chụp màn hình app + giải thích chi tiết NV thao tác gì, và điều đó có ý nghĩa gì với tôi — khách hàng đang chờ hàng tới nơi an toàn.

5 giai đoạn xử lý + tác vụ quản lý

Lifecycle chuẩn của một kiện hàng đi qua 5 giai đoạn liên tiếp. Ngoài ra trưởng kho có các tác vụ quản lý điều phối song song.

1

Lấy hàng tại nhà

NV nhận Y/C từ CS đẩy xuống app, đến tận địa chỉ lấy hàng

2

Hàng về kho

Xác nhận đã nhận hàng về kho (S2)

3

Đóng gói

Cân, đo, ghi nhận từng kiện, chụp ảnh bằng chứng (S3)

4

Gom túi + gắn chuyến

Gom đơn cùng tuyến vào túi, gắn túi vào chuyến (S4)

5

In nhãn + Quét + Hoàn tất

Pair máy in, in nhãn QR, quét xác nhận, hoàn tất đóng kiện (S4)

6

Xuất kho theo chuyến

Mở chuyến SHIP, scan kiện theo lộ trình, đẩy túi ra xe (S5)

Giai đoạn 0 — Trước khi xử lý đơn của tôi

NV bắt đầu ca làm — đăng nhập và chọn kho

Đầu mỗi ca, NV mở app, đăng nhập bằng tài khoản công ty cấp, chọn đúng kho mình trực để lọc đơn theo phương thức vận chuyển.

Đăng nhập app
MÀN K-01Đăng nhậpApp mobile

Đăng nhập app TNS Scanner

NV chọn server (Production cho ca thật, Staging cho tập huấn), nhập tài khoản nội bộ, đồng ý điều khoản. App tự verify máy chủ Odoo trước khi cho đăng nhập.

Trên màn hình NV thấy gì

  • Toggle ProductionStaging (TEST)
  • Tài khoản và mật khẩu cấp riêng cho từng NV
  • Verify máy chủ tự động — show "Đã xác thực máy chủ · Odoo OK · nlt_api 17.0.0.48.0" + tenant NSE
  • Bắt buộc tick đồng ý Điều khoản sử dụng trước khi đăng nhập
Chọn kho làm việc
MÀN K-02Chọn khoApp mobile

Chọn kho mình trực

App có 2 kho phân quyền theo phương thức vận chuyển. NV chọn đúng kho để chỉ thấy đơn của kho mình, tránh nhầm lẫn workflow.

Trên màn hình NV thấy gì

  • Kho Bay · Tân Bình, TP.HCM · Lọc dịch vụ AIR
  • Kho Tàu · Hóc Môn, TP.HCM · Lọc dịch vụ SEA
  • Có nút đổi kho trong app khi đổi ca
Giai đoạn 1 — Bắt đầu ca

Trang chủ Tác vụ Kho — 4 việc còn lại trong ca

Sau khi vào app, NV thấy ngay tổng quan công việc trong ca: bao nhiêu Y/C lấy hàng cần đi, bao nhiêu đơn cần đóng, bao nhiêu cần in nhãn. Mỗi nhóm là một thẻ màu khác nhau với số đếm rõ ràng.

Trang chủ Tác vụ Kho
MÀN K-03Trang chủ Tác vụApp mobile

Trang chủ ca làm Kho Bay HCM

Đây là màn đầu tiên NV thấy sau khi đăng nhập. Banner trên cùng tổng kết nhanh khối lượng công việc. 5 thẻ màu phân loại theo 5 hoạt động chính trong ngày.

Trên màn hình NV thấy gì

  • Banner cam "4 việc còn lại — Y/C Lấy hàng + Đóng gói cần xử lý"
  • Filter thời gian: Hôm nay (chip) — đổi sang Tuần/Tháng được
  • 5 thẻ progress:
    • Pickup (1) — Y/C lấy hàng tại địa chỉ KH
    • Nhận hàng (0) — Đơn đã về kho cần xác nhận
    • Đóng gói (3) — Đơn cần cân đo đóng kiện
    • Xuất hàng — kèm FAB "Tạo đơn" nhanh
    • Trung chuyển (0) — Đơn chuyển kho khác
  • Bottom nav 3 tab: Tác vụ · Sách (manual) · Vận chuyển
Giai đoạn 2 — Pickup tại địa chỉ khách

NV đến tận nhà tôi lấy hàng

Sau khi thấy Y/C trên app, NV bấm vào để xem địa chỉ + SĐT, claim đơn để các đồng nghiệp biết "đã có người làm", đi đến nơi lấy hàng, xác nhận trên app "đã lấy xong".

Đặc biệt: nếu NV claim đơn nhưng quá 8 giờ không xác nhận, hệ thống tự thả lại để NV khác claim. Cơ chế này tránh đơn bị bỏ quên do NV bận hoặc đột ngột nghỉ.

Danh sách Y/C lấy hàng
MÀN K-04Pickup · Danh sáchApp mobile

Danh sách Yêu cầu lấy hàng

Từ thẻ Pickup ở trang chủ, NV bấm vào để xem danh sách tất cả Y/C đang chờ. Mỗi Y/C là một thẻ với mã đơn, tuyến, địa chỉ, SĐT.

Trên màn hình NV thấy gì

  • Filter: Trạng thái · Tuyến đường · Vận chuyển AIR
  • Tab khu vực: Tất cả hoặc Q1 (chỉ đơn Quận 1)
  • Thẻ Y/C với: mã NSE/S0..., tuyến (vd SGN → SIN), số kiện và cân nặng (lúc này còn 0), nhãn "Đơn mới"
  • Địa chỉ 12 Nguyễn Huệ, Q1, HCM bấm mở Google Maps
  • Số điện thoại bấm gọi luôn
  • Trạng thái phụ trách: "Tôi đang đi"
  • FAB Tạo đơn để tạo Y/C mới tại field nếu khách gọi gấp
Y/C lấy hàng với địa chỉ chi tiết
MÀN K-05Pickup · DetailApp mobile

Card Y/C mở rộng — địa chỉ và SĐT để liên hệ

Khi tap vào card Y/C, thẻ mở rộng hiển thị đầy đủ địa chỉ pickup + SĐT để NV liên hệ trước khi đến nơi. Có chevron > để mở Google Maps chỉ đường.

Trên màn hình NV thấy gì

  • Card Y/C với thông tin: [727] Tan dep trai · NSE689949 · S02100
  • Tuyến: SGN → KUL · 1 kiện · 60kg
  • Địa chỉ pickup: 86 Thái phiên với chevron mở Map
  • SĐT: +84 815 316 393 bấm để gọi
  • Phụ trách: Tôi · Đang đi (status badge)
  • Bottom nav badge 53 — thông báo real-time từ hệ thống
Chi tiết Y/C lấy hàng
MÀN K-06Pickup · Trao đổiApp mobile

Chi tiết Y/C — Trao đổi nội bộ và audit log

Mở chi tiết một Y/C, NV thấy đầy đủ thông tin: ai tạo Y/C, lúc nào, hạn chót, người phụ trách. Khu vực Trao đổi là nơi CS và NV ghi chú qua lại về đơn này.

Trên màn hình NV thấy gì

  • Người tạo Y/C: Admin · Tạo 25/05 14:18
  • Địa chỉ + SĐT bấm gọi
  • Hạn: 2026-05-25 — nếu quá hạn sẽ flag để CS gọi khách dời lịch
  • Phụ trách: Admin
  • Trao đổi (6): lịch sử ghi chú giữa CS, NV, hệ thống. Vd: "Bot tự động thả claim của Admin vì giữ quá 8h"
Xác nhận đã lấy xong
MÀN K-07Pickup · Xác nhậnApp mobile

Dialog "Xác nhận đã lấy xong?"

Sau khi đến nơi lấy được hàng, NV bấm "Đã lấy xong" → app hiện dialog xác nhận với địa chỉ + SĐT để NV double-check không bấm nhầm. NV có thể nhập ghi chú trước khi confirm.

Trên màn hình NV thấy gì

  • Tiêu đề: "Xác nhận đã lấy xong?"
  • Địa chỉ: 86 Thái phiên
  • SĐT: +84 815 316 393
  • Hạn: 2026-05-27
  • Ô ghi chú: đã điền sẵn "Nhân tai nha" (nhận tại nhà — note nội bộ)
  • Hint: "Photo: chụp ảnh chứng cứ qua chatter đơn sau khi hoàn tất"
  • Hai nút: Huỷ (xám) và Xác nhận (cam, primary)
Odoo state S2 - Đã nhận hàng
MÀN K-08Sync ngược → OdooOdoo · CS thấy

Hậu trường: ngay sau Xác nhận, Odoo tự cập nhật state S1 → S2

NV không thấy màn hình này (đây là phía Odoo, CS thấy), nhưng đáng để biết: vài giây sau khi bạn bấm Xác nhận ở K-07, hệ thống tự cập nhật state đơn S02100 từ S1 - Đơn mới lên S2 - Đã nhận hàng trên Odoo. CS ngồi văn phòng không phải gõ tay, không cần bạn gọi điện báo. Túi hàng và Mã Vận Đơn vẫn giữ nguyên — chỉ có state dropdown nhảy 1 nấc.

Trên Odoo CS thấy gì (sau Xác nhận của bạn)

  • State dropdown header: "S2 - Đã nhận hàng" (mũi tên đỏ chỉ vào) — nhảy tự động từ S1
  • Buttons header: Send by Email · Confirm · Preview · Cancel · In nhãn · Y/C Đóng hàng (mới xuất hiện ở state S2) · Y/C Lấy hàng · Quotation dropdown
  • Customer: [727]Tan dep trai · 86 Thái phiên, Huế, Vietnam
  • Túi hàng: BAG-202604-0019 · Mã Vận Đơn: NSE689949
  • Tuyến: SGN → KUL · AIR · Chuyến SHIP-202603-0001
  • Trọng lượng: Tổng KG 60.00 · Số kiện 1 · Quy đổi 20.833
Giai đoạn 3 — Hàng về tới kho

S2: Đã nhận hàng về kho

Khi NV mang hàng về kho, mở tab "Đã nhận hàng" để thấy danh sách những đơn mình mới mang về. Đơn chờ tới lượt xử lý đóng gói.

Đơn chờ nhận hàng S2
MÀN K-09S2 · Đã nhận hàngApp mobile

Danh sách đơn đã về kho

Tất cả đơn đã pickup nhưng chưa đóng gói. NV xem qua, ưu tiên đơn gấp hoặc khách VIP, rồi chuyển sang giai đoạn đóng gói.

Trên màn hình NV thấy gì

  • Filter chip "Đã nhận"
  • Tiêu đề: "Đơn chờ nhận hàng (S2)"
  • Thẻ đơn: avatar màu theo tên, mã NSE/S0..., tuyến, số kiện (vẫn 0)
  • Nhãn "Đã nhận hàng" (chấm xanh dương)
  • Đơn cũ nhất sort xuống dưới để dễ ưu tiên
Giai đoạn 4 — Đóng gói tại kho

S3: Cân, đo, ghi nhận từng kiện

Giai đoạn nhiều thao tác nhất. NV đo từng kiện, cân kg, chụp ảnh bằng chứng, ghi chú hàng đặc biệt. Mọi thao tác đều ghi lại để minh bạch với khách.

Số liệu cân-đo ở đây quyết định cước phí cuối của tôi — đặc biệt với hàng không vì cước tính theo cân quy đổi từ kích thước.

Hàng chờ đóng S3
MÀN K-10S3 · Danh sáchApp mobile

Hàng chờ đóng — Y/C đóng từ CS

CS có thể gửi Y/C đóng hàng cho đơn cụ thể khi khách đã chốt giá. NV thấy danh sách này, kèm ảnh minh hoạ (nếu CS đã chụp khi lấy đơn).

Trên màn hình NV thấy gì

  • Filter "Y/C đóng"
  • Thẻ đơn với tên KH, mã NSE/S0..., tuyến, số kiện, cân nặng tạm
  • Chip vàng nổi bật: "Y/C 26/05/2026 13:42:57 — Admin" + thumbnail ảnh
  • Trạng thái phân màu: "Xử lý tại kho" (tím), "Đã xuất kho" (xanh lá)
Chi tiết đơn trong túi
MÀN K-11S3 · Order detailApp mobile

Chi tiết đơn của KH tại kho

Màn hình quan trọng — NV thấy mọi thông tin đơn: KH, giai đoạn, túi đã gắn, số kiện, kích thước từng kiện.

Trên màn hình NV thấy gì

  • Banner xanh: "Đơn này đã được CS xác nhận"
  • Trạng thái: "Đã nhận hàng" + link "Xem timeline"
  • Chuyến hàng: "Chưa gán chuyến — Sales/CS sẽ assign sau khi đủ kiện" + nút "+ Gán"
  • Túi hàng: BAG-202604-0019 + nút "Xem"
  • Đơn hàng: [716] Nguyễn Anh Huy · Hàng thường · S02066 · 1 kiện · 1.0 kg
  • Hai bảng song song: Số đo kiện (Dài/Rộng/Cao) và Cân hàng (Kg + ảnh)
  • Toolbar bottom: QR scan · message · camera
Kế toán và bình luận
MÀN K-12S3 · Mở rộngApp mobile

Kế toán chi hộ và audit log

Cuộn xuống order detail, NV thấy 2 khu vực thêm. Kế toán để ghi tiền chi hộ. Bình luận và hoạt động lưu toàn bộ lịch sử ai làm gì lúc nào.

Trên màn hình NV thấy gì

  • Nút "+ Thêm kiện""=+ Thêm hàng loạt"
  • 3 thẻ thống kê: Tổng kiện · Tổng kg · Quy đổi kg
  • Kế toán: Số tiền + Ghi chú (vd "Mua thuốc") + nút thêm khoản
  • Ghi chú đặc biệt: textarea cho note nội bộ
  • Bình luận và hoạt động (8): activity feed — "+ Đã thêm vào túi BAG-202604-0019 bởi Nhan Pham" v.v.
Giai đoạn 5 — Gom túi và gắn chuyến

Túi gom đơn cùng tuyến — Chuyến chở túi lên máy bay/tàu

Gom nhiều đơn nhỏ thành 1 túi để tiết kiệm chi phí thủ tục. Mỗi túi gắn vào 1 chuyến cụ thể. Đơn lớn có thể đi loose (không gom túi).

Túi BAG main view
MÀN K-13Túi · DetailApp mobile

Chi tiết một túi BAG

Một túi là container ảo chứa nhiều đơn cùng tuyến. Màn hình thể hiện đầy đủ: số đơn, kg, số kiện, ai phụ trách, đã gắn chuyến chưa.

Trên màn hình NV thấy gì

  • Tiêu đề: BAG-202604-0019 + chip "Đóng gói"
  • Loại: AIR · Tuyến: SGN →
  • 3 thẻ mega-stat: 3 Đơn · 28 kg · 7 Kiện
  • NV Yêu cầu / NV Phụ trách
  • Chuyến hàng: Chưa gán
  • 2 nút: + Thêm đơn hàng (cam) và Niêm túi (xanh lá)
  • Danh sách đơn trong túi (3) với trạng thái mỗi đơn
Thêm đơn vào túi
MÀN K-14Túi · Thêm đơnApp mobile

Thêm đơn hàng vào túi

Trên BAG detail, bấm "+ Thêm đơn hàng" → bottom sheet search. Tìm theo mã đơn/AWB để gắn vào túi.

Trên màn hình NV thấy gì

  • Search bar: "Tìm theo mã đơn, AWB..."
  • Empty state: "Nhập mã đơn để bắt đầu tìm kiếm"
  • Gõ mã → suggestions → tick chọn để gắn vào túi
Chọn túi cho đơn
MÀN K-15Túi · ChọnApp mobile

Chọn túi cho 1 đơn cụ thể

Khi NV muốn gắn 1 đơn vào túi, app hiện list các túi khả dụng — ưu tiên túi cùng tuyến để giảm chi phí.

Trên màn hình NV thấy gì

  • Tiêu đề: "Chọn túi cho đơn S02066"
  • List túi sort theo trạng thái: Đóng gói trước, Nháp sau
  • Mỗi túi hiện: BAG-202604-..., tuyến, số đơn, kg, badge trạng thái
Gắn đơn vào đâu
MÀN K-16Định tuyếnApp mobile

Quyết định: gắn đơn vào Túi hay Chuyến?

Decision point quan trọng — NV chọn 1 trong 2 cách gắn đơn.

Trên màn hình NV thấy gì

  • Gắn vào Túi: "Đơn sẽ theo túi vào chuyến hàng. Phù hợp khi gom nhiều đơn cùng tuyến."
  • Gắn vào Chuyến: "Đơn lẻ trực tiếp vào chuyến, bỏ qua bước đóng túi."
Chọn chuyến cho đơn
MÀN K-17Chuyến · ChọnApp mobile

Chọn chuyến cho đơn

Khi chọn "Gắn vào Chuyến", app hiện list các SHIP cùng tuyến đường.

Trên màn hình NV thấy gì

  • Tiêu đề: "Chọn chuyến cho đơn S02066"
  • Card chuyến: SHIP-202604-0002 · ✈ SGN → PHI · 0 túi · 8 đơn · Nháp
Giai đoạn 6 — Niêm phong và xuất kho

In nhãn kiện, quét xác nhận, hoàn tất đóng gói

Phase cuối tại kho. Theo dõi đơn thật S02100 · SGN→KUL · AIR 1 kiện 60kg đi qua đầy đủ 5 bước: pair máy in → in nhãn QR → dán lên kiện → quét lại QR xác nhận → bấm hoàn tất → đơn sẵn sàng xuất kho.

Máy in đã pair + context đơn + stepper số kiện + preview PDF nhãn
MÀN K-18In ấn · Pair + PreviewApp mobile

Màn Printer — máy in đã ghép, sẵn sàng in nhãn đơn S02100

NV mở màn Printer trước khi in nhãn kiện. Trạng thái máy in "Đã kết nối TD-402S-A5D2" (xanh) — đã pair từ trước, không phải pair lại mỗi lần. Chip context xanh nhạt hiện đơn đang in: S02100 · NSE689949 · 1 kiện. Stepper "Số kiện" cho phép NV chọn in 1 hay nhiều label, preview PDF nhãn hiện ngay phía dưới để verify trước khi gửi xuống máy in.

Trên màn hình NV thấy gì

  • Header: ← "Printer" (background cam nhạt)
  • Status card xanh: ✓ "Đã kết nối TD-402S-A5D2" · MAC DC:0D:30:18:A5:D2
  • Order context chip xanh nhạt: ✓ "Đơn S02100 · NSE689949 · 1 kiện" — biết đơn nào đang in, không nhầm sang đơn khác
  • 3 button row:
    • "⟳ Đã ghép nối" (xanh nhạt) — refresh danh sách thiết bị đã pair
    • "📶 Quét mới" (cam, primary) — quét tìm máy in mới qua BLE
    • × — đóng/disconnect
  • "Thiết bị (1)": card xanh đã pair — TD-402S-A5D2 · MAC + pill "Đã ghép"
  • "Số kiện" stepper:1 + · hint "Backend sinh PDF có bấy nhiêu label. Lướt qua từng kiện ở khung xem trước để chọn in kiện nào."
  • "Xem trước PDF": "Đã chọn 1/1 kiện · lướt ◀ ▶ để xem từng kiện" + thumbnail PDF nhãn (cột PACKAGE QTY · NAME · SHIPMENT DATE · ORIGINAL · ID)
Printer screen scroll-down: Tỉ lệ in + In 1/1 kiện
MÀN K-19In ấn · Tỉ lệ + InApp mobile

Printer scroll-down — chỉnh tỉ lệ in, bấm In 1/1 kiện

Tiếp nối K-17, NV scroll xuống phía dưới màn Printer để chọn kiện cụ thể + chỉnh tỉ lệ in (80% mặc định) + bấm nút "In 1/1 kiện". Tỉ lệ in cho phép thu nhỏ/phóng to nhãn để fit giấy nhiệt 100×150 mm — chống tràn mép hoặc font quá to. Status box dưới cùng vẫn nhắc "Đã kết nối TD-402S-A5D2" để NV chắc chắn đang in đúng máy.

Trên màn hình NV thấy gì

  • Phần trên: preview nhãn PDF còn thấy 1 phần (header cột chữ số đơn + QR góc phải)
  • Navigator kiện: ◀ "Kiện 1 / 1" ▶ (lướt giữa các kiện nếu đơn nhiều kiện)
  • Checkbox ✓ "In kiện này" (cam tick sẵn) — bỏ tick để skip kiện đang xem
  • 2 nút batch: "Chọn tất cả" (xanh nhạt) · "Bỏ chọn hết" (outline)
  • Card "Tỉ lệ in": slider cam — track xanh nhạt — handle ở 80%. Hint: "Thu nhỏ/nở toàn bộ hình trên giấy 100×150 mm. Nội dung luôn được căn giữa."
  • Card "Thao tác": hint '"Lưu PDF" lưu toàn bộ 1 kiện vào Downloads. "In" chỉ gửi 1/1 kiện đang được tick.'
  • 2 button bottom:
    • "📄 Lưu PDF" (outline cam) — lưu xuống Downloads để in lại sau hoặc gửi mail
    • "🖨 In 1/1 kiện" (cam đặc, primary) — gửi job xuống máy in BLE ngay lập tức
  • Footer strip: "Đã kết nối TD-402S-A5D2" + nút × để disconnect
Bottom sheet quick-print từ order detail
MÀN K-20In ấn · Quick-printApp mobile

Bottom sheet quick-print — gọi nhanh từ order detail

Entry point thứ 2 cho việc in nhãn. Thay vì mở màn Printer riêng (K-17/K-18), NV bấm chip "🖨 In nhãn" trên order detail → bottom sheet trượt lên ngay tại context đơn. UI gọn hơn, không phải nhảy màn — phù hợp khi NV đang xem đơn và chỉ cần in 1-2 kiện nhanh.

Trên màn hình NV thấy gì

  • Background: order detail S02100 mờ phía sau (Tổng kiện 1 · Tổng kg 60 · Quy đổi 20.83 · section Kế Toán) — giữ context đơn nào đang in
  • Bottom sheet trượt lên:
    • Title: 🖨 "In nhãn kiện hàng"
    • Subtitle: "S02100 · mỗi kiện 1 nhãn S0XXXX.N + DRC + cân nặng + barcode" — giải thích nhãn chứa gì
    • Status box cam nhạt: ✓ "Đã kết nối TD-402S-A5D2" · MAC DC:0D:30:18:A5:D2
    • Row counter: "1/1 kiện đã chọn" · link cam "Bỏ chọn tất cả"
    • Checkbox row: ✓ S02100.1 · 50×50×50 cm · 60 kg
    • 3 button: Hủy (outline) · 📄 Lưu PDF (outline) · 🖨 In 1 (cam đặc, primary)
Quét mã QR camera
MÀN K-21Niêm túi · Scan cameraApp mobile

Quét lại nhãn QR vừa dán — xác nhận đúng kiện

Sau khi dán nhãn vào kiện, NV scan lại bằng camera điện thoại để hệ thống xác nhận "đúng nhãn này đã được dán vào kiện này". Bước này tránh việc dán nhầm nhãn của đơn A vào kiện của đơn B.

Trên màn hình NV thấy gì

  • Header tối: "Quét mã QR" + nút back + nút bật/tắt đèn flash
  • Camera preview chiếm phần trên, với khung scan màu xanh ngắm vào nhãn — thấy rõ logo "Express" và đường mũi tên của NewSky
  • Card thông tin: "0 / 1 kiện" · "Đưa QR vào khung trên"
  • Danh sách kiện cần scan: "Kiện 1 · 60.0 kg" (avatar tròn số 1)
  • Nút bottom xám disabled: "Xong (chưa đủ)" — mở thành "Xong" khi đã scan đủ tất cả kiện
Hoàn tất đóng kiện banner xanh
MÀN K-22Đóng kiện · Sẵn sàngApp mobile

Đã quét đủ — Sẵn sàng hoàn tất đóng gói

Sau khi scan đủ tất cả kiện, app chuyển sang màn "Hoàn tất đóng kiện". Banner xanh báo hiệu thành công. NV review thông tin lần cuối trước khi bấm xác nhận.

Trên màn hình NV thấy gì

  • Header: ← "Hoàn tất đóng kiện"
  • Banner xanh lá: icon tick xanh + "Đã quét đủ 1/1 kiện · Sẵn sàng hoàn tất đóng gói"
  • Mã đơn nổi bật (chip cam): S02100 · [727] Tan dep trai
  • Tuyến: cờ Việt Nam SGN → cờ Malaysia KUL · ✈ AIR
  • Khung Chuyến hàng: SHIP-202603-0001 + nút bút chì để chỉnh
  • Mô tả: 60.0 kg · 1 kiện · Hàng thường
  • Phần "Số liệu kiện hàng" với hint: "Tap số để sửa · Tap [icon thùng rác] để giảm kiện. Mọi thay đổi log chatter để Sales/CS trace."
  • 2 bảng song song: Số đo kiện (Dài/Rộng/Cao = 50/50/50) · Cân hàng (60kg + camera)
  • 3 action chip: + Thêm kiện · =+ Thêm hàng loạt · 🖨 In nhãn
  • Khu vực "Bình luận & hoạt động" ở dưới
Hoàn tất đóng kiện scroll down
MÀN K-23Đóng kiện · Audit + CTAApp mobile

Bình luận & hoạt động + Nút "Hoàn tất đóng kiện"

Cuộn xuống cuối màn, NV thấy khu audit log (8 hoạt động đã diễn ra) và 2 nút quyết định cuối: Quay lại (xám) hoặc Hoàn tất đóng kiện (xanh lá to). Bấm xanh = chốt đơn.

Trên màn hình NV thấy gì

  • Tuyến + Chuyến hàng + Mô tả đơn (lặp lại ở đầu)
  • Bảng Số đo kiện + Cân hàng (lặp lại)
  • 3 action chip + Thêm kiện · =+ Thêm hàng loạt · 🖨 In nhãn (lần cuối để chỉnh nếu cần)
  • Khu vực "Bình luận & hoạt động" với label: "8 hoạt động · Tap để xem + ghi chú" — toàn bộ lịch sử thao tác NV trên đơn này
  • 2 nút action ở bottom:
    • Quay lại (xám viền) — đóng lại nếu cần kiểm tra thêm, đơn không bị khoá
    • Hoàn tất đóng kiện (xanh lá, primary, full-width) — chốt đơn, không thể sửa nữa
Dialog đã hoàn tất đóng kiện
MÀN K-24Đóng kiện · Thành côngApp mobile

Dialog thành công — Đơn sẵn sàng xuất kho

Sau khi NV bấm "Hoàn tất đóng kiện", app hiện dialog xác nhận thành công với icon tick xanh to. Lúc này đơn của tôi chính thức rời khỏi vòng "Xử lý tại kho" (S3) sang "Hoàn tất xử lý" (S4), sẵn sàng được đẩy vào chuyến.

Trên màn hình NV thấy gì

  • Background mờ phía sau (modal overlay)
  • Card chính giữa với icon tick xanh to trong vòng tròn xanh lá
  • Tiêu đề lớn: "Đã hoàn tất đóng kiện"
  • Subtitle: "Đơn sẵn sàng xuất kho"
  • Dialog tự đóng sau 1-2 giây hoặc tap bất kỳ để đóng
Giai đoạn 7 — Xuất kho theo chuyến

Scan kiện theo chuyến SHIP — đẩy hàng lên xe đi sân bay/cảng

Sau khi đơn đã ở trạng thái S4 - Hoàn tất xử lý, đơn nằm chờ đến lượt được scan vào chuyến để xuất kho. NV mở app, chọn chuyến SHIP cụ thể (vd SHIP-202603-0001 đi Malaysia), scan từng kiện trong chuyến → đẩy túi ra xe.

Bước này khác với bước đóng kiện trước: xuất kho không scan kiện đơn lẻ mà scan kiện theo chuyến. Một chuyến SHIP chứa nhiều túi BAG, mỗi BAG chứa nhiều đơn, mỗi đơn có nhiều kiện. NV scan từng kiện đến khi đủ → chuyến sẵn sàng rời kho.

Đơn Hoàn tất xử lý sẵn sàng xuất kho
MÀN K-25Xuất kho · Pre-stateApp mobile

Đơn ở trạng thái Hoàn tất xử lý — sẵn sàng xuất kho

Ngay sau khi NV bấm "Hoàn tất đóng kiện" ở giai đoạn 6, đơn chuyển sang "Hoàn tất xử lý" (chấm xanh). App hiện CTA "Xuất kho" nổi bật ở góc dưới phải để NV bấm khi đến lúc xuất.

Trên màn hình NV thấy gì

  • Header: ← NSE689949 + menu 3 chấm + bút chì + máy in
  • Trạng thái: ● Hoàn tất xử lý (chấm xanh) + Xem timeline
  • Chuyến hàng: "Chưa gán chuyến — Sales/CS sẽ assign sau khi đủ kiện" + + Gán
  • Túi hàng: "Chưa gắn túi — Đơn này chưa được đóng vào túi nào" + + Gắn túi
  • Đơn hàng: [727] Tan dep trai · S02100 · 1 kiện · 60.0 kg + nút giảm kiện
  • Bảng Số đo kiện (50/50/50) + Cân hàng (60kg)
  • 2 chip "+ Đã đóng""=+ Đã đóng" (xám — đã hoàn tất, không cho thêm kiện)
  • Thẻ tổng (3 mini-card): Tổng kiện · Tổng kg · Quy đổi
  • Bottom toolbar: QR scan · message · camera
  • CTA chính (cam, floating): 🚚 Xuất kho
Đơn đã gắn túi chuyến chuẩn bị xuất kho
MÀN K-26Xuất kho · Đã gắn túiApp mobile

Đã có Y/C đóng hàng + đã gắn túi/chuyến — Xuất kho ngay

Sau khi CS gán chuyến + túi từ Odoo, app NV cập nhật ngay: hiện banner cam Y/C đóng hàng, hiện thông tin chuyến SHIP-202603-0001 và túi BAG-202604-0019. CTA "Xuất kho" kích hoạt mạnh hơn.

Trên màn hình NV thấy gì

  • Banner cam: "Yêu cầu đóng hàng từ Admin lúc 07:31 hôm nay · Admin phụ trách"
  • Trạng thái: ● Hoàn tất xử lý + chip "Chưa CS"
  • Chuyến hàng: 🚚 SHIP-202603-0001 · 🇻🇳 SGN → 🇲🇾 KUL · ✈ AIR + Xem →
  • Túi hàng: 📦 BAG-202604-0019 + "Tap để xem chi tiết túi · các đơn anh em" + Xem →
  • Đơn hàng: [727] Tan dep trai + chip Hàng thường
  • S02100 · 1 kiện · 60.0 kg
  • Bảng Số đo kiện + Cân hàng
  • 2 chip "+ Đã đóng" / "=+ Đã đóng"
  • Bottom toolbar: QR scan · message · camera
  • CTA chính (cam pill lớn): 🚚 Xuất kho
Xuất kho chuyến scan kiện
MÀN K-27Xuất kho · Scan chuyếnApp mobile

Xuất Kho theo chuyến SHIP — Scan từng kiện đẩy ra xe

NV mở chuyến cụ thể, thấy toàn bộ túi và kiện trong chuyến. Tiến độ scan tổng "0/9 kiện". NV bấm "Scan kiện" → camera mở → scan từng nhãn QR đã dán trên kiện. Khi đủ 9/9, chuyến được niêm phong + sẵn sàng đẩy ra xe sân bay.

Trên màn hình NV thấy gì

  • Header: ← "Xuất Kho · SHIP-202603-0001" + "Đến: MY"
  • Card chính: icon xe tải xanh + "0 / 9 kiện · Tiến độ scan: 0%"
  • Túi hàng — 4 (số BAG trong chuyến):
    • BAG-202604-0001 · 0/1 → S01511 0/1 → Kiện #1 5.0 kg (#2255)
    • BAG-202604-0004 · 0/1 → S01520 0/1 → Kiện #1 15.0 kg (#2275)
    • BAG-202604-0011 · 0/1 → S01519 0/1 → Kiện #1 1.0 kg + S01522 0/0
    • BAG-202604-0012 · 0/3 → S01516 0/3 → Kiện #1 50.0kg #2269 · Kiện #2 100.0kg #2270 · Kiện #3 200.0kg #2271
  • Hàng lẻ — 3 đơn (đơn không gom túi): S01518 0/1 · ...
  • CTA chính (cam pill lớn, floating): 🔲 Scan kiện → mở camera
Quét QR camera + bottom sheet xác nhận đã đủ kiện
MÀN K-28Xuất kho · Quét QRApp mobile

Camera quét mã QR — bottom sheet xác nhận kiện đã scan

NV bấm "Scan kiện" ở K-25 → camera mở fullscreen với viewfinder xanh. Khi NV chĩa camera vào nhãn QR dán trên kiện, app tự nhận diện + match với đơn trong chuyến. Bottom sheet trượt lên ngay với banner xanh "✓ S02100 đã đủ kiện" và highlight chính xác đơn vừa quét — không cần NV thoát camera để kiểm tra.

Trên màn hình NV thấy gì

  • Header tối: ← "Quét mã QR" + nút tắt flash
  • Viewfinder xanh giữa màn — vùng camera đang quét
  • Bottom sheet trượt lên sau khi scan thành công:
    • Banner xanh trên cùng: "✓ S02100 đã đủ kiện"
    • BAG-202604-0012 · 0/3 (chưa scan): S01516 với 3 kiện 50/100/200kg
    • BAG-202604-0019 · 1/2 (đã scan 1):
      • S02097 · 0/1 · Kiện #1 5.0kg · 10×10×10 (#2883) — chưa scan
      • ✓ S02100 · 1/1 · Kiện #1 60.0kg · 50×50×50 (#2886) — HIGHLIGHT xanh, vừa scan xong
  • CTA chính (cam, full-width):Hoàn tất quét (1) — đếm số kiện đã scan trong session này
Danh sách 5 túi sau khi quét, S02100 đã đủ kiện
MÀN K-29Xuất kho · Đủ kiệnApp mobile

Quay lại list — S02100 đã đủ kiện, footer hiện "1 đơn sẵn sàng xuất"

NV đóng camera, quay lại list view. Banner xanh trên cùng vẫn ghi "✓ S02100 đã đủ kiện". Counter chuyến cập nhật: trước là 0/9, giờ thêm BAG-0019 → tổng 1/11 kiện. Footer mới xuất hiện cụm CTA xanh "Xác nhận Xuất" — đó là tín hiệu sẵn sàng đẩy đơn S02100 sang state S5.

Trên màn hình NV thấy gì

  • Banner xanh: "✓ S02100 đã đủ kiện" (notification từ K-26)
  • Counter chuyến: 1 / 11 kiện (tăng từ 0/9 vì BAG-0019 mới được gắn thêm + đã scan 1)
  • Túi hàng — 5 (tăng từ 4 BAG):
    • BAG-0001 · 0/1 · BAG-0004 · 0/1 · BAG-0011 · 0/1 · BAG-0012 · 0/3 (chưa scan)
    • BAG-202604-0019 · 1/2 (đã scan kiện S02100, còn S02097 chưa) — icon BAG đổi xanh đậm
  • CTA giữa: 🔲 Scan kiện (cam) — tiếp tục scan các kiện còn lại
  • Footer mới xuất hiện:
    • Trái: "1 kiện đã quét · 1 đơn sẵn sàng xuất" (text xanh)
    • Phải: 🚚 Xác nhận Xuất (pill xanh đậm) — gửi đơn S02100 sang state S5
Dialog xác nhận xuất hàng s4 sang s5
MÀN K-30Xuất kho · Confirm dialogApp mobile

Dialog "Xác nhận xuất hàng?" — partial split rõ ràng

NV bấm "Xác nhận Xuất" ở K-27 → dialog modal xanh trượt vào giữa với icon xe tải. Dialog liệt kê chính xác hệ thống sẽ làm gì: 1 đơn đủ kiện → chuyển s4→s5, 9 đơn còn dở → giữ nguyên cho session sau. Đây là safety check cuối cùng trước khi commit state Odoo.

Trên màn hình NV thấy gì

  • Icon xe tải xanh giữa header dialog
  • Tiêu đề: "Xác nhận xuất hàng?"
  • Body:
    • "Đã scan 1 kiện."
    • 1 đơn đủ kiện → chuyển s4→s5
    • 9 đơn còn dở → giữ nguyên (scan tiếp sau)
  • 2 button: Hủy (text cam, trái) · Xác nhận (text cam đậm, phải)
  • Background sau dialog mờ — list 5 BAG vẫn thấy được, giữ context
Banner kết quả sau xác nhận xuất hàng
MÀN K-31Xuất kho · ResultApp mobile

Sau xác nhận — banner xanh báo kết quả, S02100 đã commit s5

Bấm "Xác nhận" ở K-28, dialog đóng + banner xanh thay thế dòng "✓ S02100 đã đủ kiện" thành "✓ Xuất 0 đơn (s4→s5) · 1 đơn còn dở". Đơn S02100 đã được commit lên Odoo (xem CS-09 để thấy state trên Odoo) và sau đó được rút khỏi list — chỉ còn các đơn chưa quét. Footer vẫn ghi "1 đơn sẵn sàng xuất" cho đợt sau.

Trên màn hình NV thấy gì

  • Banner xanh kết quả: "✓ Xuất 0 đơn (s4→s5) · 1 đơn còn dở" — counter cập nhật từ session vừa rồi
  • Counter chuyến giữ nguyên 1/11 kiện (đã commit nhưng chưa refresh)
  • List 5 BAG vẫn render — UI cho phép NV tiếp tục scan các kiện còn lại
  • BAG-202604-0019 vẫn ở 1/2 — kiện S02100 đã xuất, kiện S02097 còn chờ
  • Footer vẫn hiện "1 kiện đã quét · 1 đơn sẵn sàng xuất" + nút 🚚 Xác nhận Xuất cho đợt tiếp
Quản lý điều phối

Trưởng kho và supervisor — Dashboard, Search, Báo cáo

Ngoài các tác vụ hằng ngày (pickup, đóng gói, niêm túi), app còn có bộ công cụ quản lý dành cho trưởng kho / supervisor: dashboard tổng quan, search & filter đa chiều, tạo đơn ad-hoc tại field, quản lý đơn nháp, báo cáo thống kê.

Dashboard tổng quan
MÀN K-32Quản lý · DashboardApp mobile

Dashboard kho Tân Sơn Nhất

Tổng quan trạng thái mọi đơn, túi, chuyến đang chạy trong tuần. Trưởng kho nhìn 5 giây nắm pulse cả ca.

Trên màn hình thấy gì

  • Header: "Tân Sơn Nhất · Ca" + nút đổi kho, QR scan, user menu
  • Search bar + date range chip (25/05 - 31/05/2026)
  • Trạng thái đơn — Kho hàng:
    6Đơn mới
    4Đã nhận
    3Xử lý kho
    2Hoàn tất
  • Vận chuyển: Đang vận ch · Thủ tục NK · Đã đến kho · Đang giao hà
  • Túi đang xử lý (9 túi): horizontal scroll cards
  • Chuyến hàng (3 chuyến): SHIP-... Nháp · Đã xác nhận
  • Quét gần đây + Xem tất cả
Danh sách đơn search
MÀN K-33Quản lý · SearchApp mobile

Danh sách đơn theo bộ lọc

Sau khi áp filter (vd "đơn mới tuần này tuyến SGN→SIN"), app hiện list các thẻ đơn với tóm tắt.

Trên màn hình thấy gì

  • Chip lọc active: 25/05-31/05/2026 · Đơn mới · Tuyến đường
  • Summary: 6 Đơn · 7 Kiện · 65.05 kg
  • Mỗi card: S02096 · 27/05 · [727]Tan dep trai · 1 kiện · 5 kg · KUL→SGN · SEA · Đơn mới
Search modal
MÀN K-34Quản lý · Search modalApp mobile

Tìm theo mã đơn, AWB, khách

Full-screen search modal để locate đơn nhanh khi cần.

Trên màn hình thấy gì

  • Search input: "Tìm theo mã đơn, AWB, khách..."
  • Filter active vẫn preserved
  • Live results theo keyword + chip active
  • X góc trên close về dashboard
Chọn tuyến đường
MÀN K-35Quản lý · TuyếnApp mobile

Chọn tuyến đường để lọc

Bottom sheet chỉ list các tuyến đang có đơn — không show toàn bộ master để giảm noise.

Trên màn hình thấy gì

  • Title: "Chọn tuyến đường — Tuyến lấy từ 6 đơn đã tải"
  • Default: Tất cả tuyến (highlighted) + nút X clear
  • Options: KUL→SGN · MNL→SGN · SGN→SIN
Filter trạng thái và hoạt động
MÀN K-36Quản lý · FilterApp mobile

Filter đa giai đoạn + Hoạt động Y/C

Filter advanced — multi-select trạng thái + toggle "Có Y/C" để tìm đơn cần xử lý ngay.

Trên màn hình thấy gì

  • TRẠNG THÁI ĐƠN — chọn nhiều giai đoạn:
    • Đơn mới · Đã nhận · Xử lý kho (đang check)
    • Hoàn tất · Đã xuất kho (uncheck)
  • HOẠT ĐỘNG — toggle:
    • Có Y/C đóng hàng — "Chỉ hiện đơn đang chờ Kho đóng"
    • Có Y/C lấy hàng — "Chỉ hiện đơn đang chờ pickup"
  • Buttons: Hủy · Áp dụng (cam)
Tạo đơn step 1
MÀN K-37Quản lý · Tạo đơnApp mobile

Tạo đơn ad-hoc tại field — Bước 1 Thông tin

Trưởng kho có thể tạo đơn ad-hoc khi khách gọi gấp tại field. Wizard 2 bước với validation sticky bar.

Trên màn hình thấy gì

  • Stepper: ① Thông tin (active) ── ② Kiện hàng
  • THÔNG TIN ĐƠN HÀNG: Mã KH * + Tên KH * + Tạo khách mới
  • THÔNG TIN VẬN CHUYỂN: Ngày tạo đơn 27/05 · Dịch vụ Sea/Air toggle · Tuyến đường · Chuyến hàng
  • Validation: "Thiếu: tên khách hàng hoặc tuyến đường" + Tiếp tục disabled
Tạo đơn step 2
MÀN K-38Quản lý · Tạo đơnApp mobile

Tạo đơn ad-hoc — Bước 2 Kiện hàng

Bước 2 nhập danh sách kiện + chi hộ + phí khác. Realtime tính kg quy đổi.

Trên màn hình thấy gì

  • Stepper: ✓ Thông tin ── ② Kiện hàng (active)
  • CHI HỘ: + Thêm khoản chi hộ
  • TỔNG QUAN GỬI HÀNG (purple card):
    0kg thực
    0kg quy đổi
    0kg tính phí
  • Danh sách kiện: table # · Dài · Rộng · Cao · Kg
  • Actions: + Thêm kiện · + Hàng loạt
  • Phí khác: "Băng keo, đóng kiện đặc biệt, phí lẻ"
  • Bottom: Camera · + Tạo đơn (cam, primary)
Đơn nháp
MÀN K-39Quản lý · Đơn nhápApp mobile

Đơn nháp · 3 — Tiếp tục đơn dang dở

Đơn tạo dang dở (chưa có kiện) lưu nháp. Trưởng kho mở lại tiếp tục hoặc xoá.

Trên màn hình thấy gì

  • Header: ← Đơn nháp · 3 · 🗑 bulk delete
  • Card đơn nháp (cam pastel) với KH, tuyến, "Chưa có kiện", "Sửa lần cuối X" + Tiếp tục →
  • Per-row trash + Tiếp tục mở lại wizard
Báo cáo và Thống kê
MÀN K-40Quản lý · Báo cáoApp mobile

Báo cáo & Thống kê tuần/tháng/quý

Single-screen analytics — switch tab thay vì màn riêng. KPI + xu hướng theo ngày.

Trên màn hình thấy gì

  • Tabs: Tuần (active) · Tháng · Quý
  • Tổng quan — 4 KPI cards:
    16Tổng đơn hàng
    0Đơn hoàn thành
    0%Tỷ lệ hoàn thành
    0Tổng túi đã niêm
  • Trạng thái vận đơn: pills Đơn mới 6 · Đã nhận 4 · Xử lý kho 3
  • Xu hướng tuần: bar chart 2·3·2·3·3·2·1