Mohon tunggu...
Zakiatul Balqis
Zakiatul Balqis Mohon Tunggu... Mahasiswa - Mahasiswa

✧⁠✧✧✧

Selanjutnya

Tutup

Pendidikan

Sistem Penjualan Toko Online

28 Desember 2024   17:03 Diperbarui: 28 Desember 2024   17:11 45
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.

Latar Belakang 

Seiring dengan perkembangan teknologi, semakin banyak toko beralih ke sistem penjualan online. Meskipun menawarkan kemudahan, pengelolaan toko online memiliki tantangan, seperti pencatatan data pelanggan, manajemen produk, transaksi penjualan, metode pembayaran, dan pengiriman barang yang terpisah-pisah. Hal ini dapat menyebabkan kesalahan dalam pengelolaan data, keterlambatan pengiriman, dan kesulitan dalam menghasilkan laporan penjualan yang akurat. Untuk itu, diperlukan sebuah sistem penjualan yang terintegrasi untuk meningkatkan efisiensi, mengurangi kesalahan, dan memberikan pengalaman yang lebih baik bagi pelanggan.

Rancangan ERD

1. Entitas Pelanggan

-Atribut:

  • id_pelanggan (Primary Key)
  • nama
  • alamat
  • email

-Pelanggan terhubung ke transaksi melalui relasi melakukan. Artinya, setiap pelanggan dapat melakukan satu atau lebih transaksi.

2. Entitas Transaksi

-Atribut:

  • id_transaksi (Primary Key)
  • tgl_transaksi
  • total_harga
  • id_pelanggan (Foreign Key, relasi dengan entitas pelanggan)

-Relasi melakukan menghubungkan pelanggan dengan transaksi. Setiap transaksi dilakukan oleh satu pelanggan.

3. Entitas Barang

-Atribut:

  • id_barang (Primary Key)
  • nama_barang
  • harga
  • stok

-Transaksi mencakup barang melalui relasi mencakup. Ini menunjukkan bahwa setiap transaksi dapat melibatkan satu atau lebih barang, dengan jumlah tertentu.

4. Entitas Pembayaran

-Atribut:

  • id_pembayaran (Primary Key)
  • status_pembayaran
  • metode_pembayaran
  • id_transaksi (Foreign Key, relasi dengan entitas transaksi)

-Relasi memiliki menghubungkan transaksi dengan pembayaran. Artinya, setiap transaksi memiliki satu metode pembayaran.

5. Entitas Pengiriman

-Atribut:

  • id_pengiriman (Primary Key)
  • alamat_pengiriman
  • status_pengiriman
  • id_pembayaran (Foreign Key, relasi dengan entitas pembayaran)

-Relasi melibatkan menghubungkan pembayaran dengan pengiriman. Setiap pembayaran dapat melibatkan satu pengiriman dengan informasi alamat dan status pengiriman.

Relasi dan Hubungan Penting
-Relasi melakukan: Menghubungkan pelanggan dengan transaksi, menunjukkan bahwa pelanggan dapat melakukan satu atau lebih transaksi.
-Relasi mencakup: Menghubungkan transaksi dengan barang, menunjukkan bahwa satu transaksi dapat mencakup beberapa barang.
-Relasi memiliki: Menghubungkan transaksi dengan pembayaran, menunjukkan bahwa setiap transaksi memiliki satu pembayaran.
-Relasi melibatkan: Menghubungkan pembayaran dengan pengiriman, menunjukkan bahwa setiap pembayaran melibatkan satu pengiriman.

Gambar. EERD
Gambar. EERD

Rancangan  Enhanced Entity-Relationship Diagram (EERD)

Berikut adalah  penjelasan yang menunjukkan hubungan antar entitas dalam sebuah sistem manajemen transaksi  dari masing-masing tabel dan relasi:

1. Tabel pelanggan

Menyimpan data pelanggan, dengan atribut:

  • id_pelanggan (INT, Primary Key): Identitas unik pelanggan.
  • nama (VARCHAR): Nama pelanggan.
  • alamat (TEXT): Alamat pelanggan.
  • email (VARCHAR): Email pelanggan.

Relasi: 

id_pelanggan digunakan sebagai foreign key di tabel transaksi.

2. Tabel transaksi

