Anda di halaman 1dari 109

ANALISIS DAN DESAIN SISTEM

INFORMASI APLIKASI APLIKASI KASIR

(POIN OF SALE)

Diajukan sebagai Salah Satu Syarat untuk Memperoleh Nilai pada Kegiatan Proyek I
Program Studi D IV Teknik Informatika

Oleh :
Audry Febrisa Sidabutar (1194006)

Ayu Lestari Nasution (1194007)

Dosen Pembimbing:

Noviana Riza, S.Si.,M.T.


NIK. 103.78.065

PROGRAM DIPLOMA IV TEKNIK INFORMATIKA

POLITEKNIK POS INDONESIA

BANDUNG

2020

LEMBAR PERSETUJUAN
ANALISIS DAN DESAIN SISTEM
INFORMASI APLIKASI APLIKASI KASIR

(POIN OF SALE)

PROPOSAL PROYEK 1

Oleh :

Audry Febrisa Sidabutar (1194006)


Ayu Lestari Nasution (1194007)

Telah disetujui dan disarankan


Di Bandung pada tanggal ………………….

Pembimbing :
Noviana Riza, S.Si.,M.T.
NIK. 103.78.065

ABSTRAK
Seiring dengan pertumbuhan ekonomi Indonesia yang maju dan berkembang pesat
khususnya di kota-kota besar, telah terjadi perubahan diberbagai sektor, termasuk di bidang
industri retail dan produksi serta pada kegiatan eceran di Indonesia. Perkembangan bisnis
eceran yang pesat ini tidak lepas dan faktor meningkatnya jumlah penduduk Indonesia dan
juga meningkatnya pendapatan perkapita penduduk yang menyebabkan taraf hidup masyarakat
semakin meningkat dengan diiringi kebutuhan masyarakat yang semakin tinggi pula.
Toko akan terus dapat berkembang untuk meningkatkan penjualan apabila aktivitas
penjualan dikelola dengan baik salah satunya adalah dengan pencatatan penjualan yang cepat
dan tepat dalam upaya laporan penjualan. Sistem penjualan yang digunakan pada toko
pengecer yaitu penjualan tunai yang diasumsikan bahwa pembeli akan mengambil barang setelah
harga barang dibayar di kasir, karena dari hasil penjualan itulah toko memperoleh
pendapatan untuk menutupi biaya - biaya operasional lainnya yang telah dikeluarkan, dan
memaksimalkan laba, maka pengawasan terhadap penjualan merupakan hal yang penting
untuk dilakukan, untuk itu toko sangat memerlukan suatu sistem informasi untuk memenuhi
kebutuhan informasi yang berguna bagi pihak luar maupun dalam toko

Kata kunci :, Kasir, pembelian, penjualan, aplikasi, poin of sale, PHP, MySQL.

ABSTRACT
Along with Indonesia's advanced and rapidly developing economy, especially in big cities,
there have been changes in various sectors, including in the retail and production industry as well
as shopping activities in Indonesia. This rapid business development cannot be separated from
the factors that affect the population of Indonesia and also the sales per capita of the population
which have caused the people's standard of living to increase with higher community needs.

The store will continue to grow to increase sales, sales are well managed, one of which is by
recording sales quickly and accurately in sales reports. The sales system used in cash payment
retail stores assumes that the buyer will pick up the goods after the price is paid at the cashier,
because the sales of the store get revenue to cover operational costs that have been incurred, and
maximize profits, so monitoring sales is important for done, for that the store really needs an
information system to meet the needs of useful information for outsiders and inside the store

Keywords: Application, Cashier, system, information, information system, PHP information


system, MySQL, Sales, Purchasing
DAFTAR NOTASI/SIMBOL

Simbol Flowmap
No. Simbol Keterangan

1. Terminatoradalah permulaan/akhir program.

2. Flow Lineadalah Arah aliran program.

Preparationadalah proses inisialisasi/pemberian


3.
harga awal.

Processadalah proses perhitungan/proses


4.
pengolahan data.

Input/Output Dataadalah proses input/output data,


5.
parameter, informasi.

Predefined Process adalah permulaan sub


6.
program/proses menjalankan sub program.

Decisionadalah perbandingan pernyataan,


7. penyeleksian data yang memberikan pilihan untuk
langkah selanjutnya.

On Page Connectoradalah penghubung bagian-


8.
bagian flowchart yang berada pada satu halaman.

Off Page Connector adalah penghubung bagian-


9. bagian flowchart yang berada pada halaman
berbeda.

Simbol UML

i
No. Simbol Keterangan

Actor adalah elemen diluar sistem yang


1.
berkepentingan secara langsung dengan sistem.

Use Case adalah urutan interaksi antar aktor


2.
dengan sistem.
Include adalah relasi dari base use case kepada
inclusion use case, menggambarkan bagaimana
3.
perilaku dari inclusionuse case disisipkan ke dalam
<<include>> base use case.
Extends adalah hubungan dari extention use case,
menerangkan bagaimana perilaku dari
4. <<extends>>
extensionuse case dapat disisipkan ke dalam
perilaku base use case.
Association adalah partisipasi aktor dalam suatu
5. use case yang saling berkomunikasi satu dengan
yang lainnya.

System boundary, untuk mereprensentasikan


6. batasan fisik sistem dengan aktor yang berinteraksi
dengan sistem.

Class adalah deskripsi dari kumpulan objek yang


7. memiliki atribut, operation, method, relationship,
dan semantics yang sama.

Generalization adalah hubungan taksonomik


8. antara use case yang lebih umum dan use case
yang lebih spesifik.
Start State adalah memperlihatkan dimana aliran
9.
kerja berawal.

End State adalah memperlihatkan dimana aliran


10.
kerja berakhir.

11. Activity merupakan aktivitas pada diagram activity.

Simbol Use Case

ii
No. Simbol Keterangan

Actor adalah elemen diluar sistem yang


1.
berkepentingan secara langsung dengan sistem.

Use Case adalah urutan interaksi antar aktor


2.
dengan sistem.
Include adalah relasi dari base use case kepada
inclusion use case, menggambarkan bagaimana
3.
<<include>> perilaku dari inclusionuse case disisipkan ke dalam
base use case.
Extends adalah hubungan dari extention use case,
menerangkan bagaimana perilaku dari
4. <<extends>>
extensionuse case dapat disisipkan ke dalam
perilaku base use case.
Association adalah partisipasi aktor dalam suatu
5. use case yang saling berkomunikasi satu dengan
yang lainnya.
System boundary, untuk mereprensentasikan
6. batasan fisik sistem dengan aktor yang berinteraksi
dengan sistem.

iii
Simbol Class Diagram
No. Simbol Keterangan

Class adalah deskripsi dari kumpulan objek yang


1. memiliki atribut, operation, method, relationship,
dan semantics yang sama.
Association adalah relasi antar kelas dengan
makna umum, asosiasi biasanya juga disertai
dengan multiplicity.
Directed Associationadalah relasi antar kelas
dengan makna kelas yang satu digunakan oleh
2.
kelas yang lain, asosiasi biasanya juga disertai
dengan multiplicity.

Generalization adalah relasi antar kelas dengan


4.
makna generalisasi-generalisasi (umum khusus).

Dependencyadalah relasi antar kelas dengan


5.
makna kebergantungan antar kelas.

Aggregation adalahrelasi antar kelas dengan


6.
makna semua-bagian (whole-part)

iv
Simbol Sequence Diagram
No. Simbol Keterangan

Actor adalah elemen diluar sistem yang


1.
berkepentingan secara langsung dengan sistem.

Entity Classadalah menggambarkan hubungan


2.
kegiatan yang akan dilakukan.

Boundary Classadalah menggambarkan sebuah


3.
penggambaran dari form.

Control Classadalah menggambarkan penghubung


4.
antara boundary dengan tabel.

Association adalah partisipasi aktor dalam suatu


5. use case yang saling berkomunikasi satu dengan
yang lainnya.

A massage adalahmenggambarkan pengiriman


6. A massage
pesan.

v
Simbol Activity Diagram
No. Simbol Keterangan
Activityadalah memperlihatkan bagaimana masing-
1. masing kelas antarmuka saling berinteraksi satu
sama lain.

Action adalah state dari sistem yang


2.
mencerminkan eksekusi dari suatu aksi.

Start State adalah memperlihatkan dimana aliran


3.
kerja berawal.

End State adalah memperlihatkan dimana aliran


4.
kerja berakhir.

Decisionberfungsi untuk menggambarkan suatu


5. keputusan / tindakan yang harus diambil pada
kondisi tertentu.

Line Connector berfungsi untuk menghubungkan


6.
satu simbol dengan simbol lainnya.

Partition, menunjukkan siapa yang bertanggung


7. jawab dalam melakukan aktivitas dalam suatu
diagram.

vi
Simbol Statechart Diagram
No. Simbol Keterangan

Start State, memperlihatkan dimana aliran kerja


1.
berawal.

End State, memperlihatkan dimana aliran kerja


2.
berakhir.

Action State, menunjukkan aktivitas yang


3.
dilakukan dalam modul sistem aplikasi.

Control Flow, memperlihatkan urut-urutan


4.
eksekusi.

Fork, digunakan untuk memecah sebuah behaviour


5.
menjadi activity atau action yang paralel.

Join, untuk menggabungkan kembali activity atau


6.
action yang paralel.

Decision, menunjukkan aktivitas yang harus


7.
dipilih apakah pilihan pertama atau kedua.

vii
Simbol Component Diagram
No. Simbol Keterangan

Packagemerupakan sebuah bungkusan dari satu


1. Package atau lebih komponen.

nama_komponen
Komponen adalah suatu komponen dari suatu
2.
infrastruktur sistem.

Dependencyadalah kebergantungan antar


3. komponen, arah panah mengarah pada komponen
yang dipakai.

Simbol Deployment Diagram


No. Simbol Keterangan

Node, biasanya mengacu pada perangkat keras


(hardware), perangkat lunak yang dibuat sendiri
1. Nama_node
(software). Notasi untuk node digambarkan
sebagai sebuah kubus 3 dimensi.

nama_komponen
Komponen adalah suatu komponen dari suatu
2.
infrastruktur sistem.

Device Device adalah perangkat keras (seperti printer atau


3. monitor) tipikalnya menjadi interface dengan dunia
luar.

Package
Package adalah sebuah bungkusan dari satu atau
4.
lebih node.

viii
Simbol Struktur Menu
No. Simbol Keterangan

1. Module adalah simbol menunjukkan suatu modul.

Connection, digunakan untuk menghubungkan


2. modul, atau simbol untuk menyatakan
pemanggilan modul.

Simbol Antarmuka Pengguna (User Interface Design)


No. Simbol Keterangan

Screen
Screen adalah bungkusan atau dasar untuk
1.
menempatkan label, button, text, dan lain-lain.

Text, digunakan untuk menyisipkan keterangan


2.
secara manual.

Button, digunakan sebagai tombol untuk


3. Button menampilkan menu.

Label, digunakan untuk memberi nama suatu


4. isi_label menu.

ix
BAB I
PENDAHULUAN

A. LATAR BELAKANG MASALAH

Kasir adalah seorang pemegang kas (uang) atau orang yang bertugas menerima dan
membayarkan uang. Selain istilah kasir, ada juga istilah kassa.Keduanya mempunyai
perbedaan.Kasir adalah orangnya, sedangkan kassa adalah tempatnya. Profesi kasir di toko
retail atau minimarket adalah seseorang yang pekerjaannya menerima uang pembayaran dari
pelanggan saat pembelian produk barang atau jasa dan melakukan pengembalian uang
sisa pembayaran, sekaligus menyerahkan produk barang atau jasa kepada pelanggan
(customer) diloket-loket kasir di suatu toko, super market, mini market, hotel, mall, restoran,
rumah sakit,ataupun departement store. Selain itu, tugas kasir juga melakukan penghitungan
jumlah total penjualan per hari, per minggu, ataupun per bulan serta mengenali barang yang
paling laris terjual.

Pada umumnya sebuah toko ingin usahanya tetap eksis dan berkembang, untuk itu
diperlukan strategi dan pengelolaan yang baik.Strategi yang dimaksud berupa peningkatan
kualitas marketing, manajemen, pelayanan dan lain-lain termasuk penerapan teknologi
informasi didalamnya.Berdasarkan observasi dan wawancara, adanya sistem informasi
mempengaruhi berbagai aspek termasuk aspek penjualan, yang biasanya sistem penjulannya
masih konvensional hanya menggunakan buku untuk perekapan data penjualan dan nota yang
ditulis peetugas kasir.Petugas kasir terkadang melakukan kesalahan ketika banyak konsumen
datang bersamaan.Maka dari suatu permasalahan tersebut dibuatkan sistem informasi
penjualan. Dalam perancangan aplikasi ini dibutuhkan sebuah system komputerisasi untuk
mempermudah proses rekapitulasi data – data transaksi penjualan dan pendataan penjualan
secara efesien dan akurat .Dengan adanya sistem informasi penjualan tersebut dapat
membantu petugas kasir dalam pengelolaan data penjualan yang lebih efisien dan
akurat.pemodelan yang digunakan dalam perancangan aplikasi ini menggunakan
UML.Bahasa pemograman adalah PHP dan HTML.

