Visualisasi ERD (Entity Relationship Diagram)

Implementasi lengkap struktur basis data sesuai diagram arsitektur sistem pemesanan barang

Setup / Reset Database
1. Diagram Struktur Acuan ERD
Representasi Teks / ASCII ERD:
                         ┌──────────────┐
                         │   CUSTOMER   │
                         └──────┬───────┘
                                │ 1
                                │
                                │ N
                         ┌──────▼───────┐
                         │   PESANAN    │
                         └──────┬───────┘
                                │
          ┌─────────────────────┼─────────────────────┐
          │ 1                   │ 1                   │ 1
          │                     │                     │
          │ N                   │ N                   │ 0..1
 ┌────────▼────────┐    ┌───────▼────────┐    ┌───────▼─────────────┐
 │ DETAIL_PESANAN  │    │   PEMBAYARAN   │    │ PENGIRIMAN_PENGAMBILAN│
 └────────┬────────┘    └────────────────┘    └─────────┬───────────┘
          │                                               │
      ┌───┼───────────────┐                               │ 0..1
      │   │               │                               │
      │   │               │                               ▼
      │   │               │                     ┌──────────────────┐
      │   │               │                     │DETAIL_PENGIRIMAN │
      │   │               │                     └──────────────────┘
      │   │               │
      │   │               └──── N : 1 ────┐
      │   │                               │
      │   │                        ┌──────▼──────┐
      │   │                        │    TOKO     │
      │   │                        └─────────────┘
      │   │
      │   │ 1
      │   │
      │   │ N
      │   ▼
      │ DETAIL_FEE
      │   │
      │   │ N
      │   │
      │   │ 1
      │   ▼
      │ JENIS_FEE
      │   │
      │   │ 1
      │   │
      │   │ N
      │   ▼
      │ MASTER_FEE
      │
      │ 1
      │
      │ N
      ▼
   REFUND


PESANAN ──1:N──> RIWAYAT_STATUS_PESANAN <──N:1── ADMIN
                    
Visualisasi Interaktif (Mermaid ERD):
erDiagram
    CUSTOMER ||--o{ PESANAN : "1 : N"
    PESANAN ||--|{ DETAIL_PESANAN : "1 : N"
    PESANAN ||--|{ PEMBAYARAN : "1 : N"
    PESANAN ||--o| PENGIRIMAN_PENGAMBILAN : "1 : 0..1"
    PENGIRIMAN_PENGAMBILAN ||--o| DETAIL_PENGIRIMAN : "0..1 : 0..1"
    DETAIL_PESANAN }o--|| TOKO : "N : 1"
    DETAIL_PESANAN ||--o{ DETAIL_FEE : "1 : N"
    JENIS_FEE ||--|{ DETAIL_FEE : "1 : N"
    JENIS_FEE ||--|{ MASTER_FEE : "1 : N"
    TOKO ||--|{ PRODUK : "1 : N"
    PRODUK ||--o{ PRODUK_FEE : "1 : N"
    MASTER_FEE ||--o{ PRODUK_FEE : "1 : N"
    DETAIL_PESANAN ||--o{ REFUND : "1 : N"
    PESANAN ||--o{ RIWAYAT_STATUS_PESANAN : "1 : N"
    ADMIN ||--o{ RIWAYAT_STATUS_PESANAN : "1 : N"
                        
2. Rincian Kamus Data Entitas Tabel
CUSTOMER
KolomTipeKeterangan
id_customerINTPrimary Key (AI)
namaVARCHAR(100)Nama Pembeli
emailVARCHAR(100)Email Unik
teleponVARCHAR(20)No WhatsApp
alamatTEXTAlamat Default
PESANAN
KolomTipeKeterangan
id_pesananINTPrimary Key (AI)
id_customerINTForeign Key (CUSTOMER)
kode_pesananVARCHAR(30)Kode Unik Pesanan
total_bayarDECIMALSubtotal + Fee + Ongkir
statusENUMMenunggu/Diproses/dll
DETAIL_PESANAN
KolomTipeKeterangan
id_detail_pesananINTPrimary Key (AI)
id_pesananINTFK ke PESANAN
id_tokoINTFK ke TOKO (N:1)
id_produkINTFK ke PRODUK
harga_satuan, jumlah, subtotalDECIMAL, INTItem breakdown
TOKO
KolomTipeKeterangan
id_tokoINTPrimary Key (AI)
nama_tokoVARCHAR(100)Nama Merchant/Toko
pemilikVARCHAR(100)Nama Pemilik
alamat, teleponTEXT, VARCHARKontak Toko
statusENUMAktif / Nonaktif
PEMBAYARAN
KolomTipeKeterangan
id_pembayaranINTPrimary Key (AI)
id_pesananINTFK ke PESANAN (1:N)
metode_pembayaranENUMTransfer / QRIS / COD
jumlah_bayarDECIMALNominal Transfer
status_pembayaranENUMMenunggu / Diterima
PENGIRIMAN & DETAIL
KolomTipeKeterangan
id_pengiriman_pengambilanINTPK ke PESANAN (0..1)
tipeENUMPENGIRIMAN / PENGAMBILAN
id_detail_pengirimanINTRelasi 0..1 ke PENGIRIMAN
ekspedisi, nomor_resiVARCHARData Kurir & Resi
alamat_tujuan, penerimaTEXT, VARCHARTujuan Kirim
STRUKTUR FEE (3 LEVEL)
TabelKunci RelasiDeskripsi
DETAIL_FEEid_detail_pesanan, id_jenis_feeFee riil per item
JENIS_FEEid_jenis_feeKategori fee (layanan/asuransi)
MASTER_FEEid_jenis_feeMaster tarif & konfigurasi nominal
REFUND
KolomTipeKeterangan
id_refundINTPrimary Key (AI)
id_detail_pesananINTFK ke DETAIL_PESANAN (1:N)
jumlah_refundDECIMALNominal yang direfund
alasan, bukti_fotoTEXT, VARCHARBukti komplain barang
status_refundENUMMenunggu/Disetujui/Ditolak
RIWAYAT & ADMIN
KolomTipeKeterangan
ADMINid_adminPengelola Sistem
RIWAYATid_riwayatLog Audit Status
id_pesananINTFK PESANAN (1:N)
id_adminINTFK ADMIN (1:N)
status_sebelum & baruVARCHARStatus transisi & audit