Point of Sale
Point of Sale
Rohi Abdulloh
717051371
ISBN: 978-602-02-4109-2
[eEp]
KATA PENGANTAR................................................................................ V
DAFTAR ISI ........................................................................................ VII
BAB 1 PENGETAHUAN DASAR LARAVEL ................................................ 1
1.1 Kenal Lebih Dekat dengan Laravel ............................................1
1.1.1 Pengenalan Laravel ..............................................................1
1.1.2 Keunggulan Laravel .............................................................2
1.2 Software Pendukung Laravel .....................................................4
1.2.1 Text Editor ...........................................................................4
1.2.2 Web Server ..........................................................................4
1.2.3 Composer ............................................................................5
1.3 Instalasi dan Memulai Projek di Laravel......................................6
1.4 Memahami Struktur Folder Laravel............................................7
1.5 Memahami Struktur Folder App ................................................9
1.6 Generate Key untuk Aplikasi....................................................10
1.7 Konfigurasi Database ..............................................................10
1.8 Menghilangkan Public pada URL .............................................11
1.9 Menambah Dependency..........................................................11
BAB 2 MENJELAJAHI FITUR LARAVEL ................................................. 13
2.1 Artisan.....................................................................................13
2.2 Migration .................................................................................15
2.2.1 Membuat Tabel ..................................................................16
2.2.2 Rolling Back Migration .......................................................18
2.2.3 Modifikasi Tabel .................................................................19
2.2.4 Modifikasi Kolom................................................................20
2.3 Model ......................................................................................22
2.4 Seeder.....................................................................................23
2.4.1 Cara Membuat Seeder........................................................23
vii
2.4.2 Menggunakan Model Factory .............................................25
2.5 Routing ...................................................................................26
2.5.1 Cara Membuat Route .........................................................26
2.5.2 Berbagai Route Method......................................................27
2.5.3 Berbagai Cara Penulisan Route ..........................................28
2.6 Query Builder dan Eloquent ORM ...........................................29
2.6.1 Menampilkan Data .............................................................30
2.6.2 Menambahkan Data ...........................................................33
2.6.3 Memperbarui Data .............................................................34
2.6.4 Menghapus Data ................................................................34
2.7 Relationship ............................................................................35
2.8 View dan Blade Template ........................................................38
2.8.1 Membuat View....................................................................38
2.8.2 Menampilkan Data dengan Blade Template .......................39
2.8.3 Control Structure pada Blade Template .............................40
2.8.4 Menampilkan Data dari Database.......................................41
2.8.5 Layout dengan Blade Template..........................................42
2.9 Controller ................................................................................44
2.10 Authentication .........................................................................48
2.11 Middleware ..............................................................................50
2.11.1 Menerapkan Middleware.....................................................51
2.11.2 Membuat Middleware .........................................................51
BAB 3 OPERASI CRUD PADA LARAVEL .............................................. 55
3.1 Menyiapkan Controller.............................................................56
3.2 Menampilkan Data ..................................................................56
3.3 Menampilkan Form Tambah ...................................................59
3.4 Menyimpan Data Form Tambah..............................................61
3.5 Menampilkan Form Edit ..........................................................63
3.6 Menyimpan Data Form Edit.....................................................65
3.7 Menghapus Data .....................................................................66
BAB 4 IMPLEMENTASI AJAX PADA LARAVEL ....................................... 69
4.1 Menyiapkan Aset yang Diperlukan ...........................................69
4.2 Membuat Route dan Controller................................................70
4.3 Mengubah File Template.........................................................71
4.4 Menampilkan Data dengan DataTable.....................................72
4.5 Menggunakan Server Side DataTable ......................................75
4.6 Menampilkan Form Tambah ...................................................78
4.7 Menyimpan Data Form Tambah..............................................80
4.8 Menampilkan Form Edit ..........................................................83
4.9 Menyimpan Data Form Edit.....................................................84
viii
4.10 Menghapus Data .....................................................................85
BAB 5 TRIK LARAVEL PILIHAN ........................................................... 87
5.1 Membuat PDF .........................................................................87
5.2 Mencetak Barcode...................................................................90
5.3 Impor dan Ekspor File Excel....................................................93
5.4 Konversi Tanggal Bahasa Indonesia ........................................97
5.5 Konversi Angka ke Format Mata Uang.....................................99
5.6 Membuat Angka Terbilang ....................................................100
5.7 Direct Printing dengan PHP Printer........................................102
BAB 6 PERSIAPAN MEMBUAT APLIKASI POS..................................... 105
6.1 Membuat Proyek Baru ...........................................................105
6.2 Konfigurasi Database ............................................................106
6.3 Menambahkan Dependency ..................................................106
6.4 Membuat Tabel dengan Migration .........................................107
6.5 Membuat Seeder ...................................................................111
6.6 Membuat Autentikasi.............................................................112
6.7 Membuat Helper....................................................................113
6.8 Membuat Middleware ............................................................114
6.9 Memasang Template AdminLTE ...........................................115
BAB 7 PROSES PEMBUATAN APLIKASI POS...................................... 117
7.1 Mengubah Tampilan Login....................................................117
7.2 Mengubah Master Template Aplikasi .....................................120
7.3 Mengatur Dashboard Sementara...........................................125
7.4 Membuat Halaman Manajemen Kategori...............................128
7.4.1 Membuat Route................................................................128
7.4.2 Membuat Model ...............................................................129
7.4.3 Membuat Controller .........................................................130
7.4.4 Membuat View Index ........................................................131
7.4.5 Membuat View Form ........................................................134
7.5 Membuat Halaman Manajemen Produk.................................136
7.5.1 Membuat Route................................................................136
7.5.2 Membuat Model ...............................................................136
7.5.3 Membuat Controller .........................................................137
7.5.4 Membuat View Index ........................................................140
7.5.5 Membuat View Form ........................................................144
7.5.6 Membuat View Barcode....................................................146
7.6 Membuat Halaman Manajemen Supplier ...............................147
7.6.1 Membuat Route................................................................148
7.6.2 Membuat Model ...............................................................148
7.6.3 Membuat Controller .........................................................148
ix
7.6.4 Membuat View Index ........................................................150
7.6.5 Membuat View Form ........................................................153
7.7 Membuat Halaman Manajemen Member ...............................154
7.7.1 Membuat Route................................................................154
7.7.2 Membuat Model ...............................................................155
7.7.3 Membuat Controller .........................................................155
7.7.4 Membuat View Index ........................................................157
7.7.5 Membuat View Form ........................................................161
7.7.6 Membuat View Cetak Kartu ..............................................163
7.8 Membuat Halaman Manajemen Pengeluaran.........................165
7.8.1 Membuat Route................................................................166
7.8.2 Membuat Model ...............................................................166
7.8.3 Membuat Controller .........................................................166
7.8.4 Membuat View Index ........................................................168
7.8.5 Membuat View Form ........................................................171
7.9 Membuat Halaman Manajemen User dan Ubah Profil ............172
7.9.1 Membuat Route................................................................172
7.9.2 Membuat Controller .........................................................173
7.9.3 Membuat View Index ........................................................176
7.9.4 Membuat View Form ........................................................178
7.9.5 Membuat View Edit Profil..................................................180
7.10 Membuat Halaman Manajemen Pembelian............................184
7.10.1 Membuat Model ...............................................................184
7.10.2 Membuat Route................................................................184
7.10.3 Membuat Controller .........................................................185
7.10.4 Membuat View Index ........................................................187
7.10.5 Membuat View Detail........................................................190
7.10.6 Membuat View Supplier ....................................................191
7.11 Membuat Halaman Transaksi Pembelian...............................192
7.11.1 Membuat Model ...............................................................193
7.11.2 Membuat Route................................................................193
7.11.3 Membuat Controller .........................................................194
7.11.4 Membuat View Index ........................................................196
7.11.5 Membuat View Produk......................................................201
7.12 Membuat Halaman Manajemen Penjualan.............................203
7.12.1 Membuat Model ...............................................................203
7.12.2 Membuat Route................................................................204
7.12.3 Membuat Controller .........................................................204
7.12.4 Membuat View Index ........................................................206
7.12.5 Membuat View Detail........................................................208
7.13 Membuat Halaman Transaksi Penjualan................................209
x
7.13.1 Membuat Model ...............................................................210
7.13.2 Membuat Route................................................................210
7.13.3 Membuat Controller .........................................................211
7.13.4 Membuat View Index ........................................................216
7.13.5 Membuat View Produk......................................................223
7.13.6 Membuat View Member ....................................................223
7.13.7 Membuat View Selesai Transaksi ......................................225
7.13.8 Membuat View Nota PDF .................................................227
7.14 Membuat Halaman Laporan ..................................................229
7.14.1 Membuat Route................................................................229
7.14.2 Membuat Controller .........................................................230
7.14.3 Membuat View Index ........................................................232
7.14.4 Membuat View Form ........................................................234
7.14.5 Membuat View PDF..........................................................236
7.15 Membuat Halaman Setting (Pengaturan) ...............................237
7.15.1 Membuat Model ...............................................................237
7.15.2 Membuat Route................................................................238
7.15.3 Membuat Controller .........................................................238
7.15.4 Membuat View Index ........................................................239
7.16 Mengubah Tampilan Dashboard ..........................................243
7.16.1 Mengubah File Controller .................................................243
7.16.2 Mengubah Dashboard Admin...........................................244
7.16.3 Mengubah Dashboard Kasir .............................................247
KATA PENGANTAR............................................................................ 249
xi
PENGETAHUAN DASAR
LARAVEL
Laravel merupakan salah satu dari sekian banyak framework PHP yang
dapat digunakan secara gratis. Laravel dikembangkan oleh programmer
keren asal Amerika yaitu Taylor Otwell pada tahun 2011. Sejak dirilis ke
publik, secara perlahan Laravel mulai merebut perhatian para
programmer dunia. Hingga buku ini di tulis, Laravel telah menjadi salah
satu framework favorit programmer dunia, mengalahkan framework-
framework pendahulunya yang sudah lebih dulu lahir.
Bagi yang belum kenal istilah framework, secara sederhana framework
dapat diartikan sebagai kumpulan kode-kode program yang akan selalu
digunakan pada setiap pembuatan aplikasi. Karena selalu digunakan,
maka kode-kode tersebut dikumpulkan dan disusun secara rapi pada
folder-folder agar mudah digunakan dan jadilah sebuah framework.
Artinya, pembaca sebenarnya juga dapat membuat framework sendiri.
Jika pembaca sudah sering membuat aplikasi, dan dari aplikasi-aplikasi
yang dibuat tersebut ada kode-kode yang selalu digunakan berulang-
ulang, agar tidak selalu membuatnya dari awal, maka pembaca
mengumpulkannya. Kumpulan-kumpulan kode tersebut dapat disebut
sebagai framework.
1
Di internet banyak sekali framework yang dibuat oleh programmer baik
hati yang dapat digunakan secara gratis. Salah satu yang terbaik adalah
framework Laravel.
Keberadaan framework sangat membantu dalam pembuatan aplikasi
karena kita tidak harus membuat segala sesuatunya dari awal.
Framework sudah menyediakan banyak hal yang kita butuhkan sehingga
kita lebih konsentrasi pada pembuatan modul-modul aplikasi.
Sekarang Laravel telah menjadi salah satu framework terbaik dan paling
banyak digunakan oleh programmer dunia. Lihat saja data yang
ditunjukkan di website techinputs.com pada artikelnya yang
dipublikasikan pada bulan Januari 2017 berikut:
Pada gambar di atas, dapat kita lihat Laravel menempati urutan pertama
dengan popularitas mencapai 24,85%. Selain itu, jika dilihat pada
Google Trends, pengguna laravel selalu meningkat dari tahun ke tahun.
2
Gambar 1.2 Tren ketertarikan terhadap framework PHP dari tahun ke
tahun
3
¾ Laravel memiliki template engine tersendiri yang diberi nama blade
yang memudahkan kita menampilkan data pada template HTML.
Text editor tentu menjadi kebutuhan wajib yang harus dimiliki untuk
menulis pemrograman web. Pembaca bebas memilih text editor yang
sesuai dengan kebutuhan. Beberapa text editor yang biasa digunakan
oleh para programmer di antaranya Notepad++, Sublime Text,
Brackets, dan sebagainya.
4
Gambar 1.3 Xampp Control Panel untuk mengaktifkan maupun
konfigurasi web server Apache
1.2.3 Composer