Dengan demikian sangat diperlukan suatu sistem yang efisien dan efektif dalam
mengelola toko.Dan dengan adanya sistem informasi ini, toko dapat mencatat, membuat
dokumen yang berhubungan dengan penjualan untuk keperluan perusahaan maupun bagi
pihak diluar perusahaan yang memerlukannya. Informasi memang menjadi unsur penentu

10
dalam pengambilan keputusan, oleh sebab itu penyusunan informasi penjualan hendaknya
selalu dilaksanakan untuk mencapai tujuan tertentu.

B. Identifikasi Masalah

Permasalahan atau kendala yang terjadi pada sistem penjualan toko adalah:
1. Kurang efektifnya pencatatan barang keluar dan masuk dari supervisor dibutuhkan
untuk memantau transaksi;
2. Sulitnya palayan kasir dalam mencari data barang. Yang dimana dulu mencari barang
secara manual ;
3. Pembuatan laporan yang sering berbelit karena banyaknya transaksi yang keluar dan
masuk dalam toko.

C. TUJUAN
Adapun tujuan dari perancangan aplikasi kasir penjualan baju batik cetak adalah :
1. Rancang bangun antarmuka rekapitulasi data barang agar terorganisir dengan
baik untuk mengetahui persediaan barang dan laporan transaksi secara cepat;
2. Rancang bangun aplikasi pengelolaan data barang dan persediaan barang;
3. Rancang bangun aplikasi pencatatan data transaksi penjualan dan transaksi
pembelian.

D. LINGKUP DOKUMENTASI
Topik pembahasan yang ada yaitu tentang aplikasi kasir penjualan, maka penulis
membuat batasan penelitian, antara lain :
1. Aplikasi membahas pencatatan data barang, data pelanggan, data pengguna,
data pembelian, data penjualan, dan proses rekapitulasi laporan penjualan;
2. Hak akses pengguna aplikasi penjualan adalah admin dan kasir;
3. Hak akses untuk admin terdapat menu home, menu barang, menu pelanggan,
menu pengguna, menu pembelian, menu penjualan, dan menu laporan
penjualan;
4. Hak akses untuk kasir terdapat menu home, menu penjualan, dan menu
laporan penjualan;
5. Input barang penjualan tidak boleh lebih besar daripada stok;
6. Untuk menginputkan transaksi penjualan maka admin dan kasir harus
mengetahui kode garis (Barcode) barang.

11
E. Sistematika Penulisan
Dalam laporan ini terdiri dari 5 bab yang masing-masing bab berbeda
pembahasannya. Berikut pemaparan setiap bab :
BAB 1 PENDAHULUAN
bab ini menjelaskan latar belakang, rumusan masalah, tujuan, ruang lingkup
penelitian, dan sistematika penulisan dalam merancang Aplikasi Kasir .
BAB 2 LANDASAN TEORI
pada bab ini akan dibahas teori-teori yang dikutip dari suatu sumber, digunakan
sebagai landasan dalam proses perancangan dan pembuatan aplikasi. Landasan teori pada
bab ini meliputi rancang bangun, definisi aplikasi, definisi penjualan, definisi pembelian,
definisi xampp, definisi website, definisi database.
BAB 3 ANALISIS DAN PERANCANGAN
bab ini akan menjelaskan dan menganalisis proses bisnis yang berjalan pada saat ini
dan proses bisnis yang akan dibangun. Kemudian menjelaskan perancangan sistem yang
akan dibangun mulai dari DFD, struktur menu, dan perancangan antarmuka (user
interface) yang digunakan untuk merancang aplikasi yang akan dibangun.
BAB 4 IMPLEMENTASI DAN PENGUJIAN
bab ini akan membahas dan memaparkan hasil implementasi aplikasi yang dijalankan
dan pengujian terhadap aplikasi yang dihasilkan untuk mengukur sejauh mana aplikasi
tersebut dapat digunakan.
BAB 5 KESIMPULAN DAN SARAN
bab ini akan menjelaskan kesimpulan yang didapat dalam mengerjakan proyek yang
telah dibuat dan saran berupa perbaikan-perbaikan yang mendukung dalam pembuatan
dan pengembangan aplikasi.

12
BAB II
TINJAUAN PUSTAKA
2.1 Rancang Bangun
Rancang bangun adalah kegiatan menerjemahkan hasil analisa ke dalam bentuk paket
perangkat lunak kemudian menciptakan sistem tersebut ataupun memperbaiki sistem yang
sudah ada.[1]
Rancang Bangun adalah penggambaran, perencanaan, dan pembuatan sketsa atau
pengaturan dari beberapa elemen yang terpisah kedalam suatu kesatuan yang utuh dan
berfungsi.[2]
Dari pengertian diatas Penulis menyimpulkan bahwa Rancang Bangun adalah tahap
awal dari membuat gambaran dan bentuk sketsa yang belum pernah dibuat sama sekali lalu
dikelolah menjadi gambaran atau sketsa yang memiliki fungsi yang diinginkan.

2.2Definisi Aplikasi
Aplikasi adalah program yang berisikan perintah-perintah untuk melakukan
pengolahan data dengan membuat sistem atau program agar data diolah, misalnya
Microsoft Word dan Microsoft Excel..[3]
Dari pengertian diatas Penulis menyimpulkan bahwa aplikasi adalah program
siap pakai untuk melayani kebutuhan pengguna dalam berbagai aktifitas untuk
pengolahan data

2.3Defenisi Pembelian
Pembelian adalah transaksi belanja untuk barang masuk atau pengeluaran uang
yang kita lakukan untuk mendapatkan produk yang akan dijual, transaksi ini terjadi
pada supplier yang produknya dibeli..[4]
Pembelian adalah sebuah perusahaan dagang pembelian meliputi pembelian aktiva
produktif, pembelian barang dagangan serta pembelian barang dan jasa lain dalam
rangka kegiatan usaha.

13
Dari pengertian diatas Penulis menyimpulkan bahwa pembelian adalah suatu
kegiatan yang mengeluarkan sejumlah uang untuk mendapatkan barang ataupun produk
yang diinginkan sesuai dengan kebutuhan

2.4Defenisi Penjualan

Penjualan merupakan salah satu fungsi pemasaran yang sangat penting dan
menentukan bagi perusahaan dalam mencapai tujuan perusahaan yaitu memperoleh
laba untuk menjaga kelangsungan hidup perusahaan.Penjualan merupakan sumber
hidup suatu perusahaan, karena dapat memperoleh laba serta suatu usaha memikat
konsumenuntuk mengetahui daya tarik konsumen sehingga dapat mengetahui hasil
produk yang dihasikan..[5]

2.5 Pengertian Web


Aplikasi Berbasis Web adalah sebuah aplikasi yang dapat diakses melalui
internet dan sekarang ini ternyata lebih banyak dan lebih luas dalam
pemakaiannya. Banyak dari perusahaan-perusahaan berkembang yang menggunakan
Aplikasi Berbasis Web dalam merencanakan sumber daya mereka dan untuk
mengelola perusahaan mereka..[6]

2.6Perangkat Lunak Pendukung


Menurut Yakub pada buku Pengantar Sistem Informasi, perangkat lunak atau
program terdiri dari rangkaian industri elektonik yang menyeluruh untuk
mengerjakan sesuatu. Beberapa perangkat lunak penudukung yang digunakan dalam
pembuatan Sistem Informasi ini adalah PHP, XAMPP, MySQL.

2.7Pengertian PHP
PHP (Hypertext Preprocessor) adalah jenis bahasa scriptin (bahasa
penerjemahan) seperti HTML yang lazim digunakan di halaman web, kode yang
digunakan langsung dimasukkan ke dalam kode HTML.
PHP (Hypertext Preprocessor) adalah bahasa skrip yang dapat ditanamkan
ataudisisipkan kedalam HTML.Dari pengertian diatas Penulis menyimpulkan bahwa

14
PHP (Hypertext Preprocessor) adalah Bahasa Pemrograman yang dirancang untuk
membuat sebuah aplikasi web atau halaman web.

2.8 Pengertian MySQL


MySQL merupakan software database yang paling popular di lingkungan Linux,
kepopuleran ini karena ditunjang karena performansi query dari databasenya yang
saat itu bisa dikatakan paling cepat dan jarang bermasalah.MySQL telah tersedia
juga di lingkungan Windows.

2.9 Pengertian XAMPP


XAMPP adalah distribusi apache kecil dan ringan yang mengandung teknologi
pengembangan web yang paling umum dalam satu paket.
XAMPP adalah paket program web lengkap yang dapat anda pakai untuk
belajar pemrograman web, khususnya PHP dan MySQL paket ini dapat di download
secara gratis dan legal.
Dari pengertian diatas Penulis menyimpulkan bahwa XAMPP adalah sebuah
paket program untuk dapat mempelajari pemrograman web, khusus nya PHP dan
MySQL dan paket programan ini mudah di dapatkan dengan cara di download
secara gratis.

2.10 Pengertian Database


Database adalah kumpulan tabel walaupun lebih tepat dikatakan kumpulan
objek karena yang terkandung di dalam database sebenarnya bukan hanya tabel,
melainkan indeks, view, constraint dan trigger.
Database adalah bagian penting dalam sistem aplikasi, seluruh fitur yang ada
menggunkan database untuk melakukan fungsinya. Perancangan database pada
aplikasi meliputi perancangan database server. Databasesever adalah database utama
yang ada diserver.
Dari pengertian diatas Penulis menyimpulkan bahwa Databaseadalah sistem
aplikasi yang dirancang agar dapat menjadi sebuah aplikasi untuk menyediakan
sebuah informasi untuk pengguna.

15
BAB III

ANALISIS DAN PERANCANGAN

Pada bab ini menjelaskan mengenai analisis sistem yang sedang berjalan, analisis sistem
yang akan dibangun, dan perancangan sistem. Aplikasi Kasir merupakan aplikasi yang
menggunakan beberapa software yaitu PHP, MYSQL dan XAMPP. Dengan aplikasi ini
nantinya dapat membantu admin dan kasir dalam pengelolaan data transaksi penjualan dan
proses rekapitulasi laporan penjualan.

3.1Analisis Sistem
Analisis sistem merupakan uraian dari suatu sistem informasi yang sempurna ke
bagian-bagian komponennya dengan tujuan untuk mengevaluasi permasalahan atau kendala
yang terjadi di suatu sistem dan kebutuhan yang dapat diusulkan sebagai perbaikan suatu
aplikasi. Dalam aplikasi ini memiliki beberapa kekurangan seperti adanya kemungkinan
beberapa milik investor yang dapat menurunkan reputasi akibat kegagalan dalam memenuhi
bahan baku standar tertentu yang sehingga para custemers melakukan complain. Dan aplikasi
ini membatasi hak akses sehingga pegawai lainnya yang tidak memiliki hak akses di aplikasi
tersebut tidak dapat menggunakanya.

Perancangan sistem adalah merancang atau mendesain suatu system yang baik yang
isinya adalah langkah-langkah operasi dalam proses pengolahan data dan proses prosedur-
prosedur untuk mendukung operasi sistem. Tujuan dari perancangan sistem adalah untuk
memenuhi kebutuhan para pemakai sistem serta memberikan gambaran yang jelas dan
rancang bangun yang lengkap kepada programmer dan ahli-ahli yang terlibat didalam.

16
3.1.1 Analisis Sistem Berjalan (Current System)
Sistem yang berjalan saat ini terdiri dari dua prosedur yaitu pembelian dan pembayaran
barang

3.1.2 Analisis Sistem yang Berjalan pada Pembelian Barang

Menjelaskan tentang flowmap pembelian. Flowmap tersebut merupakan gambaran


alur proses pembelian barang yang sedang berjalan.

Aplikasi kasir yang sedang berjalan (Pembelian)


Pelanggan Admin

Mulai
Memberikan
barang yang
dipilih

Pergi ke
toko

Membuat nota
Ya
Ya barang

Membeli
barang

Nota telah
dibuat

Mencari ke toko
Sesuai selera?
lain?
Menyerahkan
barang ke
kasir
Tidak

Tidak Menerima nota


pembelian
barang B

Selesai A

Pada gambar di atas menjelaskan tentang flowmap pembelian. Flowmap tersebut


merupakan gambaran alur proses pembelian barang yang sedang berjalan.

