{% set LOAI_LABEL = {'ca':'Theo ca','dau_ca1':'Đầu ca 1','chuyen_ca12':'Chuyển ca 1-2','cuoi_ca2':'Cuối ca 2','ngay':'Theo ngày','tuan':'Theo tuần','thang':'Theo tháng','nam':'Theo năm','thu_cong':'Tùy chỉnh'} %} {% set KQ_LABEL = {'co_mat':'Có mặt','khong_co':'Thiếu','thua':'Thừa','that_lac':'Thất lạc','chua_kiem':'Chưa kiểm'} %} {% set thieu_list = chi_tiet | selectattr('ket_qua_kiem','equalto','khong_co') | list %} {% set thua_list = chi_tiet | selectattr('ket_qua_kiem','equalto','thua') | list %} {% set that_lac_list = chi_tiet | selectattr('ket_qua_kiem','equalto','that_lac') | list %} {% set co_mat_count = chi_tiet | selectattr('ket_qua_kiem','equalto','co_mat') | list | length %} {% set chua_kiem_count = chi_tiet | selectattr('ket_qua_kiem','equalto','chua_kiem') | list | length %} {% set tong_thieu = thieu_list | sum(attribute='gia_ban') %} {% set thieu_rfid_count = thieu_list | selectattr('rfid_uid') | list | length %} {% set thieu_list = (thieu_list | selectattr('rfid_uid') | list) + (thieu_list | rejectattr('rfid_uid') | list) %} {% set nguoi_kiem_list = (phien.nguoi_kiem or '') | trim %} {% set nguoi_kiem_names = nguoi_kiem_list.split(',') if nguoi_kiem_list else [] %} {% set nguoi_kiem_names = nguoi_kiem_names | map('trim') | reject('equalto', '') | list %}
← Quay lại Kiểm kho
Logo
{{ brand.ten_phap_nhan }}
Biên Bản Kiểm Kê Kho Hàng
{{ brand.dia_chi_phap_nhan }} · ĐT: {{ brand.hotline }}
Số phiếu: {{ phien.ma_phien }}
Loại kiểm kê: {{ LOAI_LABEL.get(phien.loai_phien, phien.loai_phien) }}
Thời gian bắt đầu: {{ phien.created_at or '—' }}
Thời gian hoàn thành: {{ phien.completed_at or '—' }}
{% if phien.tu_ngay or phien.den_ngay %}
Kỳ kiểm kê: {{ phien.tu_ngay or '....' }} → {{ phien.den_ngay or '....' }}
Người kiểm kho: {{ phien.nguoi_kiem or '....................' }}
{% else %}
Người kiểm kho: {{ phien.nguoi_kiem or '....................' }}
{% endif %} {% if phien.ghi_chu %}
Ghi chú: {{ phien.ghi_chu }}
{% endif %}
Tổng SP ✅ Có mặt ❌ Thiếu ➕ Thừa ⚠️ Thất lạc ⬜ Chưa kiểm ❓ Mã lạ
{{ chi_tiet | length }} {{ co_mat_count }} {{ thieu_list | length }} {{ thua_list | length }} {{ that_lac_list | length }} {{ chua_kiem_count }} {{ ma_la | length }}
❌ Danh sách hàng hóa bị thiếu ({{ thieu_list | length }}) {% if thieu_rfid_count > 0 %} — trong đó {{ thieu_rfid_count }} món ĐÃ GẮN RFID {% endif %}
{% if thieu_list %} {% for it in thieu_list %} {% endfor %} {% else %} {% endif %}
STT Mã SP Tên hàng Loại vàng KL Vàng (chỉ) Giá trị Theo dõi
{{ loop.index }} {{ it.ma_hang or '—' }} {{ it.ten or '—' }} {{ it.loai_vang or '—' }} {{ '%.3f'|format(it.kl_vang or 0) }} {{ '{:,.0f}'.format((it.gia_ban or 0) * 1000).replace(',', '.') }} {% if it.rfid_uid %} 📡 RFID {% else %} 🔖 Mã vạch {% endif %}
Tổng giá trị hàng thiếu: {{ '{:,.0f}'.format((tong_thieu or 0) * 1000).replace(',', '.') }} đ
Không có hàng hóa nào bị thiếu
{% if thua_list %}
➕ Danh sách hàng hóa dư thừa ({{ thua_list | length }})
{% for it in thua_list %} {% endfor %}
STT Mã SP Tên hàng Loại vàng KL Vàng (chỉ)
{{ loop.index }} {{ it.ma_hang or '—' }} {{ it.ten or '—' }} {{ it.loai_vang or '—' }} {{ '%.3f'|format(it.kl_vang or 0) }}
{% endif %} {% if that_lac_list %}
⚠️ Danh sách hàng hóa thất lạc ({{ that_lac_list | length }})
{% for it in that_lac_list %} {% endfor %}
STT Mã SP Tên hàng Loại vàng Giá trị
{{ loop.index }} {{ it.ma_hang or '—' }} {{ it.ten or '—' }} {{ it.loai_vang or '—' }} {{ '{:,.0f}'.format((it.gia_ban or 0) * 1000).replace(',', '.') }}
{% endif %} {% if ma_la %}
❓ Mã lạ — quét được tại kho nhưng KHÔNG có trong hệ thống ({{ ma_la | length }})
{% for m in ma_la %} {% endfor %}
STT Mã quét được Số lần quét Quét lần đầu lúc
{{ loop.index }} {{ m.code }} {{ m.count or 1 }} {{ m.first_time or '—' }}
Mã lạ có thể là: hàng chưa nhập vào hệ thống, tem in sai, hoặc hàng không thuộc cửa hàng — cần đối soát và xử lý từng mã.
{% endif %}
Biên bản này được lập trên cơ sở kết quả kiểm kê thực tế đối chiếu với sổ sách tồn kho tại thời điểm nêu trên. Các bên liên quan đã cùng kiểm tra, thống nhất số liệu và ký xác nhận dưới đây.
{% if nguoi_kiem_names %} {% for ten in nguoi_kiem_names %}
Người kiểm kho{% if nguoi_kiem_names|length > 1 %} (ca {{ loop.index }}){% endif %}
(Ký, ghi rõ họ tên)
 
{% endfor %} {% else %}
Người kiểm kho
(Ký, ghi rõ họ tên)
{% endif %}
Người giám sát / Quản lý
(Ký, ghi rõ họ tên)