• Wednesday, February 6, 2019

    Aplikasi Penjualan Obat pada Apotek

    Aplikasi Penjualan Obat merupakan aplikasi yang digunakan untuk memudahkan dalam melakukan pengelolaan persediaan dan penjualan obat pada sebuah apotek.
    Aplikasi ini dibangun menggunakan bahasa pemrograman PHP Versi 7 dan database MariaDB. Untuk berkomunikasi dengan database menggunakan PDO Extension dan menggunakan Prepared statements untuk membuat query menjadi lebih aman dan cepat saat melakukan komunikasi ke database.
    Proses CRUD pada aplikasi ini menggunakan AJaX. AJaX adalah singkatan dari “Asynchronous JavaScript and XML”, merupakan suatu teknik pemrograman berbasis web untuk menciptakan aplikasi web interaktif yang lebih baik dan lebih cepat. Dengan menggunakan AJaX kita dapat melakukan pertukaran data dengan server di belakang layar, sehingga halaman web tidak harus dibaca ulang (refresh halaman) secara keseluruhan setiap kali seorang pengguna melakukan perubahan. Hal ini akan meningkatkan interaktivitas, kecepatan, dan usability.
    Materi yang dapat dipelajari dari aplikasi ini adalah :
    • Membuat aplikasi web interaktif yang dapat melakukan operasi CRUD tanpa reload/refresh halaman menggunakan AjaX (Asynchronous JavaScript and XML).
    • Mendesain tampilan aplikasi menggunakan CSS Bootstrap 4.
    • Membuat tabel yang dinamis menggunakan DataTables Server-side Processing untuk menampilkan data dari database dalam jumlah yang sangat besar. Sehingga aplikasi yang memiliki banyak data, akan terasa ringan ketika di load. Tabel sudah dilengkapi dengan filter jumlah data yang ditampilkan, form pencarian data dan pagination.
    • Membuat tampilan alert (kotak dialog) JavaScript menggunakan SweetAlert untuk memunculkan notifikasi pada saat akan melakukan proses hapus, backup database dan logout. Serta menggunakan Bootstrap Notify untuk memunculkan notifikasi pada saat proses login, login gagal atau sukses, sukses atau gagal menyimpan data, sukses atau gagal mengubah data, sukses atau gagal menghapus data, dan validasi form input.
    • Membuat validasi form input wajib diisi, membuat fungsi untuk membatasi karakter yang diinputkan (bisa diinputkan huruf, angka atau karakter tertentu saja), membuat fungsi untuk format rupiah (menambahkan Rp. dan titik untuk pemisah), membuat fungsi untuk menampilkan nama hari dan bulan Indonesia, membuat fungsi untuk pengecekan stok, jumlah beli dan jumlah jual.
    • Membuat script untuk mengupload file foto, membuat validasi tipe file, membuat validasi ukuran file dan membuat preview foto sebelum diupload.
    • Membuat icon yang menarik menggunakan Font Awesome, dengan sistem “Font Icon” yang memungkinkan untuk membuat icon hanya menggunakan teks (tanpa gambar) dan mengubah warna serta ukuran font menggunakan CSS tanpa takut icon menjadi pecah.
    • Menampilkan data dari database ke Select Box menggunakan plugin jQuery Chosen, yang sudah dilengkapi dengan fitur pencarian sehingga dapat memudahkan dalam memilih data yang diinginkan ketika data yang ditampilkan sangat banyak.
    • Menampilkan data dari database ke Textfield berdasarkan data yang dipilih pada Select Box.
    • Membuat perhitungan Sub Total Bayar, Total Bayar, Bayar Tunai dan Uang Kembali secara otomatis.
    • Membuat laporan data Stok Obat, Pembelian, dan Penjualan yang ditampilkan sesuai dengan filter data Per Periode, Perincian, Per Obat, dan Per Supplier.
    • Mencetak Nota dalam format HTML yang dapat langsung dihubungkan ke printer, mencetak laporan data ke dalam format PDF dengan library HTML2PDF dan export data ke dalam format Ms. Excel.
    • Membuat backup database dengan format .sql yang dibungkus dalam format .gz
    • Membuat trigger untuk menambah dan mengurangi stok secara otomatis, serta trigger untuk membuat data audit trail aplikasi.
    Fitur Apilkasi
    1.
    Login
    Halaman login multi user. Ada 3 level user yaitu :
    • Super Admin
      Hak akses : Beranda, Supplier, Obat, Satuan, Pembelian, Penjualan, Laporan Stok (Stok Seluruh dan Minimum), Laporan Pembelian (Per Periode, Perincian, Per Obat, Per Supplier), Laporan Penjualan (Per Periode, Perincian, Per Obat), Konfigurasi Aplikasi, Manajemen User, Backup Database, Audit Trail, Ubah Password.
    • Purchasing
      Hak akses : Beranda, Supplier, Obat, Satuan, Pembelian, Laporan Stok (Stok Seluruh dan Minimum), Laporan Pembelian (Per Periode, Perincian, Per Obat, Per Supplier), Ubah Password.
    • Cashier
      Hak akses : Beranda, Penjualan, Laporan Stok (Stok Seluruh dan Minimum), Laporan Penjualan (Per Periode, Perincian, Per Obat), Ubah Password.
    2.
    Beranda
    Halaman Beranda merupakan sebuah dashboard yang berisi informasi jumlah Supplier, Obat, Pengguna Aplikasi, Tanggal Terakhir Backup Database, Pembelian Obat (Per Bulan, Per Tahun, dan Seluruh), Penjualan Obat (Per Hari, Per Bulan, Per Tahun, dan Seluruh), Stok Obat Mencapai Batas Minimum, dan Obat Terlaris.
    3.
    Supplier
    Halaman untuk mengelola data supplier. Pada halaman ini pengguna dapat menginput, mengubah, menghapus, mencari data supplier, dan mengexport data supplier dalam format Ms. Excel.
    4.
    Obat
    Halaman untuk mengelola data obat. Pada halaman ini pengguna dapat menginput, mengubah, menghapus, dan mencari data obat.
    5.
    Satuan
    Halaman untuk mengelola data satuan obat. Pada halaman ini pengguna dapat menginput, mengubah, menghapus, mencari data satuan, dan mengexport data satuan dalam format Ms. Excel.
    6.
    Pembelian
    Halaman untuk mengelola data pembelian obat sebagai persediaan. Pada halaman ini pengguna dapat menginput, menghapus, mencari dan menampilkan detail data pembelian obat.
    7.
    Penjualan
    Halaman untuk mengelola data penjualan obat. Pada halaman ini pengguna dapat menginput, menghapus, mencari dan menampilkan detail data penjualan, serta mencetak nota pembelian obat untuk pelanggan.
    8.
    Laporan Stok
    Halaman untuk menampilkan dan mencetak laporan stok obat. Pada halaman ini pengguna dapat menampilkan laporan seluruh stok obat dan menampilkan laporan stok obat yang mencapai batas minimum. Laporan dapat dicetak ke dalam format PDF dan diexport ke dalam format Ms. Excel.
    9.
    Laporan Pembelian
    Halaman untuk menampilkan dan mencetak laporan pembelian obat. Ada 4 macam laporan pembelian, yaitu :
    • Laporan Pembelian Per Periode
    • Laporan Pembelian Perincian
    • Laporan Pembelian Per Obat
    • Laporan Pembelian Per Supplier
    Laporan dapat dicetak ke dalam format PDF dan diexport ke dalam format Ms. Excel.
    10.
    Laporan Penjualan
    Halaman untuk menampilkan dan mencetak laporan penjualan obat. Ada 3 macam laporan penjualan, yaitu :
    • Laporan Penjualan Per Periode
    • Laporan Penjualan Perincian
    • Laporan Penjualan Per Obat
    Laporan dapat dicetak ke dalam format PDF dan diexport ke dalam format Ms. Excel.
    11.
    Konfigurasi Aplikasi
    Halaman untuk pengaturan profil apotek.
    12.
    Manajemen User
    Halaman untuk mengelola data user yang dapat menggunakan aplikasi.
    13.
    Backup Database
    Halaman untuk melakukan backup database aplikasi.
    14.
    Audit Trail
    Halaman yang berisikan riwayat atau catatan semua kegiatan pengguna yang dilakukan pada aplikasi (Insert, Update, Delete). Dengan fitur ini administrator dapat melihat pengguna yang menginput, mengubah dan menghapus data.
    15.
    Ubah Password
    Halaman untuk mengubah password pengguna aplikasi.
    Demo Apilkasi
    Script didalam aplikasi ini dapat dipelajari dengan mudah karena sudah saya berikan komentar pada setiap prosesnya, sehingga dapat digunakan sebagai referensi bagi teman-teman yang sedang mengerjakan tugas kuliah, Skripsi, Tugas Akhir, atau yang sedang belajar pemrograman web dan membutuhkan contoh studi kasus.
    Jika teman-teman tertarik untuk mempelajari Aplikasi Penjualan Obat pada Apotek ini, silahkan klik link dibawah ini untuk mendapatkan sourcecode aplikasi.
    Hosting Unlimited Indonesia

    Indra Setyawantoro

    Author

    Belajar untuk Mengajar, Mengajar untuk Belajar.

    0 komentar:

    Post a Comment

    Copyright © 2015 - 2023 Indra Satya. All rights reserved. Blogger Templates