17
3.1.3 Analisis Pembayaran

Aplikasi kasir yang sedang berjalan (Pembayaran)


Kasir Pelanggan

Mulai

Nota
pembelian A
barang cetak

Hitung
total yang
harus
dibayar Nota yang
harus dibayar

Nota yang
harus
dibayar
Membayar

Menerima
Pembayaran

Nota penjualan Nota penjualan

Buku trans aksi


penjualan Seles ai

Pada gambar di atas menjelaskan tentang flowmap pembayaran. Flowmap tersebut


merupakan alur proses pembayaran barang yang sedang berjalan.

18
3.2Analisis Sistem yang akan Dibangun

3.2.1 Analisis Menu Utama (Login)

Aplikasi kasir yang akan dibangun (Login)


Admin/Kasir Sistem

Mulai

Melakukan Halaman
Login Login

Tidak Validasi

Pilih Menu Halaman


Data Pelanggan Tidak
Barang Utama

Ya Brg

Pilh Menu
Data Pengguna Tidak
Pelanggan

Ya Plg

Pilih Menu
Pengguna

Tidak
Ya Pgn

Pilih Menu
Data Penjualan Ya Pnj
Penjualan

Tidak

Data Laporan Pilih Menu


Ya LPenj
Penjualan Laporan

Tidak Logout Selesai

Pada gambar di atas menjelaskan tentang flowmap menu utama (login). Flowmap tersebut
diakses oleh semua pengguna untuk login ke aplikasi kasir.

19
3.2.2 Analisis Menu Barang
Aplikasi kasir yang akan dibangun (Pilih Menu Barang)
Admin Sistem

Mulai Brg

Pilih Menu Menu


Barang Barang

Masukkan
Kode
Ya Barcode

Tambah Data
Barang
Masukkan
Nama
Tidak Barang

Ubah Data
Barang Masukkan
Satuan
Barang

Masukkan
Hapus Data
Stok
Barang
Barang

Masukkan
Cetak Data Harga Beli
Barang

Masukkan
Harga Jual
Print

Profit

Selesai

Simpan

Pada gambar di atas menjelaskan tentang flowmap menu barang. Flowmap tersebut alur
proses untuk tambah, edit, hapus, dan cetak data barang.

20
3.2.3 Analisis Menu Pelanggan

Aplikasi kasir yang akan dibangun (Pilih Menu Pelanggan)


Admin Sistem

Mulai Plg

Pilih Menu Menu


Pelanggan Pelanggan

Masukkan
Tambah Data
Ya Nama
Pelanggan
Pelanggan

Tidak
Masukkan
Alamat
Ubah Data
Pelanggan

Masukkan
Telepon

Hapus Data
Pelanggan

Masukkan
Email

Selesai

Simpan

Pada gambar di atas menjelaskan tentang flowmap menu pelanggan. Flowmap tersebut alur
proses untuk tambah, edit, dan hapus data pelanggan.

21
3.2.3 Analisis Menu Pengguna
Aplikasi kasir yang akan dibangun (Pilih Menu Pengguna)
Admin Sistem

Mulai Pgn

Pilih Menu Menu


Pengguna Pengguna

Masukkan
Username
Ya Pengguna

Tambah Data
Pengguna
Masukkan
Nama
Tidak Pengguna

Ubah Data
Pengguna Masukkan
Password
Pengguna

Masukkan
Hapus Data
Level
Pengguna
Pengguna

Masukkan
Foto
Selesai Pengguna

Masukkan
Harga Jual

Simpan

Pada gambar di atas menjelaskan tentang flowmap menu pengguna. Flowmap tersebut alur
proses untuk tambah, edit, dan hapus data pengguna.

22
3.2.4 Analisis Menu Pembelian
Aplikasi kasir yang akan dibangun (Pilih Menu Pembelian)
Admin Sistem

Mulai Pmb

Pilih Menu Menu


Pembelian Pembelian

Masukkan
Kode
Barcode
Data Barang
yang tersedia
Ya
Masukkan
Nama
Barang

Beli?

Masukkan
stok
Tidak

Masukkan
Menu
Qty
Pembelian
Barang

Masukkan
Harga Beli
Selesai

Masukkan
Harga Jual

Profit

Simpan

Pada gambar di atas menjelaskan tentang flowmap menu pembelian. Flowmap tersebut alur
proses untuk mengubah Qty barang setelah stok barang yang tersedia terjual.

23
3.2.5 Analisis Menu Penjualan

Aplikasi kasir yang akan dibangun (Pilih Menu Penjualan)


Admin Sistem

Mulai Pnj

Pilih Menu Menu


Penjualan Penjualan

Tambahkan
Kode Garis
Barang Selesai

Menampilkan
keterangan Print
barang

Masukkan
jumlah Cetak Struk
diskon

Masukkan
nominal yang
Hitung
dibayarkan
oleh Pembeli

Gambar 3.1Flowmap Menu Penjualan

Pada gambar 3.8, menjelaskan tentang flowmap menu penjualan. Flowmap tersebut alur
proses untuk menambahkan kode garis barang (barcode), menghitung diskon, menghitung
total penjualan, dan mencetak struk.

24
3.2.6 Analisis Menu Laporan Penjualan

Aplikasi kasir yang akan dibangun (Pilih Menu Laporan Penjualan)


Admin Sistem

Mulai LPenj

Pilih Menu
Menu
Laporan
Laporan
Penjualan
Penjualan

Masukkan
tanggal awal
dan tanggal
akhir penjualan

Cetak Laporan

Print

Selesai

Gambar 3.2Flowmap Menu Laporan Penjualan

Pada gambar 3.8, menjelaskan tentang flowmap menu laporan penjualan. Flowmap tersebut
alur proses untuk menampilkan seluruh laporan penjualan dan mencetak laporan penjualan
dengan memasukkan tanggal awal dan tanggal akhir penjualan.

25
3.3 Analisis Dokumen yang Digunakan
1. Table Menu Barang
Fungsi : Tambah, ubah, hapus, dan cetak data barang
Sumber : Admin
Rangkap : 2(dua)
Frekuensi : Setiap ada ingin menginpukan data barang
Isi dokumen :
Tabel 3.1TabelBarang
No Nama Field Type Field Lebar Keterangan
1. No Int 5 Nomor urut
2. Kode_barang Int 5 Kode barang
3. Nama_barang Varchar 50 Nama barang
4. Satuan Varchar 10 Jenis satuan barang
5. Stok Int 5 Jumlah stok barang
6. Harga_beli Int 10 Harga beli barang
7. Harga_jual Int 10 Harga jual barang
8. Profit Int 10 Profit penjualan barang
9. Aksi Varchar 5 Button ubah dan hapus data
barang

2. Table Menu Pelanggan


Fungsi : Menginputkan data pelanggan
Sumber : Admin
Rangkap : 2(dua)
Frekuensi : Setiap ada pelanggan yang menjadi member
Isi dokumen :
Tabel 3.2Tabel Pelanggan
No Nama Field Type Field Lebar Keterangan
1. No Int 5 No urut
2. Alamat Varchar 50 Alamat data pelanggan
3. Telepon Int 15 Nomor telepon pelanggan
4. Email Varchar 50 Email pelanggan
5. Aksi Varchar 5 Button ubah dan hapus data
pelanggan

26
3. Table Menu Pengguna
Fungsi : Menginputkan data pengguna aplikasi (users)
Sumber : Admin dan kasir / users
Rangkap : 2(dua)
Frekuensi : Setiap user ingin login
Isi dokumen :
Tabel 3.3Tabel Pengguna
No Nama Field Type Field Lebar Keterangan
1. No Int 5 Nomor urut
2. Username Varchar 20 Username user
3. Nama Varchar 20 Nama user
4. Password Varchar 20 Password user
5. Level Varchar 10 Level posisi user (admin/kasir)
6. Foto Image - Foto Profil user
7. Aksi Varchar 5 Button ubah dan hapus data
pengguna

4. Table Menu Pembelian


Fungsi : Mengubah qty barang setelah barang terjual
Sumber : Admin
Rangkap : 2(dua)
Frekuensi : Setiap ingin mengubah qty barang
Isi dokumen :
Tabel 3.4TabelPembelian
No Nama Field Type Field Lebar Keterangan
1. No Int 5 Nomor urut
2. Kode_barang Int 5 Kode barang barang
3. Nama_barang Varchar 50 Nama barang
5. Stok Int 5 Jumlah stok barang
6. Qty Int 5 Jumlah stok barang yang tersisa
6. Harga_beli Int 10 Harga beli barang
7. Harga_jual Int 10 Harga jual barang
8. Profit Int 10 Profit penjualan barang
9. Aksi Varchar 5 Button ubah dan hapus data
barang

5. Table Menu Penjualan


Fungsi : Menginputkan transaksi penjualan

27
Sumber : Admin dan kasir
Rangkap : 2(dua)
Frekuensi : Setiap ada transaksi penjualan
Isi dokumen :
Tabel 3.5Tabel Penjualan
No Nama Field Type Field Lebar Keterangan
1. No Int 5 Nomor urut
2. Kode_barang Int 5 Kode barang batik cetak
3. Nama_barang Varchar 50 Nama batik cetak
4. Harga Int 10 Harga batik cetak
5. Jumlah Int 10 Jumlah nominal pembelian
barang
6. Total Int 10 Total nominal pembelian barang

6. Table Menu Laporan Penjualan


Fungsi : Melihat rekapitulasi laporan penjualan
Sumber : Admin dan kasir
Rangkap : 2(dua)
Frekuensi : Setiap ingin melihat laporan penjualan
Isi dokumen :
Tabel 3.6TabelLaporan Penjualan
No Nama Field Type Field Lebar Keterangan
1. No Int 5 Nomor urut
2. Tanggal Date - Tanggal penjualan
3. Kode_barang Int 5 Kode garis barang
4. Nama_barang Varchar 50 Nama barang
5. Harga_jual Int 10 Harga jual barang
6. Jumlah Int 10 Jumlah penjualan barang
7. Total Int 10 Total penjualan barang
8. Profit Int 10 Profit penjualan barang

3.4 Analisis Kebutuhan Perangkat Lunak dan Perangkat Keras


Analisis kebutuhan non fungsional dilakukan untuk mengetahui spesifikasi kebutuhan untuk
sistem. Spesifikasi kebutuhan melibatkan analisis perangkat keras/hardware, analisis
perangkat lunak/software, dan analisis pengguna/user.
3.4.1 Kebutuhan perangkat keras

Tabel 3.7TabelKebutuhan perangkat keras

28
Nama Perangkat Spesifikasi Keterangan
No
1 Hardisk 500 GB Media untuk menyimpan data
aplikasi yang dibuat
2 Memory 4 GB Memory System yang
digunakan
3 Processor Intel® core™ Untuk kecepatan transfer data
i3-2350M CPU dari sistem yang sangat
@2,30 Ghz bergantung pada kecepatan
prosesor komputer
4 Infrastruktur jaringan Bisa dianalogikan sebagai alur
proses dari titik awal proses
sampai pada akhir proses

3.4.2 Kebutuhan perangkat lunak

Tabel 3.8TabelKebutuhan perangkat lunak


No Tools / Software Fungsi Keterangan
1. Windows 10 build(17134) Sistem Operasi sistem operasi
yang digunakan
2. Xampp v3.2.3 Server Basis Data server lokal yang
digunakan
3. Google Crome Browser Browser yang
digunakan untuk
menjalankan
aplikasi
4. PHP, HTML,CSS Bahasa Pemograman Bahasa
Yang digunakan pemogramman
yang digunakan
5. Sublime text Software Pendukung Tool editor

3.5 Analisis Pengguna/User

29
Aplikasi yang akan dibuat ini digunakan untuk penjualan dan data produk. Antara lain

melibatkan Super Admin (Ketua divisi penjualan dan data produk), Admin (Staff divisi

penjualan dan data produk), supplier(penyalur barang)dan Konsumen (Masyarakat).

Berikut ini adalah gambar analisa data pada perancangan aplikasi kelola data penjualan

aplikasi kasir yang akan dibangun dengan menggunakan context diagram  yang meliputi

diagram alur dan DFD. Dimana alir data ini menjelaskan proses yang terdapat pada aplikasi

yang akan dibuat, dengan melibatkan empat entitas yaitu Super Admin (Ketua divisi

penjualan dan data produk), Admin (Staf divisi penjualan dan data produk),

Supplier(penyalur barang) dan Konsumen (Masyarakat). Dimana setiap entitasmemiliki hak

akses yang berbeda-beda tergantung kebutuhannya pada sistem.

3.5.1 DFD (Data Flow Diagram)

Data flow diagram (DFD) adalah suatu gambaran logis yang menggambarkan aliran

data dari proses satu ke proses lainnya sehingga didapatkan informasi yang diinginkan,