Menyimpan data transaksi yang dilakukan pelanggan, dengan atribut:

  • idtransaksi (INT, Primary Key): Identitas unik transaksi.
  • tgl_transaksi (VARCHAR): Tanggal transaksi.
  • total_harga (DECIMAL): Total harga transaksi.
  • pelanggan_id_pelanggan (INT, Foreign Key): Mengacu pada id_pelanggan di tabel pelanggan.

Relasi: 

Satu pelanggan dapat memiliki banyak transaksi (one-to-many), idtransaksi digunakan sebagai foreign key di tabel               pembayaran, pengiriman, dan transaksi_barang.

3. Tabel barang

Menyimpan data barang yang dijual, dengan atribut:

  • idbarang (INT, Primary Key): Identitas unik barang.
  • nama_barang (VARCHAR): Nama barang.
  • harga (DECIMAL): Harga barang.
  • stok (INT): Jumlah stok barang yang tersedia.

Relasi: 

idbarang digunakan sebagai foreign key di tabel transaksi_barang.

4. Tabel transaksi_barang

Menyimpan detail barang yang terlibat dalam transaksi, dengan atribut:

  • transaksi_idtransaksi (INT, Foreign Key): Mengacu pada idtransaksi di tabel transaksi.
  • barang_idbarang (INT, Foreign Key): Mengacu pada idbarang di tabel barang.
  • jumlah (INT): Jumlah barang dalam transaksi.

Relasi:

Hubungan many-to-many antara transaksi dan barang.

5. Tabel pembayaran

Menyimpan data pembayaran untuk transaksi, dengan atribut:

  • idpembayaran (INT, Primary Key): Identitas unik pembayaran.
  • metode_pembayaran (ENUM): Metode pembayaran yang digunakan.
  • status_pembayaran (ENUM): Status pembayaran (lunas, belum lunas, dll.).
  • transaksi_idtransaksi (INT, Foreign Key): Mengacu pada idtransaksi di tabel transaksi.

Relasi:

Satu transaksi memiliki satu pembayaran (one-to-one).

6. Tabel pengiriman

Menyimpan data pengiriman barang, dengan atribut:

  • idpengiriman (INT, Primary Key): Identitas unik pengiriman.
  • alamat_pengiriman (TEXT): Alamat tujuan pengiriman.
  • status_pengiriman (ENUM): Status pengiriman (dikirim, diterima, dll.).
  • pembayaran_idpembayaran (INT, Foreign Key): Mengacu pada idpembayaran di tabel pembayaran.

Relasi:

Satu pembayaran terkait dengan satu pengiriman (one-to-one).

Implementasi SQL

Dari rancangan studi kasus ini akan menghasilkan 5 tabel yang berelasi dengan Foreign Key di  beberapa tabel tersebut. Berikut adalah tabel yang memiliki Foreign Key:

  • Pelanggan Transaksi Pembayaran Pengiriman
    • Pelanggan memiliki id_pelanggan yang menjadi Foreign Key di Transaksi.
    • Transaksi memiliki id_transaksi yang menjadi Foreign Key di Pembayaran.
    • Pembayaran memiliki id_pembayaran yang menjadi Foreign Key di Pengiriman.

Dengan kata lain, setiap entitas yang memiliki Foreign Key terhubung dalam urutan yang jelas, yaitu:

  1. Pelanggan yang melakukan Transaksi.
  2. Transaksi yang memiliki Pembayaran.
  3. Pembayaran yang melibatkan Pengiriman. 

Implementasi Aplikasi Sederhana

Pada studi kasus ini, saya telah mengembangkan sebuah aplikasi berbasis web yang dirancang untuk mempermudah proses manajemen transaksi. Aplikasi ini terdiri dari beberapa fitur utama, antara lain: halaman kembali ke beranda, form transaksi, form pengiriman, form pembayaran, form pelanggan, dan form transaksi-barang. Masing-masing form tersebut memiliki fungsi spesifik yang saling terintegrasi untuk mendukung kelancaran operasional dalam aplikasi ini.

Saya telah menyediakan video demonstrasi yang menjelaskan fitur aplikasi ini secara rinci. Tonton video berikut untuk melihat cara kerja aplikasi secara langsung.

Tonton video selengkapnya di sini:


Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H

HALAMAN :
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
Mohon tunggu...

Lihat Konten Pendidikan Selengkapnya
Lihat Pendidikan Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun