Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-BRD-010
DeskripsiMengatur kirim email laporan brand: penerima, kategori laporan, dan jadwal pengiriman
Nomor Revisi1
Tanggal2026-10-03
KeteranganInisiasi dokumentasi

1. Ringkasan​

a. In scope​

  • Admin brand dapat mengatur penerima email laporan per kategori (Akuntansi, Stok & Persediaan, Penjualan, Pembelian)
  • Admin brand dapat mengatur periode pengiriman email
  • Admin brand dapat menyimpan pengaturan subscription email

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01Admin dapat mengatur email penerima per kategori laporan
FR-02Admin dapat mengatur periode pengiriman email
FR-03Sistem menyimpan subscription email secara bulk

3. Use Case List​

KodeDeskripsi
UC-01Mengatur penerima email per kategori laporan
UC-02Mengatur periode pengiriman email
UC-03Menyimpan email subscription

4. Use Case Scenario​

UC-01 : Mengatur penerima email per kategori laporan​

AktorBrand admin
DeskripsiMemilih laporan aktif dan penerima email per tab kategori
PrekondisiLogin sebagai brand admin
Halaman email subscription terbuka
Alur utama1. Admin membuka tab kategori laporan.
2. Admin mengaktifkan laporan yang diinginkan.
3. Admin mengatur email penerima.
Alur negatif- Jika bukan brand admin, pengaturan dibatasi / tidak bisa disimpan.
- Jika email tidak valid, simpan gagal dengan pesan error.
Bisnis rule- Kategori tab: Akuntansi, Stok & Persediaan, Penjualan, Pembelian.
- Hanya item laporan yang active yang ikut disimpan.
PostkondisiDraft penerima & pilihan laporan siap di UI
TriggerUbah pilihan di tab kategori
Kode FRFR-01

UC-02 : Mengatur periode pengiriman email​

AktorBrand admin
DeskripsiMengatur frekuensi/periode kirim lewat sidebar
PrekondisiHalaman email subscription terbuka
Alur utama1. Admin membuka “Atur Periode Pengiriman Email”.
2. Admin memilih weekly / monthly / yearly.
3. Admin menutup sidebar (periode tersimpan di state, disimpan lewat config).
Alur negatif- Jika nilai periode sama dengan yang sudah tersimpan, field tersebut tidak dikirim ulang.
- Jika tanggal yearly di luar rentang yang diizinkan, tanggal tidak bisa dipilih.
Bisnis rule- Periode yearly disimpan berformat DD/MM.
- Tanggal yang bisa dipilih dibatasi: tidak boleh tahun lalu penuh / tahun depan penuh (disableDates).
- Perubahan periode disimpan lewat konfigurasi brand (config_brand).
PostkondisiPeriode terpilih di state UI
TriggerTombol atur periode
Kode FRFR-02

UC-03 : Menyimpan email subscription​

AktorBrand admin
DeskripsiMenyimpan semua pengaturan subscription
PrekondisiDraft email/periode sudah diisi
Alur utama1. Admin klik Simpan Perubahan.
2. Sistem mengelompokkan laporan aktif per periode.
3. Sistem menyimpan subscription bulk.
4. Sistem menampilkan sukses.
Alur negatif- Jika API gagal, muncul alert error dengan pesan kegagalan.
- Jika tidak ada item aktif, payload subscription minimal hanya penerima utama.
Bisnis rule- Payload mengelompokkan ke daily, weekly, monthly, yearly.
- Setiap item memuat feature_id dan time_sent.
- Penerima tambahan memakai user_id unik.
- Pesan sukses UI: “Berhasil Membuat Subscribe Email”.
PostkondisiSubscription tersimpan
TriggerTombol simpan
Kode FRFR-03

5. Data Flow Diagram​

DFD-01​

6. Sequence Diagram​

SD-01 — UC-01 : Mengatur penerima email per kategori laporan​

SD-02 — UC-02 : Mengatur periode pengiriman email​

SD-03 — UC-03 : Menyimpan email subscription​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
POST /brand-users/subscribe-email/bulkexisting-
PUT /brand/config/:idexisting-