sekaligus menggambarkan bagaimana suatu informasi menjadi data dan bagaimana proses

selanjutnya. Diagram aliran data ini menggambarkan kesatuan luar (entity), aliran data (data

flow), proses (process) dan simpan data (data store).

3.5.2 DFD Level 0

Seperti dijelaskan sebelumnya, DFD level 0 ini merupakan penjabaran dari Context

Diagram pada sistem aplikasi ini. DFD level 0 ini terdiri dari 9 (sembilan) proses sesuai

dengan urutan sebagai berikut:

1. login admin dan staff kasir;

30
2. kelola data admin;

3. kelola data pelanggan;

4. kelola data pembayaran;

5. kelola data barang;

6. kelola data laporan.

Setiap proses memiliki representasi masing-masing pada sebuah tabel atau data yang

terdapat pada database yang telah dirancang sebelumnya. Dan setiap proses

berhubungan langsung dengan entitas atau user. 

Adapun DFD Level 0 pada Aplikasi Kasir adalah sebagai berikut :

31
l ogin l ogin

1 data pengguna data pengguna 2


data pel anggan
Admi n(ketua di vi si kasi r(staff divi si penjualan)
penjual an) data pelanggan
data barang data barang
l apotan penj ualan
laporan penj ual an

konf login konf l ogi n


kornf data pengguna konf data pengguna
konfdata pelanggan
konf data pelanggan APLIKASI KASIR konf data barang
konf data barang
konf l aporan penj ualan
konf l aporan penjual an
konf data barang
konf data pelanggan

info data pel anggan

Pelanggan Barang

Pada DFD Level 0 diatas mencakup :

1. empat entitas utama yaitu admin (ketua divisi penjualan dan data produk),

kasira (staf divisi penjualan dan data produk),supplier (penyalur barang) dan

konsumen(masyarakat). dimana setiap entitas memiliki hak akses yang berbeda

tergantung kebutuhannya pada sistem;

2. terdapat empat proses utama yang berjalan pada sistem, yaitu kelola data

admin, kelola data pengguna, kelola data pelanggan, kelola data barang, , kelola data

produk, kelola data laporan. dimana setiap proses ini mewakili beberapa proses

dalam sistem dengan rincian sebagai berikut :

32
1. kelola data penguna mencakup pengelolaan data pengguna yang dilakukan oleh
admin, untul mendokumentasikan data pengguna yang telah mendaftar sebagai
anggota toko.data pengguna dapat mengakses semua fitur-fitur yang terdapat dalam
aplikasi;
2. kelola data pelanggan mencakup pengelolaan data pelanggan yang dilakukan oleh
konsumen, data pelanggan ini dikelola oleh admin, ada search dalam data pelangan
yang berfungsi untuk memudahkan mencari data pelanggan;
3. kelola data barang mencakup pengelolaan data barang yang dijual oleh setiap pemilik
toko . dimana setiap pengguna memiliki hak akses untuk mengupdate data terbaru
tentang produk yang mereka tawarkan, dan dapat memudahkan dalam pencarian
barang dangan bantuan search,di setip barang memiliki barcode masing-masing
sehingga kasir mudah untuk menghitung transaksinya. Daqlam data barang terdapat
nama barang, jenis, satuan, stok, harga beli, harga jual dan profit;
4. kelola data laporan mencakup rekap data laporan pembelian dan laporan pembayaran
yang dikelola oleh kasir. dan rekap data ini dapat juga dilihat oleh admin. Data
laporan berdasarkan tanggal, data laporan ini dikelolah admin dan kasir;

5. Data laporan penjualan mencakup semua transaksi yang terjadi pada saat itu, laporan
penjualan dapat di cetak kemudian di print;

Setiap proses pengelolan data memiliki alir data masing – masing yang meliputi

tambah, ubah, hapus, lihat data serta cetak data laporan.

3.5.3 DFD Level 1

A. DFD Level 1
33
Penurunan proses dari data flow diagram level 0 ke DFD level 1 terdiri atas

admin, barang, dan pelanggan.


l og i n l ogi n

1 d a ta pe ngguna d a ta p e n g g u n a 2
d a ta p e l a n g g a n
A d m i n (ke t u a d i vi si ka si r(sta f f d i vi si penj ual an)
penj ual an) d a ta pel angg an
d a ta b a ra n g d a t a b a ra n g
l a p o ta n p e n j u a l a n
l a p o ra n p e n j u a l a n

ko n f l o g i n ko n f l o g i n
ko rn f data penggu na ko n f d a t a p e n g g u n a
ko n f d a t a p e l a n g g a n
ko n f d a t a p e l a n g g a n A PL I KA SI K AS IR ko n f d a ta b a ra n g
ko n f d a t a b a ra n g
ko n f l a p o ra n p e n j u a l a n
ko n f l a p o ra n p e n j u a l a n
ko n f d a t a b a ra n g
ko n f d a t a pel angga n

i n fo d a ta pel angg an

Ba ra n g
P el an ggan

1
1 adm i n
M a st e r a d m i n

Al i ka si K a si r 2
2 b a ra n g
M a st e r b a ra n g

3
3 pel angga n
m a ste r p e l a n g g a n

3.1.2.4.3 DFD Level 2

34
Penurunan proses dari data flow diagram level 0 ke DFD level 2 aplikasi kasir terbagi

atas 3, proses yaitu :

 Proses admin

 Proses barang

35
 Proses pelanggan

3.1.2.5 Spesifikasi Proses (Process Specification)

3.1.2.5.1 Spesifikasi Proses (Process Specification) DFD Level 0

Tabel 3.7 Spesifikasi Proses (Process Specification) DFD Level 0

No Proses Masukan Keluaran Logikal


Uji Proses

1 Kelola Data keloladata_pengguna konf_keloladata_pengguna Begin


Pengguna
If
Pilih menu:
Masukkan
pengelolaan
data
pengguna 
yg
diinginkan
Then

36
Tampil
menu yang
diinginkan
Endif
End
2 Kelola Data keloladata_pelanggan konf_keloladata_pelanggan Begin
Pelanggan
If
Pilih menu:
Masukkan
pengelolaan
data
pelanggan
yg
diinginkan
Then
Tampil
menu yg
diinginkan
Endif
End
3 Kelola Data keloladata_order(pembelian) konf_keloladata_ Begin
Pembelian order(pembelian)
If
Pilih menu:
Masukkan
pengelolaan
data
pembelian
yg
diinginkan
Then
Tampil
menu yg
diinginkan
Endif
End
4 Kelola Data keloladata_pembayaran konf_keloladata_ Begin
Pembayaran pembayaran
If

37
Pilih menu:
Masukkan
pengelolaan
data
pembayaran
yg
diinginkan
Then
Tampil
menu yg
diinginkan
Endif
End
5 Kelola Data keloladata_barang konf_keloladata_ barang Begin
Barang
If
Pilih menu:
Masukkan
pengelolaan
data produk
yg
diinginkan
Then
Tampil
menu yg
diinginkan
Endif
End
6 Kelola Data keloladata_laporan konf_keloladata_ laporan Begin
Laporan
If
Pilih menu:
Masukkan
pengelolaan
data laporan
yg
diinginkan
Then
Tampil
menu yg

38
diinginkan
Endif
End

3.1.2.5.2 Spesifikasi Proses (Process Specification) DFD Level 1

Tabel 3.8 Spesifikasi Proses (Process Specification) DFD Level 1

No Proses Masukan Keluaran Logika proses


Uji
1 master keloladata_admin konf_keloladata_admin Begin
admin
Masukkan data
admin
Then
Tampilkan
konfirmasi data
admin
End if
End
2 master keloladata_barang konf_keloladata_barang Begin
barang
Masukkan data
barang
Then
Tampilkan
konfirmasi data
barang
End if
End
3 master keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then

39
Tampilkan
konfirmasi data
pelanggan
End if
End

3.1.2.5.3 Spesifikasi Proses (Process Specification) DFD Level 2


Tabel 3.9 Spesifikasi Proses (Process Specification) DFD Level 2 Proses Kelola Data

Pengguna

No Proses Masukan Keluaran Logika proses


Uji
1 tambah data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then
Tampilkan
konfirmasi data
pelanggan
End if
End
2 ubah data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then
Tampilkan
konfirmasi ubah
data pelanggan
End if
End
3 hapus data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then

40
Tampilkan
konfirmasi hapus
data pelanggan
End if
End

Tabel 3.10 Spesifikasi Proses (Process Specification) DFD Level 2 Proses Kelola Data

Barang

No Proses Masukan Keluaran Logika proses


Uji
1 tambah data keloladata_barang konf_keloladata_barang Begin
barang
Masukkan data barang
Then
Tampilkan konfirmasi
data barang
End if
End
2 ubah data keloladata_barang konf_keloladata_barang Begin
barang
Masukkan data barang
Then
Tampilkan konfirmasi
ubah data barang
End if
End
3 hapus data keloladata_barang konf_keloladata_barang Begin
barang
Masukkan data barang
Then
Tampilkan konfirmasi
hapus data barang
End if
End

41
Tabel 3.11 Spesifikasi Proses (Process Specification) DFD Level 2 Proses Kelola Data

Pelanggan

No Proses Masukan Keluaran Logika proses


Uji
1 tambah data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then
Tampilkan
konfirmasi data
pelanggan
End if
End
2 ubah data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then
Tampilkan
konfirmasi ubah
data pelanggan
End if
End
3 hapus data keloladata_pelanggan konf_keloladata_pelanggan Begin
pelanggan
Masukkan data
pelanggan
Then
Tampilkan
konfirmasi hapus
data pelanggan
End if
End

42
3.6USER INTERFACE

3.6.1 Halaman Utama

ui Halaman Utama Admin

Batik Cetak

DASHBOARD

Data Barang Penjualan Hari Ini Profit Hari Ini


Home

Produk

Pelanggan

Pengguna

Penjualan

Laporan Penjualan

3.6.2 Halaman Kasir

43
ui Halaman Utama Kasir

Batik Cetak

DASHBOARD

Data Barang Penjualan Hari Ini Profit Hari Ini

Home

Penjualan

Laporan Penjualan

3.6.3 Halaman Barang


ui Halaman Produk

Batik Cetak

Data Produk Search

Home Nama Produk Satuan Stok Harga Beli


No Kode Produk Harga Jual Profit Aksi

Produk
Ubah Hapus

Pelanggan

Pengguna

Penjualan

Laporan Penjualan

Tambah Cetak

44
3.6.4 Halaman Pelanggan
ui Halaman Pelanggan

Batik Cetak

Data Pelanggan

Search
Home

Produk No Nama Alamat Telepon Email Aksi

Pelanggan Ubah Hapus

Pengguna

Penjualan

Laporan Penjualan
Tambah

3.6.5 Halaman Pengguna


ui Halaman Pengguna

Batik Cetak

Data Pengguna

Search
Home

Produk No Username Nama level foto aksi

Pelanggan Ubah Hapus

Pengguna

Penjualan

Laporan Penjualan
Tambah

45
3.6.6 Halaman Penjualan
ui Halaman Penjualan

Batik Cetak

Tambahkan

Pelanggan:

No-Member
Home

Daftar Belanja
Produk

No Kode Penjualan Nama Barang Harga Jumlah Total


Pelanggan
Total
Pengguna
Diskon
Penjualan Potongan Dsikon

Laporan Penjualan Sub Total

Bayar

Kembali Hitung Cetak Struk

3.7 Struktur Database

Rancangan Basis data

No. Nama Entitas Deskripsi


1. barang Entitas yang terdapat pada aplikasi untuk
menyimpan data barang yang diperlukan
2. pengguna Entitas untuk menyimpan data pengguna serta
dapat menghapus data yang terdapat pada
aplikasi
3. pelanggan Entitas untuk menyimpan data pelangan serta
dapat diubah atau dihapus data yang tedapat
pada entitas pelanggan.
4. supplier Entitas untuk menyimpan data supplier serta
dapat diubah atau dihapus data yang tedapat
pada entitas supplier
5. Penjualan, Entitas untuk memasukan data data dalam
penjualan barang yang ada

46
47
Struktur

48
49
BAB IV
IMPLEMENTASI
implementasi adalah sesuatu yang bermuara pada akhtivitas, aksi, tindakan atau aktivitas
yang dilakukan secara sistematis dan terikat oleh mekanisme. Dengan begitu, maka
implementasi bukan sekedar aktivitas, tetapi suatu kegiatan yang terencana dan untuk
mencapai tujuan kegiatan. Dengan dilaksanakan pengujian dan implementasi dapat
memunculkan keunggulan pada sistem yang dibuat.
Selain itu, dengan melakukan implementasi pada sistem yang telah dibuat mempunyai
beberapa tujuan, tujuan implementasi sebagai berikut:
 Tujuan utama implementasi adalah untuk melaksanakan rencana yang telah disusun
