{% extends "base.html" %} {% block title %}Master POS - FinansialApp{% endblock %} {% block page_title %}Master POS{% endblock %} {% block content %}
Periode: {% if period == 'day' %}
{% endif %}
Omzet (periode)
{{ kpi_period.v|rp }}
{{ kpi_period.c }} transaksi
{% if period == 'day' and selected_date_s != today_s %}{{ selected_date_s }}{% else %}Hari Ini{% endif %}
{{ kpi_today.v|rp }}
{{ kpi_today.c }} transaksi
Rata-rata / Trx
{{ avg_trx|rp }}
average ticket size
Shift Aktif
{{ open_shifts_cnt }}
kasir sedang buka
Orderan per Jam
{% set hourly_date_s = hourly_date|default(today_s, true) %}
Bandingkan tanggal:
Metode Bayar (Periode)
{% for m, v in pay_split.items() %}
{{ m }} {{ v.v|rp }}
{{ v.c }} transaksi
{% else %}
Belum ada transaksi di periode ini.
{% endfor %}
Trend Omzet (Periode)
{{ date_from }} s/d {{ date_to }} {% if trend_is_weekly %}agregat mingguan{% endif %}
Top Kasir (Periode)
{% for k in top_kasir %} {% else %} {% endfor %}
#KasirTrxOmzet
{{ loop.index }} {% if loop.index == 1 %}{% endif %} {{ k.kasir }} {{ k.jml }} {{ k.omzet|rp }}
Belum ada transaksi.
{# Top Produk & Daftar Transaksi tampil untuk semua periode (sinkron dengan KPI) #}
Top Produk Terjual (Periode)
via POS
{% if top_produk_day %} {% for p in top_produk_day %} {% endfor %}
#ProdukQtyEst. Revenue
{{ loop.index }} {% if loop.index == 1 %}{% endif %} {{ p.nama }} {{ p.qty|qty }} {{ p.satuan }} {{ p.est_revenue|rp }}
{% else %}
Belum ada penjualan produk hari ini.
{% endif %}
Semua Transaksi
{{ daily_transactions|length }} transaksi
{% if daily_transactions %} {% for t in daily_transactions %} {% endfor %}
Struk Tgl / Jam Kasir Metode Total
{{ t.nomor_struk }} {{ t.tanggal }}
{{ t.dibuat[11:16] if t.dibuat else '-' }}
{{ t.kasir_nama or '-' }} {{ t.metode_bayar }} {{ t.total|rp }}
{% else %}
Belum ada transaksi pada periode ini.
{% endif %}
Jadwal Shift — {% if period == 'day' and selected_date_s != today_s %}{{ selected_date_s }}{% else %}Hari Ini + Yang Sedang Open{% endif %}
{% for s in shifts %} {% else %} {% endfor %}
Status Kasir Dibuka Ditutup Trx Omzet Selisih Kas
{% if s.status == 'OPEN' %} Open {% else %} Closed {% endif %} {{ s.kasir_nama }} {{ s.dibuka }} {{ s.ditutup or '-' }} {{ s.jml_trx }} {{ s.omzet|rp }} {% if s.status == 'OPEN' %}- {% else %}{{ s.selisih|rp }}{% endif %}
Belum ada shift hari ini.
Formasi Kasir (Daftar Akun KASIR)
{{ kasir_users|length }} akun
{% for u in kasir_users %} {% else %} {% endfor %}
# Username Nama Status Aksi
{{ loop.index }} {{ u.username }} {{ u.nama }} {% if u.aktif %} Aktif {% else %} Nonaktif {% endif %}
Belum ada kasir. Klik Tambah Kasir di pojok kanan atas tabel ini.
Tampilan Kasir
Ukuran kartu produk & mode ikon di halaman POS Kasir
Kunci Diskon Nota
Cegah kasir memberi diskon sembarangan tanpa izin supervisor
Saat aktif, field Diskon Nota di kasir terkunci. Kasir harus menekan "Buka Diskon" dan memasukkan PIN supervisor untuk memberi diskon.
Kosongkan kalau tidak ingin mengubah PIN.
{% if pos_diskon_has_pin %}
{% endif %}
Voucher Diskon
Kode promo yang bisa dipakai kasir untuk memberi diskon terotorisasi Kelola Voucher
Buat kode voucher (nominal atau persen) dengan minimal belanja, kuota, dan masa berlaku. Kasir cukup ketik kodenya di halaman POS; potongan voucher otomatis sah tanpa perlu PIN supervisor.
{% if session.role == 'ADMIN' %}
Setting POS
{% endif %} {% endblock %} {% block scripts %} {% endblock %}