Poin & Toko
Ringkasan
Sistem poin memberikan poin kepada anggota karena menyelesaikan item tugas. Poin menggerakkan papan peringkat opsional dan toko opsional tempat anggota bisa menukar poin dengan hadiah yang ditentukan Root. Ketiga komponen berada di balik feature flag terpisah dan bisa diaktifkan secara independen.
Membutuhkan: feature flag
points_system(sakelar utama). Flag papan peringkat dan toko baru berfungsi saatpoints_systemjuga aktif.
Feature flag
| Flag | Apa yang dikontrolnya |
|---|---|
points_system | Sakelar utama. Mengaktifkan pemberian poin saat penyelesaian tugas. |
show_points_to_users | Menampilkan saldo poin anggota sendiri di kartu statistik dasbor dan profil mereka. Membutuhkan points_system aktif. |
leaderboard_enabled | Menampilkan papan peringkat mingguan di dasbor yang memeringkat semua anggota berdasarkan poin. Saat nonaktif, anggota tetap bisa melihat skor mereka sendiri tetapi bukan skor orang lain. |
store_enabled | Mengaktifkan item navigasi Toko dan alur penukaran. |
Dua jenis poin
Ziptask punya dua field poin yang independen pada setiap item tugas:
| Field | Tujuan | Siapa yang menyetelnya |
|---|---|---|
| Poin Hadiah | Mata uang gamifikasi — diberikan kepada anggota yang menyelesaikan item. Menggerakkan kartu statistik dasbor, papan peringkat, dan saldo toko. | Admin / Root |
| Estimasi Poin Usaha | Estimasi kerja — mewakili bobot usaha item. Dipakai oleh fitur Proyek untuk menghitung biaya estimasi vs. yang diperoleh. Tidak berpengaruh pada saldo anggota. | Admin / Root |
Kedua field dibatasi oleh flag points_system. Poin Hadiah dan Estimasi Poin Usaha sepenuhnya independen — mengubah satu tidak memengaruhi yang lain.
Poin (hadiah)
Cara poin hadiah diperoleh
Poin Hadiah diberikan saat seorang anggota memindahkan item tugas dari DOING ke COMPLETED. Jika item COMPLETED diatur ulang ke TODO (oleh Admin/Root), poin hadiah otomatis dibatalkan.
Penyesuaian poin retroaktif
Admin dan Root bisa mengubah nilai Poin Hadiah pada item COMPLETED kapan saja. Penyesuaian diterapkan otomatis:
- Kenaikan — selisihnya langsung diberikan kepada anggota yang mengerjakan pekerjaan.
- Penurunan — selisihnya langsung dikurangi dari saldo anggota. Pengurangan dibatasi minimal nol: jika anggota sudah membelanjakan poinnya, saldo tidak akan menjadi negatif.
Poin selalu diatribusikan kepada anggota yang ditugaskan item itu (pelaku). Untuk item yang membutuhkan persetujuan, ini adalah anggota yang menyelesaikan pekerjaan, bukan admin yang menyetujuinya.
Visibilitas poin
Saat show_points_to_users aktif, anggota bisa melihat saldo poin hadiah mereka sendiri di kartu statistik dasbor dan profil mereka. Saat leaderboard_enabled juga aktif, semua orang bisa melihat total mingguan semua anggota di papan peringkat.
Riwayat poin
Saat points_system aktif, anggota bisa melihat jejak audit lengkap atas aktivitas poin hadiah mereka sendiri dari halaman profil mereka (Profil → tab Poin). Setiap entri menampilkan jenis tindakan, judul item tugas atau nama item toko, poin yang diperoleh atau dibelanjakan, dan tanggalnya. Daftar terpaginasi dan mendukung gulir tak terbatas.
Izin — Poin
| Tindakan | Anggota | Admin | Root |
|---|---|---|---|
| Memperoleh poin (penyelesaian tugas) | ✓ | ✓ | ✓ |
| Melihat total poin sendiri | ✓ | ✓ | ✓ |
| Melihat riwayat poin sendiri | ✓ | ✓ | ✓ |
| Melihat papan peringkat (saat aktif) | ✓ | ✓ | ✓ |
Toko
Membutuhkan:
points_system+store_enabledsama-sama aktif.
Cara kerjanya
Root membuat katalog item yang bisa ditukar, masing-masing dengan biaya poin. Anggota menelusuri toko, meminta penukaran, dan Root menyetujui atau menolaknya.
Alur penukaran:
- Anggota mengklik Tukar pada sebuah item toko.
- Poin langsung dikurangi dari saldo anggota.
- Penukaran dibuat dalam status Menunggu.
- Root meninjau penukaran yang menunggu dan Menyetujui atau Menolak.
- Jika ditolak, poin otomatis dikembalikan.
Status penukaran
| Status | Arti |
|---|---|
| Menunggu | Menunggu tinjauan Root |
| Disetujui | Diberikan oleh Root; poin tetap terkurangi |
| Ditolak | Ditolak oleh Root; poin otomatis dikembalikan |
Izin — Toko
| Tindakan | Anggota | Admin | Root |
|---|---|---|---|
| Menelusuri item toko | ✓ | ✓ | ✓ |
| Menukar item | ✓ | ✓ | ✓ |
| Melihat riwayat penukaran sendiri | ✓ | ✓ | ✓ |
| Membuat / mengedit / menonaktifkan item | ✗ | ✗ | ✓ |
| Melihat semua penukaran | ✗ | ✗ | ✓ |
| Menyetujui / menolak penukaran | ✗ | ✗ | ✓ |
Item toko
Root bisa membuat item dengan judul, deskripsi opsional, dan biaya poin. Item bisa dinonaktifkan untuk menyembunyikannya dari toko tanpa menghapusnya. Tidak ada batas kuantitas — item tak terbatas.
Catatan dukungan
- Jika poin seorang anggota terlihat salah, periksa apakah ada transisi COMPLETED → TODO yang dilakukan baru-baru ini (itu membatalkan poin otomatis), atau apakah Admin/Root mengedit nilai Poin Hadiah pada item yang selesai (kenaikan memberikan selisih, penurunan mengurangi selisih).
- Jika seorang anggota tidak bisa melihat item navigasi Toko, verifikasi
points_systemmaupunstore_enabledsama-sama aktif di Akun → Pengaturan. - Penukaran yang ditolak otomatis mengembalikan poin — Root tidak perlu melakukan apa pun tambahan setelah menolak.
- Item toko yang disetel nonaktif disembunyikan dari anggota tetapi tetap terlihat oleh Root untuk pengelolaan.