dengan cermat, baik oleh individu maupun kelompok.
 Untuk menguji serta mendokumentasikan suatu prosedur dalam penerapan rencana
atau kebijakan.
 Untuk mewujudkan tujuan-tujuan yang hendak dicapai di dalam perencanaan atau
kebijakan yang telah dirancang.
 Untuk mengetahui kemampuan masyarakat dalam menerapkan suatu kebijakan atau
rencana sesuai dengan yang diharapkan.
 Untuk mengetahui tingkat keberhasilan suatu kebijakan atau rencana yang telah
dirancang demi perbaikan atau peningkatan mutu.
 dan mengetahui semua prosedur yang telah dibuat akan berjalan serta mengetahui
bahwa sistem tidak ada yang mengalami kesalahan.

Tahap implementasi merupakan tahapan yang sangat penting dalam pembuatan sebuah
aplikasi,demikian dengan cara ini kendala dan bagaimana aplikasi itu berjalan dengan baik
atau tidak dapat ditemukan sehingga sistem atau aplikasi dapat diperbaiki.
4.1 Pembahasan Hasil Implementasi
Implementasi dari aplikasi ini, dijelaskan secara umum dari halaman pengguna, halaman
supplier, dan halaman barang dl
A. Halaman Utama
Halaman ini merupakan halaman utama dari aplikasi yang memiliki menu-menu, antara
lain:
a) Produk,merupakan halaman yang dapat menambahkan, edit, atau menghapus data
produk;
b) Pelanggan, dimana di halaman ini admin dapat menambahkan, edit, atau menghapus
data pelanggan yang menjadi member pembelian batik cetak;

50
c) Pengguna, disini admin dapat menginputkan data pengguna aplikasi atau hak akses
aplikasi;
d) Supplier, yang dimana di halaman ini dapat menambahkan , edit, dan menghapus data
supplier;
e) Penjualan, dimana di halaman ini admin dapat menginputkan kode garis produk untuk
mengetahui harga produk dan melakukan perhitungan transaksi penjualan;
f) Laporan Penjualan, dimana di halaman ini admin dapat melihat laporan penjualan
baju batik cetak dengan menginputkan tanggal awal dan tanggal akhir penjualan.
4.2 Tampilan Antar Muka / Interface
User Interface adalah tampilan visual sebuah produk yang menjembatani sistem
dengan pengguna (user). Tampilan UI dapat berupa bentuk, warna, dan tulisan yang didesain
semenarik mungkin. Secara sederhana, UI adalah bagaimana tampilan sebuah produk dilihat
oleh pengguna. 
Interface dari aplikasi ini adalah sebagi berikut:
4.2.1 Tampilan Halaman Utama

Gambar 4.3 Tampilan Halaman Utama Admin

51
4.2 .2 Tampilan Halaman Produk

Gambar 4.4 Tampilan Halaman Produk

4.2.3 Tampilan Halaman Pelanggan

Gambar 4.5 Tampilan Halaman Pelanggan

52
4.2.4 Tampilan Halaman Pengguna

Gambar 4.6 Tampilan Halaman Pengguna

4.2.5 Tampilan Halaman Penjualan

Gambar 4.7 Tampilan Halaman Penjualan

53
4.3 Pengujian dan hasil Pengujian
Deskripsi dan Hasil Uji
Tabel 4.9Tabel Deskripsi dan hasil uji

Keluaran
Prosedur Masuka Hasil yang
Deskripsi yang
Pengujian n didapat
diharapkan

Sesuai
Pengujian dengan
Klik Halaman
Menu yang
dashboard dashboard
dashboard diharapka
n
Sesuai
dengan
Pengujian yang
Halaman
Menu Klik barang diharapka
barang
barang n

Sesuai
dengan
Pengujian yang
Klik Halaman
Menu diharapka
pelanggan pelanggan
pelanggan n

Sesuai
dengan
Pengujian yang
Klik Halaman
Menu diharapka
pengguna pengguna
pengguna n

Sesuai
dengan
Pengujian yang
Klik Halaman
Menu diharapka
penjualan penjualan
penjualan n

A. Kelas Uji Form Produk


Tabel 4.10Tabel Kelas Uji Form Produk

54
Keluaran
Prosedur Masuk Hasil yang
Deskripsi yang
Pengujian an didapat
diharapkan

- Klik tambah
untuk
Data barang
menambahka
yang
n data barang
ditambahka Sesuai
Pengujian -Klik ubah n dapat dengan
Menu atau hapus tersimpan di yang
barang untuk menu diharapka
mengubah barang dan n
atau hapus dapat
data barang ditampilkan

B. Kelas Uji Form Pelanggan


Tabel 4.11Tabel Kelas Uji Form Pelanggan
Keluaran
Prosedur Masuk Hasil yang
Deskripsi yang
Pengujian an didapat
diharapkan
- Klik tambah
untuk Data
menambahka pelanggan
n data yang
pelanggan Sesuai
ditambahka
Pengujian dengan
-Klik ubah n dapat
Menu yang
atau hapus tersimpan di
Pelanggan diharapka
untuk menu
n
mengubah pelanggan
atau hapus dan dapat
data ditampilka
pelanggan

C. Kelas Uji Form Pengguna


Tabel 4.12Tabel Kelas Uji Form Pengguna
Keluaran
Prosedur Masuk Hasil yang
Deskripsi yang
Pengujian an didapat
diharapkan
Pengujian - Klik tambah Data Sesuai
Menu untuk pengguna dengan
Pengguna menambahka yang yang
n data ditambahka diharapka
pengguna n dapat n
tersimpan di

55
-Klik ubah
atau hapus
menu
untuk
pengguna
mengubah
dan dapat
atau hapus
ditampilkan
data
pengguna

D. Kelas Uji Form Penjualan


Tabel 4.13Tabel Kelas Uji Form Penjualan
Keluaran
Prosedur Masuk Hasil yang
Deskripsi yang
Pengujian an didapat
diharapkan

- Input kode
garis produk
untuk
menampilkan
keterangan
produk serta
harga produk

-Klik
tambahkan Data produk
setalah ditampilkan
memasukkan setelah
kode garis Sesuai
memasukka
Pengujian produk dengan
n kode garis
Menu yang
- Masukkan produk dan
Penjualan diharapka
jumlah diskon dapat
n
mencetak
- Masukkan struk
nominal yang pembelian
dibayarkan
oleh pembeli

-Klik hitung

-Klik cetak
struk untuk
mencetak
struk
pembelian

56
4.5 logika fungsi/algoritma aplikasi

A. Home

