Skip to content

Admin · Cấu hình tham số

Quick Reference — Trang /admin/config root → vào 3 sub: Định mức (UPH), Tham số (mùa, event), Kho.

Các nhóm config

TrangSửa gìTần suất
/admin/config/thamsomonthly_multiplier[m], event_multiplier[e]Đầu tháng / khi planner kêu lệch
/admin/config/dinhmucUPH[warehouse, group, pk_type]Khi đo lại năng suất
/admin/warehousesDanh mục kho, active flagHiếm

SOP 1 · Sửa monthly multiplier

#
1Vào /admin/config/thamsoTab "Mùa" mặc định
2Tìm row tháng cần sửa (vd T6 = 1.0)
3Click vào giá trị → nhập mới (vd 1.2)
4Bấm "Lưu"Toast OK + audit log row
5(optional) Bấm "Rerun nightly"Forecast tính lại trong 1-2 phút

WARNING

Sửa multiplier ảnh hưởng toàn bộ forecast của tháng đó. Test ở staging trước khi sửa prod.

SOP 2 · Sửa event multiplier

#
1Tab "Sự kiện"
2Edit row event_type (vd MEGA_SALE = 4.5 → 5.0)
3LưuAudit log ghi before/after

Event mặc định:

event_typeDefault multKhi dùng
NORMAL1.0Ngày thường
MID_MONTH1.815 hàng tháng
DOUBLE_DAY2.56.6, 7.7, 8.8…
MEGA_SALE4.511.11, 12.12
BLACK_FRIDAY3.5Tuần cuối T11

SOP 3 · Sửa UPH config (định mức)

#
1Vào /admin/config/dinhmucBảng matrix
2Filter theo khoBảng còn rows của kho đó
3Sửa ô (group × pk_type)
4Lưu

UPH gợi ý baseline (đơn/giờ/người):

groupSBMIXHVY
NORMAL604525
FRAGILE4030
HAZMAT302520

TIP

Số này khác nhau theo kho. Dùng time study thực tế để lấy số chính xác.

SOP 4 · Quản lý kho

/admin/warehouses → AddMở dialog tạo kho mới
Điền code, name, shift_minutes mặc định
SaveKho xuất hiện trong dropdown scope

DANGER

KHÔNG xoá kho có data lịch sử. Chỉ set active=false để ẩn khỏi list.

Audit cho mọi thay đổi config

Mọi thay đổi config tự động ghi audit_log với:

  • action = CONFIG_CHANGE
  • before = giá trị cũ
  • after = giá trị mới
  • actor_id = bạn

Auditor đọc được toàn bộ.

Lỗi thường gặp

"Validation error: multiplier must be ≥ 0"

Hệ số phải ≥ 0. Negative không có nghĩa. Nếu muốn "giảm" → dùng < 1 (vd 0.7).

Sửa rồi mà forecast chưa đổi
  • Nightly job chạy 02:00 → đợi sang hôm sau
  • Hoặc bấm "Rerun" thủ công ở trang config
  • Hoặc dùng npm run demo:reset (chỉ env demo)