<?php

    $tgl = date("Y-m-d");

    $sql = $koneksi->query("select * from  tb_penjuala
n,tb_barang where tb_penjualan.kode_barcode=tb_barang.
kode_barcode and tgl_penjualan='$tgl'");

    while ($tampil=$sql->fetch_assoc()) {
        $profit = $tampil['profit']*$tampil['jumlah'];

        $total_pj = $total_pj+$tampil['total'];

        $total_profit = $total_profit+$profit;
    }

    $sql2 = $koneksi->query("select*from tb_barang");

    while ($tampil2=$sql2->fetch_assoc()){
        $jumlah_brg=$sql2->num_rows;

    }

?>

57
<marquee>Selamat Datang Di TOKO GEMBIRA</marquee>

 <div class="container-fluid">
            <div class="block-header">
                <h2>MENU</h2>
            </div>

            <!-- Widgets -->
            <div class="row clearfix">
                <div class="col-lg-3 col-md-3 col-sm-6 
col-xs-12">
                    <div class="info-box bg-pink hover
-expand-effect">
                        <div class="icon">
                            <i class="material-
icons">playlist_add_check</i>
                        </div>
                        <div class="content">
                            <div class="text">Data Bar
ang </div>
                            <div class="number count-
to" data-from="0" data-to="125" data-speed="15" data-
fresh-interval="20"><?php echo $jumlah_brg; ?></div>
                        </div>
                    </div>
                </div>
                <div class="col-lg-3 col-md-3 col-sm-6 
col-xs-12">
                    <div class="info-box bg-cyan hover
-expand-effect">
                        <div class="icon">
                            <i class="material-
icons">add_shopping_cart</i>
                        </div>
58
                        <div class="content">
                            <div class="text">Penjuala
n Hari Ini Saja</div>
                            <div class="number count-
to" data-from="0" data-to="257" data-speed="1000" data
-fresh-interval="20"><?php echo "Rp"."&nbsp". number_f
ormat ($total_pj); ?></div>
                        </div>
                    </div>
                </div>
                <div class="col-lg-3 col-md-3 col-sm-6 
col-xs-12">
                    <div class="info-box bg-light-
green hover-expand-effect">
                        <div class="icon">
                            <i class="material-
icons">attach_money</i>
                        </div>
                        <div class="content">
                            <div class="text">Profit H
ari Ini</div>
                            <div class="number count-
to" data-from="0" data-to="243" data-speed="1000" data
-fresh-interval="20"><?php echo "Rp"."&nbsp". number_f
ormat($total_profit); ?></div>
                        </div>
                    </div>
                </div>
                 <div class="col-lg-3 col-md-3 col-sm-
6 col-xs-12">
                    <div class="info-box bg-cyan hover
-expand-effect">
                        <div class="icon">

59
                            <i class="material-
icons">collections</i>
                        </div>
                        <div class="content">
                            <div class="text">collecti
ons</div>
                             <a href="images/image-
gallery/s.jpg" data-sub-html="Demo Description">
                                        <img class="im
g-responsive thumbnail" src="images/image-
gallery/s.jpg">
                                    </a>
                            
                        </div>
                    </div>
                   <div class="body">
                            <div id="aniimated-
thumbnials" class="list-unstyled row clearfix">
                               
                                    <a href="images/im
age-gallery/w.jpg" data-sub-html="Demo Description">
                                        <img class="im
g-responsive thumbnail" src="images/image-
gallery/w.jpg">
                                    </a>
                                </div>
                         <div class="body">
                           
                               
                                    <a href="images/im
age-gallery/ayu.jpg" data-sub-html="Demo Description">
                                        <img class="im
g-responsive thumbnail" src="images/image-
gallery/ayu.jpg">
60
                                    </a>
                                </div>
                                <div class="body">
                            <div id="aniimated-
thumbnials" class="list-unstyled row clearfix">
                               
                                    <a href="images/im
age-gallery/pam.jpg" data-sub-html="Demo Description">
                                        <img class="im
g-responsive thumbnail" src="images/image-
gallery/pam.jpg">
                                    </a>
                                </div>
                         
                         
               

B. barang

 <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                              Data Barang
                            </h2>
                            
                               
                        </div>
                        <div class="body">
                            <table class="table table-bordered table-striped 
table-hover js-basic-example dataTable">
                                <thead>
                                    <tr>

                                        <th>No</th>
                                        <th>Kode barcode</th>
                                        <th>Nama barang</th>
                                        <th>Satuan</th>
                                        <th>Harga beli</th>
                                        <th>Stok</th>

61
                                        <th>Harga jual</th>
                                        <th>Profit</th>
                                        <th>Aksi</th>
                                    </tr>
                                </thead>

                                
                                <tbody>

                                    <?php
                                    $no = 1;
                                    $sql = $koneksi->query("select * from tb_
barang");
                                    while ($data = $sql->fetch_assoc()) {
                                        # code...
                                    

                                    ?>
                                    <tr>
                                        <td><?php echo $no++; ?></td>

                                        <td><?php echo $data['kode_barcode']; 
?></td>
                                        <td><?php echo $data['nama_barang']; 
?></td>
                                        <td><?php echo $data['satuan']; ?
></td>
                                        <td><?php echo $data['harga_beli']; ?
></td>
                                         <td><?php echo $data['stok']; ?
></td>
                                        <td><?php echo $data['harga_jual']; ?
></td>
                                        <td><?php echo $data['profit']; ?
></td>
                                        <td>
                                            <a href="?
page=barang&aksi=ubah&id=<?php echo $data['kode_barcode'] ?>" class="btn btn-
success">Ubah</a>
                                                <a onclick="return confirm('A
pakah Anda Yakin Akan Menghapus Data ini?')" href="?
page=barang&aksi=hapus&id=<?php echo $data['kode_barcode'] ?>" class ="btn btn
-danger">Hapus</a>

                                            
                                    </tr>
                                <?php } ?>
                                   

62
                                </tbody>
                            </table>
                            <a href="?page=barang&aksi=tambah" class="btn btn
-primary">Tambah</a>

                        </div>

 Hapus Barang

<?php

    $kode2 =$_GET['id'];

    $sql = $koneksi->query("delete from tb_barang where kode_barcode =
'$kode2'");

if($sql){

    ?>

        <script type="text/javascript">
            alert("Data Berhasil Dihapus");
            window.location.href="?page=barang";
        </script>

    <?php

?>

 Tambah Barang

<script>
    function sum(){
        var harga_beli = document.getElementById('harga_beli').value;
        var harga_jual = document.getElementById('harga_jual').value;
        var result = parseInt(harga_jual) - parseInt(harga_beli);
        if (!isNaN(result)){
            document.getElementById('profit').value = result;
        }       
    }
 </script>

63
<div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                                Tambah Barang
                               
                            </h2>

                        </div>

                            <div class="body">
                                <form method="POST">
                                    <label for="">Kode Barcode</label>
                             <div class="form-group">
                                        <div class="form-line">
                                            <input type="text" name="kode" cl
ass="form-control"  />
                                        </div>
                                    </div>
                                    <label for="">Nama Barang</label>
                             <div class="form-group">
                                        <div class="form-line">
                                            <input type="text" name="nama" cl
ass="form-control"  />
                                        </div>
                                    </div>
                                    <label for="">Satuan</label>
                                        <div class="form-line">
                                    <select class="form-control show-tick">
                                        <option value="">-- Pilih Satuan --
</option>
                                        <option value="LUSIN">LUSIN</option>
                                        <option value="PCS">PCS</option>
                                    </select>
                                </div>
                                 <label for="">stok</label>
                         <div class="form-group">
                                        <div class="form-line">
                                            <input type="number" name="stok" 
class="form-control"  />
                                        </div>
                                    </div>
                                     <label for="">harga beli</label>
                                     <div class="form-group">
                                        <div class="form-line">

64
                                            <input type="number" name="hbeli" 
id="harga_beli" onkeyup="sum()" class="form-control"  />
                                        </div>
                                    </div>
                                    <label for="">harga jual</label>
                                     <div class="form-group">
                                        <div class="form-line">
                                            <input type="number" name="hjual" 
id="harga_jual" onkeyup="sum()" class="form-control"  />
                                        </div>
                                    </div>
                                    <label for="">profit</label>
                                     <div class="form-group">
                                        <div class="form-line">
                                            <input type="number" name="profit
" id="profit" style="background-color: #e7e3e9;"value = "0" class="form-
control"  />
                                        </div>
                                    </div>
                                    <input type="submit" name="simpan" value=
"simpan" class="btn btn-primary">
                        </form>
                        <?php
                        if(isset($_POST['simpan'])){
                $kode = $_POST['kode'];
                $nama = $_POST['nama'];
                $satuan = $_POST['satuan'];
                $hbeli = $_POST['hbeli'];
                $stok = $_POST['stok'];
                $hjual = $_POST['hjual'];
                $profit = $_POST['profit'];

                $sql = $koneksi->query("insert into tb_barang values('$kode', 
'$nama', '$satuan', '$hbeli', '$stok', '$hjual','$profit')");

                if($sql){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Disimpan");
                            window.location.href="?page=barang";
                        </script>
                    <?php
                }
            }                           # code...
                        

65
                        ?>

 Edit Barang

 <script>
    function sum(){
        var harga_beli = document.getElementById('harga_beli').value;
        var harga_jual = document.getElementById('harga_jual').value;
        var result = parseInt(harga_jual) - parseInt(harga_beli);
        if (!isNaN(result)){
            document.getElementById('profit').value = result;
        }       
    }
 </script>

 <?php

    $kode2 =$_GET['id'];

    $sql = $koneksi->query("select * from tb_barang where kode_barcode =
'$kode2'");
    $tampil = $sql->fetch_assoc();

    $satuan = $tampil['satuan'];

 ?>
 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                               Ubah Barang
                            </h2>
                        </div>
                            <div class ="body">

                            <form method ="POST">
                                <label for="">Kode Barcode</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="kode"value 
="<?php echo $tampil['kode_barcode'] ?>" class="form-control"  />
                                    </div>
                                </div>

66
                                <label for="">Nama Barang</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="nama" value 
="<?php echo $tampil['nama_barang'] ?>" class="form-control"  />
                                    </div>
                                </div>
                                <label for="">Satuan</label>
                                <div class="form-group">
                                    <div class="form-line">
                                    <select class="form-control show-tick">
                                        
                                        <option value="LUSIN"<?php if 
($satuan=='LUSIN'){echo "selected";   }?>>LUSIN</option>
                                        <option value="PCS" <?php if ($satuan 
=='PCS'){echo "selected";   }?>>PCS</option>
                                    </select>
                                </div>

                                 <label for="">Stok</label>,.

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="stok" val
ue ="<?php echo $tampil['stok'] ?>" class="form-control"  />
                                    </div>
                                </div>

                                 <label for="">Harga Beli</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="hbeli" id
="harga_beli" onkeyup="sum()" value ="<?php echo $tampil['harga_beli'] ?>" cla
ss="form-control"  />
                                    </div>
                                </div>

                                 <label for="">Harga Jual</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="hjual" id
="harga_jual" onkeyup="sum()" value ="<?php echo $tampil['harga_jual'] ?
>"class="form-control"  />
                                    </div>

67
                                </div>

                                 <label for="">Profit</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="profit" i
d ="profit" value ="<?php echo $tampil['profit'] ?>" readonly="" style 
="background-color: #e7e3e9;"value = "0" class="form-control"  />
                                    </div>
                                </div>

                                <input type="submit" name="simpan" value ="si
mpan" class= "btn btn-primary">

                            </form>
    <?php 

            if(isset($_POST['simpan'])){

                $kode = $_POST['kode'];
                $nama = $_POST['nama'];
                $satuan = $_POST['satuan'];
                $hbeli = $_POST['hbeli'];
                $stok = $_POST['stok'];
                $hjual = $_POST['hjual'];
                $profit = $_POST['profit'];

                $sql2 = $koneksi->query("update tb_barang set kode_barcode=
'$kode',nama_barang='$nama', satuan='$satuan', harga_beli='$hbeli', stok='$sto
k', harga_jual='$hjual', profit='$profit' where kode_barcode ='$kode2'");

                if($sql2){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Diubah");
                            window.location.href="?page=barang";
                        </script>
                    <?php
                }
            }
    ?>

C. Pelanggan

68
 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                                Data Pelanggan
                            </h2>
                           
                        <div class="body">
                            <div class="table-responsive">
                                <table class="table table-bordered table-
striped table-hover js-basic-example dataTable">
                                    <thead>
                                        <tr>
                                            <th>No</th>
                                            <th>Nama</th>
                                            <th>Alamat</th>
                                            <th>Telpon</th>
                                            <th>Email</th>
                                            <th>Aksi</th>
                                        </tr>
                                    </thead>

                                   
                                </tbody>
                                        <?php

                                            $no=1;
                                            $sql = $koneksi->query("select * 
from tb_pelanggan");

                                            while ($data = $sql-
>fetch_assoc()){

                                            ?>

            
                                    <tbody>
                                        <tr>
                                            <td><?php echo $no++; ?></td>
                                            <td><?php echo $data['nama'] ?
></td>
                                            <td><?php echo $data['alamat'] ?
></td>
                                            <td><?php echo $data['telpon'] ?
></td>
                                            <td><?php echo $data['email'] ?
></td>

69
                                           
                                            <td>
                                                <a href="?
page=pelanggan&aksi=ubah&id=<?php echo $data['kode_pelanggan'] ?>" class="btn 
btn-success">Ubah</a>
                                                <a onclick="return confirm('A
pakah Anda Yakin Akan Menghapus Data ini?')" href="?
page=pelanggan&aksi=hapus&id=<?php echo $data['kode_pelanggan'] ?>" class 
="btn btn-danger">Hapus</a>
                                            </td>
                                        </tr>
                                    <?php } ?>
                                    </tbody>
                                </table>
                                <a href="?page=pelanggan&aksi=tambah" clas
s="btn btn-primary">Tambah</a>
                            </div>

 Hapus Pelanggan

?php

    $kode =$_GET['id'];

    $sql = $koneksi->query("delete from tb_pelanggan where kode_pelanggan =
'$kode'");

if($sql){

    ?>

        <script type="text/javascript">
            alert("Data Berhasil Dihapus");
            window.location.href="?page=pelanggan";
        </script>

    <?php

?>

 Tambah Pelanggan

70
 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                               Tambah Pelanggan
                            </h2>
                        </div>
                            <div class ="body">

                            <form method ="POST">
                                <label for="">Nama</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="nama" class
="form-control"  />
                                    </div>
                                </div>

                                <label for="">Alamat</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="alamat" cla
ss="form-control"  />
                                    </div>
                                </div>
                       

                                 <label for="">Telpon</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="telpon" c
lass="form-control"  />
                                    </div>
                                </div>

                                 <label for="">Email</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="email" clas
s="form-control"  />
                                    </div>
                                </div>

71
                                <input type="submit" name="simpan" value ="si
mpan" class= "btn btn-primary">

                            </form>
    <?php 

            if(isset($_POST['simpan'])){
                
                $nama = $_POST['nama'];
                $alamat = $_POST['alamat'];
                $telpon = $_POST['telpon'];
                $email = $_POST['email'];
                

                $sql = $koneksi->query("insert into tb_pelanggan(nama,alamat,t
elpon,email) values( '$nama', '$alamat', '$telpon', '$email')");

                if($sql){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Disimpan");
                            window.location.href="?page=pelanggan";
                        </script>
                    <?php
                }
            }
    ?>

 Edit Pelanggan

  <?php

    $kode =$_GET['id'];

    $sql = $koneksi->query("select * from tb_pelanggan where kode_pelanggan =
'$kode'");
    $tampil = $sql->fetch_assoc();

   

 ?>

72
 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                               Tambah Pelanggan
                            </h2>
                        </div>
                            <div class ="body">

                            <form method ="POST">
                                <label for="">Nama</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="nama" value
="<?php echo $tampil['nama']; ?>" class="form-control"  />
                                    </div>
                                </div>

                                <label for="">Alamat</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="alamat" val
ue="<?php echo $tampil['alamat']; ?>"class="form-control"  />
                                    </div>
                                </div>
                       

                                 <label for="">Telepon</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="number" name ="telpon"va
lue="<?php echo$tampil['telpon']; ?>" class="form-control"  />
                                    </div>
                                </div>

                                 <label for="">Email</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="email" valu
e="<?php echo$tampil['email']; ?>"class="form-control"  />
                                    </div>
                                </div>

73
                                <input type="submit" name="simpan" value ="si
mpan" class= "btn btn-primary">

  <?php 

            if(isset($_POST['simpan'])){
                
                $nama = $_POST['nama'];
                $alamat = $_POST['alamat'];
                $telpon = $_POST['telpon'];
                $email = $_POST['email'];
                

                $sql = $koneksi->query("update tb_pelanggan set nama=
'$nama',alamat='$alamat',telpon='$telpon',email='$email' where kode_pelanggan 
= '$kode' ");

                if($sql){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Diubah");
                            window.location.href="?page=pelanggan";
                        </script>
                    <?php
                }
            }
    ?>

D. Pengguna

 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                                Data Pengguna
                            </h2>
                           
                        <div class="body">
                            <div class="table-responsive">

74
                                <table class="table table-bordered table-
striped table-hover js-basic-example dataTable">
                                    <thead>
                                        <tr>
                                            <th>No</th>
                                            <th>Username</th>
                                            <th>Nama</th>
                                            <th>Password</th>
                                            <th>Level</th>
                                            <th>Foto</th>
                                            <th>Aksi</th>
                                        </tr>
                                    </thead>

                                   
                                </tbody>
                                        <?php

                                            $no=1;
                                            $sql = $koneksi->query("select * 
from tb_pengguna");

                                            while ($data = $sql-
>fetch_assoc()){

                                            ?>

            
                                    <tbody>
                                        <tr>
                                            <td><?php echo $no++; ?></td>
                                            <td><?php echo $data['username'] 
?></td>
                                            <td><?php echo $data['nama'] ?
></td>
                                            <td><?php echo $data['password'] 
?></td>
                                            <td><?php echo $data['level'] ?
></td>

                                            <td><img src="images/<?php echo $
data['foto'] ?>" width ="50" height ="50" alt =""></td>
                                          
                                           >
                                            <td>
                                                <a href="?
page=pengguna&aksi=ubah&id=<?php echo $data['id'] ?>" class="btn btn-
success">Ubah</a>

75
                                                <a onclick="return confirm('A
pakah Anda Yakin Akan Menghapus Data ini?')" href="?
page=pengguna&aksi=hapus&id=<?php echo $data['id'] ?>" class ="btn btn-
danger">Hapus</a>
                                            </td>
                                        </tr>
                                    <?php } ?>
                                    </tbody>
                                </table>
                                <a href="?page=pengguna&aksi=tambah" clas
s="btn btn-primary">Tambah</a>
                            </div>

 Hapus Pengguna

<?php

    $id =$_GET['id'];

    $sql = $koneksi->query("delete from tb_pengguna where id ='$id'");

if($sql){

    ?>

        <script type="text/javascript">
            alert("Data Berhasil Dihapus");
            window.location.href="?page=pengguna";
        </script>

    <?php

?>

 Tambah Pengguna

 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">

76
                    <div class="card">
                        <div class="header">
                            <h2>
                               Tambah Pengguna
                            </h2>
                        </div>
                            <div class ="body">

                            <form method ="POST" enctype="multipart/form-
data">
                                <label for="">Username</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="username" c
lass="form-control"  />
                                    </div>
                                </div>

                                <label for="">Nama</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="nama" class
="form-control"  />
                                    </div>
                                </div>
                       

                                 <label for="">Password</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="password" name ="passwor
d" class="form-control"  />
                                    </div>
                                </div>

                                 <label for="">Level</label>
                                <div class="form-group">
                                    <div class="form-line">
                                    <select name="level" class="form-control 
show-tick">
                                        <option value="">-- Pilih Level --
</option>
                                        <option value="admin">Admin</option>
                                        <option value="kasir">Kasir</option>
                                    </select>
                                </div>

77
                                 <label for="">Foto</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="file" name ="foto" class
="form-control"  />
                                    </div>
                                </div>

                                <input type="submit" name="simpan" value ="si
mpan" class= "btn btn-primary">

                            </form>
    <?php 

            if(isset($_POST['simpan'])){

                $username = $_POST['username'];
                $nama = $_POST['nama'];
                $password = $_POST['password'];
                $level = $_POST['level'];
                
                $foto = $_FILES['foto']['name'];
                $lokasi = $_FILES['foto']['tmp_name'];
                $upload = move_uploaded_file($lokasi, "images/".$foto);

                if ($upload){

                
                

                $sql = $koneksi->query("insert into tb_pengguna(username,nama,
password,level,foto) values( '$username', '$nama', '$password', '$level','$fot
o')");

                if($sql){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Disimpan");
                            window.location.href="?page=pengguna";
                        </script>
                    <?php
                }
            }

78
        }
    ?>

 Edit Penggua

<<?php 

        $id =$_GET['id'];

        $sql2 = $koneksi->query("select * from tb_pengguna where id='$id'");
        $tampil = $sql2->fetch_assoc();

        $leve = $tampil['level'];

 ?>

 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>
                               Tambah Pengguna
                            </h2>
                        </div>
                            <div class ="body">

                            <form method ="POST" enctype="multipart/form-
data">
                                <label for="">Username</label>

                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="username" v
alue = "<?php  echo $tampil['username']; ?>"class="form-control"  />
                                    </div>
                                </div>

                                <label for="">Nama</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="text" name ="nama" value 
= "<?php  echo $tampil['nama']; ?>"class="form-control"  />
                                    </div>
                                </div>
                      

                                 <label for="">Level</label>

79
                                <div class="form-group">
                                    <div class="form-line">
                                    <select name="level" class="form-control 
show-tick">
                                        <option value="admin"<?php if 
($level=='admin'){echo "selected";   }?>>Admin</option>
                                        <option value=kasir" <?php if ($level 
=='kasir'){echo "selected";   }?>>Kasir</option>
                                      
                                    </select>
                                </div>

                                <label for=""> Foto</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <img src="images/<?php echo $tampi
l['foto']; ?>"width="100" height="100" alt="">

                                    </div>
                                </div>

                                 <label for=""> Ganti Foto</label>
                                <div class="form-group">
                                    <div class="form-line">
                                        <input type="file" name ="foto" class
="form-control"  />
                                    </div>
                                </div>

                                <input type="submit" name="simpan" value ="si
mpan" class= "btn btn-primary">

                            </form>
    <?php 

            if(isset($_POST['simpan'])){

                $username = $_POST['username'];
                $nama = $_POST['nama'];
                $level = $_POST['level'];
                $foto = $_FILES['foto']['name'];

80
                $lokasi = $_FILES['foto']['tmp_name'];
                

                if (!empty($lokasi)){

                $upload = move_uploaded_file($lokasi, "images/".$foto); 

                $sql = $koneksi->query("update tb_pengguna set username=
'$username',nama='$nama',level='$level',foto='$foto' where  id = '$id'");

                if($sql){
                    ?>

                        <script type="text/javascript">
                            alert("Data Berhasil Disimpan");
                            window.location.href="?page=pengguna";
                        </script>
                    <?php
                }
            }else {
                $sql = $koneksi->query("update tb_pengguna set username=
'$username',nama='$nama',level='$level' where id ='$id'");

                if($sql){
                    ?>
                        <script type="text/javascript">
                            alert("Data Berhasil Disimpan");
                            window.location.href="?page=pengguna";
                        </script>
                    <?php
                }
            }
        }
    ?>

E. Penjualan
 Cetak

<?php
         error_reporting(E_ALL ^ (E_NOTICE | E_WARNING));

         $koneksi = new mysqli("localhost","root","","db_pos");

         $kasir = $_GET['kasir'];

         $kode_pj = $_GET['kode_pjl'];

81
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Struk Belanjaan</title>

    <style>
    .td{
        font-size: 10px;
        font-family: 'Consolas';
    }
    .th{
        font-size: 15px;
        font-family: 'Consolas';
    }
    .tk{
        font-size: 10px;
        font-family: 'Consolas';
        color:#c0c0c0 ;
    }
    </style>
    
</head>
<body>
    <div>
        <table width="250" border="0" cellpadding="0" cellspacing="0">
            <tr>
                <th class="th">TOKO GEMBIRAK<br>
                 JLN. SISINGAMANGARAJA X<br>
                 HP 082277507587 <br>
                </th>
            </tr>
            </tr>
            <tr align="center"><td><hr></td></tr>
            <tr>
 </html>

<h4>Struk Belanjaan</h4>

    <?php

        $sql =$koneksi->query("select * from tb_penjualan, tb_pelanggan where 
kode_penjualan='$kode_pj'");
        $tampil=$sql->fetch_assoc();

82
    ?>
    <tr>
        <td>Kode Penjualan :</td>
        <td><?php echo $tampil['kode_penjualan']; ?></td>
        
    </tr>

    <tr>
        <td>Tanggal Penjualan :</td>
        <td><?php echo $tampil['tgl_penjualan']; ?></td>
        
    </tr>

    <tr>
        <td>Pelanggan :</td>
        <td><?php echo $tampil['nama']; ?></td>
        
    </tr>

    <tr>
        <td>Nama Kasir :</td>
        <td><?php echo $kasir; ?></td>
        
    </tr>

    <td><hr></td>

    <?php

        $sql2 = $koneksi->query("select * from tb_penjualan, tb_penjualan_deta
il,tb_barang where 
                                            tb_penjualan.kode_penjualan=tb_pe
njualan_detail.kode_penjualan_detail 
                                            and tb_penjualan.kode_barcode=tb_
barang.kode_barcode
                                            and tb_penjualan.kode_penjualan='
$kode_pj'");
        while ($tampil2=$sql->fetch_assoc()){
    ?>

    <tr>
        <td><?php echo $tampil2['nama_barang']; ?></td>
        <td><?php echo number_format($tampil2['harga_jual']).',-' .'&nbsp' 
.'&nbsp' .'x'. '&nbsp' .'&nbsp' .$tampil2['jumlah'].'&nbsp' .'&nbsp' .'&nbsp' 
.'&nbsp' .'&nbsp' .'&nbsp' ?></td>

        <td><?php echo number_format($tampil2['total']).','; ?></td>
        

83
    </tr>

    <?php

        $diskon = $tampil2['diskon'];
        $potongan = $tampil2['potongan'];
        $bayar = $tampil2['bayar'];
        $kembali = $tampil2['kembali'];
        $total = $tampil2['total'];
        $total_bayar = $total_bayar+$tampil2['total'];
        }

    ?>

    <tr>
        <td><hr></td>
    </tr>

    <tr>
        <th colspan="2">Total</th>
        <td>: <?php  echo $total_bayar; ?></td>
        
    </tr>

    <tr>
        <th colspan="2">Diskon %</th>
        <td>: <?php  echo $diskon; ?></td>
        
    </tr>

    <tr>
        <th colspan="2">Potongan Diskon</th>
        <td>: <?php  echo $potongan; ?></td>
        
    </tr>

    <tr>
        <th colspan="2">Sub Total</th>
        <td>: <?php  echo $total; ?></td>
        
    </tr>

    <tr>
        <th colspan="2">Bayar</th>
        <td>: <?php  echo $bayar; ?></td>
        

84
    </tr>

    <tr>
        <th colspan="2">Kembali</th>
        <td>: <?php  echo $kembali; ?></td>
        
    </tr>

    </table>

<table>
    <tr>
        <td>Terima Kasih Sudah Belanja di TOKO GEMBIRA. </td>
        <tr>
        <td>Barang Yang Sudah Dibeli Tidak Dapat Dikembalikan</td>
    </tr>
</table>
</tr>
<br>

<input type="button" value="Print" onclick="window.print()">

 Hapus

<?php
            

            $jumlah = $_GET['jumlah'];
            $id = $_GET['id'];
            $kode_pj = $_GET['kode_pj'];
            $harga_jual = $_GET['harga_jual'];
            $kode_b = $_GET['kode_b'];

            $sql = $koneksi->query("delete from tb_pen
jualan where id='$id'");

85
            $sql2 = $koneksi->query("update tb_barang 
set stok=(stok + $jumlah)where kode_barcode='$kode_b'"
);

            if($sql || $sql1 || $sql2){
                ?>
                    <script>
                        window.location.href="?
page=penjualan&kodepj=<?php echo $kode_pj ?>";
                    </script>
                <?php
            }
        
?>

 Kurang

?php
            

            $id = $_GET['id'];
            $kode_pj = $_GET['kode_pj'];
            $harga_jual = $_GET['harga_jual'];
            $kode_b = $_GET['kode_b'];

            $sql = $koneksi->query("update tb_penjuala
n set jumlah=(jumlah-1) where id='$id'");
            $sql1 = $koneksi->query("update tb_penjual
an set total=(total-$harga_jual)where id='$id'");
            $sql2 = $koneksi->query("update tb_barang 
set stok=(stok + 1)where kode_barcode='$kode_b'");

            if($sql || $sql1 || $sql2){

86
                ?>
                    <script>
                        window.location.href="?
page=penjualan&kodepj=<?php echo $kode_pj ?>";
                    </script>
                <?php
            }
?>

 Laporan

<?php
        
        error_reporting(E_ALL ^ (E_NOTICE | E_WARNING)
);

        $koneksi = new mysqli("localhost","root","","l
atihan");
?>

<style>
    
        @media print{
            input.noPrint{
                display: none ;
            }
        }
</style>

<table border="1" width="100%" style="border-collapse: 
collapse;">
    <caption>Laporan Penjualan</caption>
    <thead>
        <tr>
87
            <th>No</th>
            <th>Tanggal</th>
            <th>Kode Barcode</th>
            <th>Nama Produk</th>
            <th>Harga Jual</th>
            <th>Jumlah</th>
            <th>Total</th>
            <th>Profit</th>
        </tr>
    </thead>
    <tbody>
         <?php

                $tgl_awal = $_POST['tgl_awal'];
                $tgl_akhir = $_POST['tgl_akhir'];

                $no=1;
                $sql = $koneksi->query("select * from 
tb_barang,tb_penjualan where tb_barang.kode_barcode=tb
_penjualan.kode_barcode and tgl_penjualan between '$tg
l_awal' and '$tgl_akhir' ");

                while ($data = $sql->fetch_assoc()){

                    $profit = $data['profit'] * $data[
'jumlah'];

         ?>

            
    <tbody>
         <tr>
            <td><?php echo $no++; ?></td>

88
            <td><?php echo date ('d F Y
',strtotime($data['tgl_penjualan'])) ?></td>
            <td><?php echo $data['kode_barcode'] ?
></td>
            <td><?php echo $data['nama_barang'] ?
></td>
            <td><?php echo number_forma
t($data['harga_jual']) ?></td>

            <td><?php echo $data['jumlah'] ?></td>
            <td><?php echo number_forma
t($data['total']) ?></td>
     
            <td><?php echo number_format($profit) ?
></td>
           
        </tr>
        <?php

            $total_pj = $total_pj+$data['total'];
            $total_profit = $total_profit + $profit;

         } 

         ?>
    </tbody>
    <tr>
        <th colspan="6">Total Penjualan & Profit</th>
        <td><?php echo number_format($total_pj)?></td>
        <td><?php echo number_format($total_profit)?
></td>
    </tr>
</table>

89
<br>
<input type="button" class="noPrint" value="Print" onc
lick="window.print()">

 Penjualan

<?php

        $kode = $_GET['kodepj'];

        $kasir = $data['nama'];

?>

<div class="row clearfix">
                
                  
    <div class ="body">

        <form method ="POST">
            
            <div class="col-md-2 ">
                   <input type="text" name ="kode" val
ue = "<?php echo  $kode; ?>" class="form-control" read
only =""  />
            </div>

            <div class="col-md-2 ">
                   <input type="text" name ="kode_barc
ode"  class="form-control" autofocus="" />
            </div>

90
            <div class="col-md-2 ">
                    <input type="submit" name="simpan" 
value ="Tambahkan" class= "btn btn-primary">
            </div>

        </form>
</div>

<?php
      

        if (isset($_POST['simpan'])){

            $date = date("Y-m-d");
            $kd_pj = $_POST['kode'];

            $barcode = $_POST['kode_barcode'];

            $barang = $koneksi->query("select * from t
b_barang where kode_barcode='$barcode'");

            $data_barang=$barang->fetch_assoc();

            $harga_jual = $data_barang['harga_jual'];

            $jumlah = 1;

            $total = $harga_jual;

            $barang2 =$koneksi->query("select * from t
b_barang where kode_barcode ='$barcode'");

91
            while ($data_barang2 = $barang2-
>fetch_assoc()){
                $sisa = $data_barang2['stok'];

                if ($sisa == 0){
                    ?>

                        <script type="text/javascript"
>
                            
                            alert("Stok Barang Habis..
.Tidak Dapat Melakukan Penjualan");
                            window.location.href="?
page=penjualan&kodepj=<?php echo $kode; ?>"
                        </script>

                    <?php
                }
                else{

                    $koneksi->query("insert into tb_pe
njualan (kode_penjualan, kode_barcode ,jumlah, total,t
gl_penjualan)values('$kd_pj','$barcode','$jumlah','$to
tal','$date')");
                
                }
            }
        }
    ?>

    <br><br><br><br>
<form method="POST">

92
    <div class="col-md-2">
        <label for="">Pelanggan :</label>

        <select name="pelanggan" class="form-control s
how-tick">
            <?php
                $pelanggan = $koneksi->query("select * 
from tb_pelanggan order by kode_pelanggan");
                while ($d_pelanggan=$pelanggan-
>fetch_assoc()){
                    echo "
                      <option value '$d_pelanggan[kode
_pelanggan]'>$d_pelanggan[nama]</option>

                    ";
                }

             ?>
        </select>
        
    </div>

<br><br><br><br>

 <div class="row clearfix">
                <div class="col-lg-12 col-md-12 col-
sm-12 col-xs-12">
                    <div class="card">
                        <div class="header">
                            <h2>

93
                                Daftar Belanja
                            </h2>
                           
                        <div class="body">
                            <div class="table-
responsive">
                                <table class="table  t
able-striped">
                                    <thead>
                                        <tr>
                                            <th>No</th
>
                                            <th>Kode P
enjualan</th>
                                            <th>Nama B
arang</th>
                                            <th>Harga<
/th>
                                            <th>Jumlah
</th>
                                            <th>Total<
/th>

                                            <th>Aksi</
th>
                                        </tr>
                                    </thead>

                                   
                                </tbody>
                                        <?php

                                            $no=1;

94
                                            $sql = $ko
neksi->query("select * from tb_penjualan, tb_barang wh
ere 
                                                       
             tb_penjualan.kode_barcode=tb_barang.kode_
barcode
                                                       
             AND kode_penjualan='$kode'");

                                            while ($da
ta = $sql->fetch_assoc()){

                                            ?>

            
                                    <tbody>
                                        <tr>
                                            <td><?php 
echo $no++; ?></td>
                                            <td><?php 
echo $data['kode_barcode'] ?></td>
                                            <td><?php 
echo $data['nama_barang'] ?></td>
                                            <td><?php 
echo $data['harga_jual'] ?></td>
                                            

                                            <td><?php 
echo $data['jumlah'] ?></td>
                                            <td><?php 
echo $data['total'] ?></td>
                                           
                                            <td>

95
                                                <a hre
f="?page=penjualan&aksi=tambah&id=<?php echo $dat
a['id']?>&kode_pj=<?php echo $data['kode_penjualan']?
>&harga_jual=<?php echo $data['harga_jual']?
>&kode_b=<?php  echo $data ['kode_barcode']?>" titl
e="tambah" class="btn btn-success"><i class="material-
icons">add</i></a>

                                                <a hre
f="?page=penjualan&aksi=kurang&id=<?php echo $dat
a['id']?>&kode_pj=<?php echo $data['kode_penjualan']?
>&harga_jual=<?php echo $data['harga_jual']?
>&kode_b=<?php  echo $data['kode_barcode']?>"  titl
e="kurang" class="btn btn-success"><i class="material-
icons">remove</i></a>

                                                <a onc
lick="return confirm('Apakah Anda Yakin Akan Menghapus 
Data ini?')" href="?page=penjualan&aksi=hapus&id=<?php 
echo $data['id']?>&kode_pj=<?php echo $dat
a['kode_penjualan']?>&harga_jual=<?php echo $dat
a['harga_jual']?>&kode_b=<?php  echo $data 
['kode_barcode']?>&jumlah=<?php echo $data['jumlah']; 
?>"  title="hapus" class="btn btn-danger"><i clas
s="material-icons">clear</i></a>
                                            </td>
                                        </tr>
                                    <?php 

                                        $total_bayar = 
$total_bayar+$data['total'];

                                        }

96
                                    ?>
                                    </tbody>

                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Total</th>
                                        <td> <input ty
pe="number" style="text-align: right;" readonly ="" i
d="total_bayar" onkeyup="hitung();" value="<?php echo 
$total_bayar; ?>"></td>

                                    </tr>

                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Diskon %</th>
                                        <td> <input ty
pe="number" onkeyup="hitung();" style="text-align: rig
ht;" name="diskon" id="diskon"></td>

                                    </tr>

                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Potongan Diskon</th>
                                        <td> <input ty
pe="number" style="text-align: right;" name="potongan" 
readonly="" id="potongan"></td>

                                    </tr>

97
                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Sub Total</th>
                                        <td> <input ty
pe="number" style="text-align: right;" name="s_total" 
readonly="" id="s_total"></td>

                                    </tr>

                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Bayar</th>
                                        <td> <input ty
pe="number" style="text-align: right;" onkeyu
p="hitung();" name="bayar" id="bayar"></td>

                                    </tr>

                                    <tr>

                                        <th colspan="5
" style="text-align: right;">Kembali</th>
                                        <td> <input ty
pe="number" style="text-align: right;" readonly="" nam
e="kembali" id="kembali">

                                            <input typ
e="submit" name="simpan_pj" value="Hitung" class="btn 
btn-info">

98
                                            <input typ
e="submit" value="Cetak Struk" class="btn btn-success" 
onclick="window.open('page/penjualan/cetak.php?
kode_pjl=<?php echo $kode; ?>&kasir=<?php echo $kasir; 
?>','mywindow','width-600px, heigh=600px, left=300px;'
)">
                                        </td>

                                    </tr>

                                </table>
                            </div>

                          </form>

         <?php
                if (isset($_POST['simpan_pj'])) {
                    $pelanggan = $_POST['pelanggan'];
                    $total_bayar = $_POST['total_bayar
'];
                    $diskon = $_POST['diskon'];
                    $potongan = $_POST['potongan'];
                    $s_total = $_POST['s_total'];

                    $bayar = $_POST['bayar'];
                    $kembali = $_POST['kembali'];

                    $koneksi->query(" insert into tb_p
enjualan_detail(kode_penjualan,bayar,kembali,diskon,po

99
tongan,total)values('$kode','$bayar','$kembali','$disk
on','$potongan','$s_total')");

                    $koneksi->query("update tb_penjual
an set id_pelanggan='$pelanggan' where kode_penjualan=
'$kode'");

                }

        ?>

<script type="text/javascript">
    
    function hitung(){

        var total_bayar = document.getElementById('tot
al_bayar').value;

        var diskon = document.getElementById('diskon')
.value;

        var diskon_pot = parseInt(total_bayar)  * pars
eInt(diskon) /  parseInt(100);

        if (!isNaN(diskon_pot)){

             var potongan = document.getElementById('p
otongan').value = diskon_pot;

        }

        var sub_total = parseInt(total_bayar)  - parse
Int(potongan);

100
        if (!isNaN(sub_total)){

             var s_total = document.getElementById('s_
total').value = sub_total;

        }

        var bayar = document.getElementById('bayar').v
alue;

        var bayar_b = parseInt(bayar)  - parseInt(s_to
tal);

        if (!isNaN(bayar_b)){

            document.getElementById('kembali').value = 
bayar_b;

        }

    
    }

</script>

 Tambah

<?php
            

101
            $id = $_GET['id'];
            $kode_pj = $_GET['kode_pj'];
            $harga_jual = $_GET['harga_jual'];
            $kode_b = $_GET['kode_b'];

            $sql = $koneksi->query("update tb_penjuala
n set jumlah=(jumlah+1) where id='$id'");
            $sql1 = $koneksi->query("update tb_penjual
an set total=(total+$harga_jual)where id='$id'");
            $sql2 = $koneksi->query("update tb_barang 
set stok=(stok - 1)where kode_barcode='$kode_b'");

            if($sql || $sql1 || $sql2){
                ?>
                    <script>
                        window.location.href="?
page=penjualan&kodepj=<?php echo $kode_pj ?>";
                    </script>
                <?php
            }
?>

102
Kesimpulan
Beradasarkan pembahasan implementasi yang ditulis pada laporanini, makadidapatkan
beberapa kesimpulan sebagai berikut:
1. Dengan dibuatnya aplikasikasirdapatdigunakanuntukmemudahkanpencatatan data
transaksi penjualan dan data penambahan barang
2. Dengan adanya program aplikasi kasir ini, maka data mengenai transaksi penjualan
dan data penambahan barang dapat tersimpan dengan baik karena data tersebut telah
disimpan kedalam sebuah media database.
3. Selain itu,aplikasikasirdapatdigunakan untuk pengelolaan data pelanggan dan
penjualan

4. Program aplikasi kasir yang dibuat oleh penulis dapat diguna kan untuk merekap data
barang agar terorganisir dengan baik, mengetahui persediaan barang secara cepat,
dan mempermudah proses rekapitulasi laporan penjualan.

Saran

103
Berdasarkan dari analisis dan perancangan yang berada pada laporan ini, maka
didapatkan beberapa saran pengembangan, sebagaiberikut:
1. Diharapkan aplikasi yang telah dibuat ini dapat dikembangkan menjadi aplikasi
informasi berbasis client server untuk pelayanan yang lebih baik;
2. Masih dibutuhkannya beberapa fitur untuk aplikasi yang lebih baik;
3. Pada proses transaksi penjualan, penambahan data barang belum dilakukan secara
otomatis sehingga harus memasukkan data barang satu per satu;
4. Sistem ini dapat dikembangkan lebih luas lagi yaitu dengan menambahkan system
pembelian barang kepada supplier.

DAFTAR PUSTAKA

1. Hasyim Nurlaila, Nur Aeni Hidayah, Sarwoto Wijoyo Latisuro. 2014. Rancang Bangun Sistem
Informasi Koperasi Berbasis Web pada Koperasi Warga Baru MTS N 17. Jakarta. “Jurnal dari
Sistem Informasi” , ISSN 1979-0767. 7(2) : 1-11.

2. Zulfiandri, Sarip Hidayatuloh and Mochammad Anas. 2014. Rancang Bangun Aplikasi Poliklinik
Gigi. “Prosiding Seminar Ilmiah Nasional Komputer dan Sistem Intelijen”, ISSN : 2302-3740, Vol. 8
: 472-482.

3. Supardi Yuniar, 2015. Mudah dan Cepat Membuat Skripsi dengan VB 2012, Jakarta : Penerbit PT
Elex Media Komputindo.

4. Maulana Kiki Rizki and Bunyamin, 2015. Rancang Bangun Aplikasi Sistem Informasi Penjualan
dan Stok Barang di Toko Widari Garut.“Jurnal Algoritma”, ISSN : 2302-7339 Vol. 12 No. 1 : 1-6.

5. Mega, Mahar, 2013. Manajemen Pemasaran. Yogyakarta : CAPS (Center of Academic Publishing
Service).

104
6. Hayuningtyas Ratih Yulia, 2015. Rancang Bangun Sistem Informasi Penjualan Tas pada Toko
Lokalop. “Jurnal dari Sistem Informasi STMIK antar Bangsa”, ISSN 2089- 8711 Vol. IV NO.2 : 160-
167.

105

Anda mungkin juga menyukai