Anda di halaman 1dari 63

LAPORAN MAGANG

Pembuatan Backend Aplikasi E-Booking ‘Booking Futsal’


dari CV. Techarea Indonesia Jaya

Disusun oleh:

Muhammad Irhamul Umam


3.34.18.0.16

PROGRAM STUDI D3 TEKNIK INFORMATIKA


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI SEMARANG
2020
HALAMAN PENGESAHAN
LAPORAN MAGANG

Topik / Objek PKL : Pembuatan Backend Aplikasi E-Booking


‘Booking Futsal’ dari CV. Techarea Indonesia
Jaya
Waktu Pelaksanaan : Tanggal 20 Juli sampai 20 Oktober 2020

Telah menyelesaikan Magang beserta laporannya dengan baik untuk melengkapi


persyaratan menyelesaikan Tugas Akhir Program Diploma III Politeknik Negeri
Semarang.

Semarang, 15 Januari 2021


Penyusun

Muhammad Irhamul Umam


NIM3.34.18.0.16

Mengetahui,
Ketua Program Studi Teknik Informatika Dosen Pembimbing

Idhawati Hestiningsih, S.Kom., M.Kom. Slamet Handoko, S.Kom., M.Kom.


NIP197711192008012013 NIP197510302001121001

ii
HALAMAN PENGESAHAN
LAPORAN MAGANG

“Pembuatan Backend Aplikasi E-Booking ‘Booking Futsal’ dari CV. Techarea


Indonesia Jaya”

Berdasarkan hasil Magang di CV. Techarea yang disusun oleh:

Nama : Muhammad Irhamul Umam


NIM : 3.34.18.0.16
Jurusan/Program Studi : Teknik Elektro/D3-Teknik Informatika

Telah menyelesaikan Magang beserta laporannya dengan baik untuk melengkapi


persyaratan menyelesaikan Tugas Akhir Program Diploma III Politeknik Negeri
Semarang.

Semarang, 15 Januari 2021


Penyusun

Muhammad Irhamul Umam


NIM3.34.18.0.16

Mengetahui,
CEO CV. Techarea Indonesia Jaya Pembimbing Lapangan

Moh. Roziq Bahtiar, S. Pd. Moh. Roziq Bahtiar, S. Pd.

iii
KATA PENGANTAR

Puji dan syukur penulis ucapkan kepada Allah SWT yang telah
melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan
Magang di CV. TECHAREA INDONESIA JAYA serta dapat menyelesaikan
Laporan Magang ini dengan baik.
Sesuai dengan kurikulum Politeknik Negeri Semarang, maka salah satu
kewajiban bagi mahasiswa Diploma III Program Studi Teknik Informatika Jurusan
Elektro Politeknik Negeri Semarang pada akhir semester IV adalah melaksanakan
Magang pada suatu perusahaan atau instansi. Magang ini telah dilaksanakan sejak
tanggal 20 Juli sampai 20 Oktober 2020. Tujuan dari Magang untuk memenuhi
kewajiban tersebut dan untuk mengenalkan mahasiswa terhadap aktivitas nyata
pada dunia kerja.
Dalam menyelesaikan Laporan Magang ini tentunya penulis tidak lepas dari
banyak bantuan dan dukungan dari berbagai pihak. Oleh karena itu penulis ingin
menyampaikan ucapan terima kasih kepada :
1. Allah SWT, atas rahmat dan karunia-Nya serta limpahan nikmat.
2. Kedua orang tua dan keluarga atas doa restunya.
3. Bapak Ir. Supriyadi, MT selaku Direktur Politeknik Negeri Semarang.
4. Bapak Yusnan Badruzzaman, S.T., M.Eng. selaku Ketua Jurusan Teknik
Elektro Politeknik Negeri Semarang.
5. Ibu Idhawati Hestiningsih, S.Kom, M.Kom. selaku Ketua Program Studi
Teknik Informatika Politeknik Negeri Semarang.
6. Bapak Slamet Handoko, S.Kom.,M.Kom. selaku dosen pembimbing.
7. Manajemen CV. Techarea Indonesia Jaya.
8. Roziq Bachtiar selaku pembimbing dari pihak CV. Techarea Indonesia Jaya.
9. Teman kelas IK 3A yang telah mendukung dan memberikan motivasi.
10. Pihak yang telah membantu yang tidak mungkin untuk penulis sebutkan
satu persatu.
Penulis menyadari bahwa dalam penyusunan Laporan Magang ini masih
jauh dari kata sempurna, oleh karena itu penulis mengharapkan kritik dan saran
yang membangun dari semua pihak.

iv
Semoga laporan ini bermanfaat bagi siapapun.
Semarang, 15 Januari 2021
Penyusun,

Muhammad Irhamul Umam


NIM3.34.18.0.16

v
DAFTAR ISI

COVER ............................................................................................................................... i

HALAMAN PENGESAHAN ........................................................................................... ii

HALAMAN PENGESAHAN .......................................................................................... iii

KATA PENGANTAR ...................................................................................................... iv

DAFTAR ISI..................................................................................................................... vi

DAFTAR GAMBAR ........................................................................................................ ix

BAB I .................................................................................................................................. 1

1.1. Latar Belakang .................................................................................................. 1

1.2. Ruang Lingkup.................................................................................................. 1

1.3. Tujuan ................................................................................................................ 2

1.4. Manfaat .............................................................................................................. 2

1.4.1. Bagi Mahasiswa .......................................................................................... 2

1.4.2. Bagi CV. Techarea Indonesia Jaya ............................................................. 3

1.4.3. Bagi Politeknik Negeri Semarang ............................................................... 3

1.5. Tempat dan Waktu Pelaksanaan..................................................................... 3

1.6. Metodologi ......................................................................................................... 3

1.6.1. Metode Interview ........................................................................................ 4

1.6.2. Metode Literatur ......................................................................................... 4

1.7. Sistematika......................................................................................................... 4

BAB II ................................................................................................................................ 5

2.1 Deskripsi Singkat Perusahaan ......................................................................... 5

2.2 VISI dan MISI ................................................................................................... 5

3.2.1 VISI ............................................................................................................. 5

3.2.2 MISI ............................................................................................................ 5

2.3 Layanan Perusahaan ........................................................................................ 6

2.4.1 Mobile Aplikasi Android ............................................................................ 6

vi
2.4.2 Sistem Informasi & Pengembangan Web ................................................... 6

2.4.1 Internet Of Things ....................................................................................... 7

2.4.2 Digital dan Social Media Marketing ........................................................... 7

2.4.3 Workshop Dan Training.............................................................................. 7

2.4 Struktur Organisasi .......................................................................................... 7

2.5 Lokasi Perusahaan ............................................................................................ 8

2.6 Portofolio ........................................................................................................... 8

BAB III............................................................................................................................. 11

3.1 Deskripsi Pelaksanaan PKL........................................................................... 11

3.2 Dasar Teori ...................................................................................................... 11

3.2.1 PHP ........................................................................................................... 11

3.2.2 Framework Laravel ................................................................................... 12

3.2.3 Visual Studio Code ................................................................................... 13

3.2.4 Apache Web Server .................................................................................. 14

3.2.5 Google Chrome ......................................................................................... 14

3.2.6 GitLab ....................................................................................................... 14

3.2.7 MySQL ..................................................................................................... 15

3.2.8 API (Application Programming Interface) ............................................... 15

3.2.9 Firebase Cloud Messaging ........................................................................ 16

3.2.10 Pusher ........................................................................................................ 17

3.3 Analisis Masalah ............................................................................................. 17

3.3.1 Gambaran Umum Tugas PKL................................................................... 18

3.3.2 Perangkat Keras yang Digunakan ............................................................. 18

3.3.3 Perangkat Lunak yang Digunakan ............................................................ 18

3.4 Pembuatan dan Hasil Tugas PKL ................................................................. 18

3.4.1 Database .................................................................................................... 18

3.4.2 Halaman Login.......................................................................................... 24

3.4.3 Halaman Admin ........................................................................................ 25

vii
3.4.4 API ............................................................................................................ 38

BAB IV ............................................................................................................................. 48

4.1 Kesimpulan ...................................................................................................... 48

4.2 Saran ................................................................................................................ 48

DAFTAR PUSTAKA ...................................................................................................... 49

LAMPIRAN..................................................................................................................... 50

Lampiran 1. Lembar Penilaian PKL ............................................................................ 50

Lampiran 2 Dokumentasi PKL ..................................................................................... 51

Lampiran 3 Berita Acara Seminar PKL....................................................................... 52

Lampiran 4 Dokumentasi Seminar PKL ...................................................................... 53

viii
DAFTAR GAMBAR

Gambar 2.1 Struktur Organisasi CV. Techarea Indonesia Jaya .............................. 8


Gambar 2.2 Lokasi CV. Techarea Indonesia Jaya .................................................. 8
Gambar 3.1 Daftar Tabel Database Futsal Booking ............................................. 19
Gambar 3.2 Tabel app_notifications ..................................................................... 19
Gambar 3.3 Tabel banks ....................................................................................... 20
Gambar 3.4 Tabel booking.................................................................................... 20
Gambar 3.5 Tabel configurations .......................................................................... 20
Gambar 3.6 Tabel email_tokens ........................................................................... 21
Gambar 3.7 Tabel jenis_lapangan ......................................................................... 21
Gambar 3.8 Tabel lapangan .................................................................................. 22
Gambar 3.9 Tabel notifications ............................................................................. 22
Gambar 3.10 Tabel temp_new_email ................................................................... 22
Gambar 3.11 Tabel users....................................................................................... 23
Gambar 3.12 Tabel oauth_access_tokens ............................................................. 23
Gambar 3.13 Tabel oauth_auth_codes .................................................................. 24
Gambar 3.14 Tabel oauth_clients ......................................................................... 24
Gambar 3.15 Tipe User pada aplikasi Booking Futsal ......................................... 24
Gambar 3.16 Halaman Login ................................................................................ 25
Gambar 3.17 Navbar pada Halaman Admin Booking Futsal ............................... 25
Gambar 3.18 Tombol untuk Fungsi Sign Out Halaman Admin ........................... 26
Gambar 3.19 Sidebar pada Halaman Admin Booking Futsal ............................... 26
Gambar 3.20 Tampilan Halaman Laporan ............................................................ 27
Gambar 3.21 Tampilan Konfigurasi E-Mail ......................................................... 27
Gambar 3.22 Tampilan Konfigurasi Pusher.......................................................... 28
Gambar 3.23 Tampilan Konfigurasi FCM ............................................................ 28
Gambar 3.24 Tampilan Konfigurasi UI ................................................................ 29
Gambar 3.25 Tampilan Users Admin ................................................................... 29
Gambar 3.26 Tampilan Users Admin Form .......................................................... 30
Gambar 3.27 Tampilan Users Pemilik .................................................................. 30
Gambar 3.28 Tampilan Form User Pemilik .......................................................... 31

ix
Gambar 3.29 Tampilan Users Customer ............................................................... 31
Gambar 3.30 Tampilan Form User Customer Form ............................................. 32
Gambar 3.31 Tampilan Booking Pending ............................................................. 33
Gambar 3.32 Tampilan Booking Down Payment ................................................. 33
Gambar 3.33 Tampilan Booking Paid................................................................... 34
Gambar 3.34 Tampilan Booking Cancel ............................................................... 34
Gambar 3.35 Tampilan Booking Tambah Data .................................................... 35
Gambar 3.36 Tampilan Lapangan ......................................................................... 35
Gambar 3.37 Tampilan Form Lapangan ............................................................... 36
Gambar 3.38 Tampilan Jenis Lapangan ................................................................ 36
Gambar 3.39 Tampilan Form Jenis Lapangan ...................................................... 37
Gambar 3.40 Tampilan Jadwal ............................................................................. 37
Gambar 3.41 Tampilan Notifikasi......................................................................... 38
Gambar 3.42 Tampilan Response pada API Register ........................................... 39
Gambar 3.43 Tampilan Response pada API Login ............................................... 39
Gambar 3.44 Tampilan Response pada API Resend Email Verification.............. 40
Gambar 3.45 Tampilan Response pada API Forgot Password ............................. 40
Gambar 3.46 Tampilan Response pada API update FCM .................................... 41
Gambar 3.47 Tampilan Response pada API User Details .................................... 41
Gambar 3.48 Tampilan Response pada API Lapangan ........................................ 42
Gambar 3.49 Tampilan Response pada API Lapangan By ID Lapangan ............. 42
Gambar 3.50 Tampilan Response pada API Jenis Lapangan ............................... 43
Gambar 3.51 Tampilan Response pada API Detail Jenis Lapangan ..................... 43
Gambar 3.52 Tampilan Response pada API Tujuan Transfer .............................. 44
Gambar 3.53 Tampilan Response pada API History Booking ............................. 44
Gambar 3.54 Tampilan Response pada API Create Booking ............................... 45
Gambar 3.55 Tampilan Response pada API Booking Update Pembayaran ......... 45
Gambar 3.56 Tampilan Response pada API Detail Booking ................................ 46
Gambar 3.57 Tampilan Response pada API Booking Update Pembatalan .......... 46
Gambar 3.58 Tampilan Response pada API Fixture By Id Lapangan And Date . 47

x
BAB I
PENDAHULUAN

1.1. Latar Belakang


Dewasa ini, internet sudah menjadi salah satu bagian penting bagi
kehidupan manusia. Hampir semua kegiatan dilakukan dengan bantuan
internet. Karena dengan adanya internet semua kegiatan dapat dilakukan
dengan mudah. Internet sangat membantu dalam mencari dan mendapatkan
informasi, berkomunikasi dengan sesama, menikmati hiburan seperti bermain
game, menonton video, melakukan transaksi, dan jual beli. Dengan semakin
meluasnya penggunaan internet, penggunaan untuk bisnis juga semakin
meningkat, salah satunya untuk melakukan kegiatan sewa lapangan futsal
secara online.
Pembuatan aplikasi E-booking Booking Futsal di CV. Techarea
Indonesia Jaya dirancang sesuai perkembangan yang terjadi, terutama dalam
meningkatkan kemudahan dalam penyewaan lapangan futsal. Sehingga
aplikasi ini dapat digunakan dimanapun dan kapanpun serta dirancang sesuai
kebutuhan pengguna dan juga mempertimbangkan aspek kemudahan dalam
penggunaannya.
Pembuatan aplikasi ini diperlukan bagian pengembangan front end dan
back end, dalam laporan ini diangkat bagaimana mengimplementasikan konsep
Object Oriented Programming PHP dan Framework Laravel pada back end
aplikasi untuk mendukung fitur-fitur yang ada didalamnya.

1.2. Ruang Lingkup


Permasalahan yang akan dibahas dalam Laporan Magang di CV.
Techarea Indonesia Jaya berfokus pada pembuatan backend aplikasi e-booking
‘Futsal Booking’ dari CV. Techarea Indonesia Jaya.

1
1.3. Tujuan
Tujuan dari penulisan laporan adalah untuk menjelaskan pelaksanaan
Magang (PKL), dan ruang lingkup di CV. Techarea. Adapun pelaksanaan PKL
ini bertujuan untuk :
1) Memenuhi syarat pembuatan laporan akhir dari instansi tempat studi
mahasiswa.
2) Menjalin hubungan antara dunia Pendidikan dengan dunia industry.
3) Menambah wawasan dan pengetahuan tentang penerapan ilmu
pengetahuan dan teknologi yang ada di CV Techarea Indonesia Jaya.
4) Memperoleh gambaran tentang kondisi dunia kerja.
5) Mendapatkan pengalaman sebagai bekal sebelum memasuki dunia kerja,
6) Menerapkan ilmu yang telah didapatkan di tempat studi mahasiswa.

1.4. Manfaat
Manfaat dari penulisan laporan adalah untuk menjelaskan pelaksanaan
Magang (PKL), dan ruang lingkup di CV. Techarea. Adapun manfaat dari
pelaksanaan PKL ini adalah :

1.4.1. Bagi Mahasiswa


Adapun manfaat bagi Mahasiswa dengan diadakannya kegiatan
PKL ini adalah sebagai berikut.
1) Memperoleh pengetahuan tentang proses pembuatan suatu
aplikasi dari awal hingga siap dipasarkan/dipublikasi,
2) Memperoleh pengalaman bekerjasama dan pembagian tugas
kelompok dalam menyelesaikan suatu projek atau masalah,
3) Mengetahui bagaimana sikap profesional yang dibutuhkan di
dunia kerja,
4) Menambah pengetahuan tentang bagaimana implementasi bidang
studi Informatika yang digunakan di dunia kerja,
5) Sebagai studi perbandingan antara materi teori dan praktikum
yang digunakan mahasiswa di perkuliahan dengan yang
digunakan di dunia kerja,

2
6) Memperoleh pengalaman dalam mengelola proyek yang belum
pernah didapatkan ketika mahasiswa di perkuliahan,
7) Mengukur kemampuan yang ada dengan yang dibutuhkan di
dunia kerja,
8) Mendapatkan pengalaman secara langsung bagaimana dunia
kerja yang ada dalam sebuah perusahaan.

1.4.2. Bagi CV. Techarea Indonesia Jaya


CV. Techarea Indonesia Jaya dapat menilai kualitas Pendidikan
di Politeknik Negeri Semarang, serta dapat memberi masukan
kompetensi yang sesuai, sehingga akan membantu meningkatkan
kemampuan lulusan yang dibutuhkan dunia kerja dan meningkatkan
peran terhadap dunia pendidikan.

1.4.3. Bagi Politeknik Negeri Semarang


Adapun manfaat bagi Politeknik Negeri Semarang dengan
diadakannya kegiatan PKL ini adalah sebagai berikut.
1) Mengenalkan Politeknik Negeri Semarang di kalangan industri
sehingga dapat ikut andil dalam kalangan industri yang
bersangkutan.
2) Mempercepat jalinan kerjasama antara CV. Techarea Indonesia
Jaya dengan Politeknik Negeri Semarang.

1.5. Tempat dan Waktu Pelaksanaan


Magang ini dilaksanakan di CV. Techarea Indonesia Jaya di Grand
Tembalang Regency D4/02, Bulusan, Kec. Tembalang, Kota Semarang, Jawa
Tengah 50277. Magang dilaksanakan selama tiga bulan, berlangsung dari
tanggal 20 Juli sampai dengan 20 Oktober 2020.

1.6. Metodologi
Metode yang digunakan untuk mengumpulkan data dalam pembuatan
laporan kerja praktik ini adalah :

3
1.6.1. Metode Interview
Penulis menanyakan secara langsung kepada pembimbing
lapangan mengenai alur sistem karena sudah adanya rancangan sistem
disediakan.

1.6.2. Metode Literatur


Penulis mengambil data atau literatur-literatur atau buku-buku
penunjang yang berhubungan dengan pemrograman web, framework
laravel, dan framework bootstrap.

1.7. Sistematika
Dalam penyusunan laporan Magang penulis menggunakan sistematika
penulisan sebagai berikut.

BAB I : PENDAHULUAN
Bab ini menjelaskan latar belakang mengenai topik yang diambil pada Magang,
ruang lingkup mengenai batasan topik yang diambil, tujuan dan kegunaan
Magang dilaksanakan, metodologi, dan sistematika penulisan.

BAB II : GAMBARAN UMUM PERUSAHAAN


Bab ini menjelaskan tentang sejarah dari perusahaan, visi, misi, layanan, lokasi
perusahaan, struktur organisasi, dan portofolio CV. Techarea Indonesia Jaya.

BAB III : HASIL PELAKSANAAN PKL


Bab ini menjelaskan tentang kegiatan yang dilakukan selama kegiatan Magang
di CV. Techarea Indonesia Jaya. Kegiatan tersebut meliputi perancangan dan
pembuatan backend aplikasi e-booking ‘Booking Futsal’.

BAB IV : PENUTUP
Bab ini berisi kesimpulan dan saran yang didapat dari pembuatan Laporan
Magang.

4
BAB II
GAMBARAN UMUM PERUSAHAAN

2.1 Deskripsi Singkat Perusahaan


CV. Techarea Indonesia Jaya merupakan perusahaan di bidang IT &
Business Development berasal dari Semarang. Perusahaan ini memberikan
pelayanan servis dan jasa di berbagai segi project. Memiliki tim yang
mempunyai passion di bidang Software Engineering. Dalam pencapian target
perusahaan selalu memberikan hasil lebih dari yang diinginkan. Dalam
memberikan hasil yang terbaik perusahaan ini melakukaanya dengan kerja
keras. Kemampuan dari tim developer dapat diandalkan untuk mengerjakan
project yang sesuai harapan, sudah banyak portofolio project yang telah kami
selesaikan.
Dengan visi misi kami yaitu “Menjadi pusat pengembangan software dan
sistem terintegrasi yang memberikan banyak manfaat untuk masyarakat“
sesuai arti logo yang tertera pada Gambar 2.1, CV. Techarea Indonesia Jaya
terus berupaya untuk membantu mengembangkan teknologi digital perusahaan
agar dapat bergerak bersama memajukan Indonesia.

2.2 VISI dan MISI


3.2.1 VISI
Menjadi pusat pengembangan software dan sistem terintegrasi
yang memberikan banyak manfaat untuk masyarakat.
3.2.2 MISI
Sebagai upaya untuk mewujudkan visi di atas, maka misi CV.
Techarea Indonesia Jaya adalah sebagai berikut.
1) Memanfaatkan teknologi terbaru yang sesuai dan sedang
berkembang
2) Menyediakan solusi efektif penggunaan teknologi untuk
meningkatkan kualitas hidup.
3) Berinovasi untuk mengembangkan produk dan layanan yang
memiliki nilai manfaat tinggi.

5
4) Meningkatkan kualitas pelayanan dalam rangka meningkatkan
manfaat dan nilai bagi pelanggan dan stakeholder.

2.3 Layanan Perusahaan


2.4.1 Mobile Aplikasi Android
CV. Techarea Indonesia Jaya bekerja dalam pembuatan Aplikasi
Android secara khusus untuk mendukung dalam mengembangkan
bisnis dan menaikkan branding. Aplikasi yang dikembangkan meliputi
perancangan desain tampilan aplikasi mobile berbasis Android oleh tim
desain CV. Techarea Indonesia Jaya. Analisis kebutuhan sistem.
Contoh aplikasi yang dikembangkan adalah Sistem Informasi
Perusahaan meliputi stok, gudang, invoice, pembelian, penjualan dan
aplikasi/sistem lainnya. Pembuatan sistem dikerjakan oleh tim
programmer, desainer, dan manager CV. Techarea Indonesia Jaya.

2.4.2 Sistem Informasi & Pengembangan Web


CV. Techarea Indonesia Jaya berkerja dalam pembuatan portal
berita, website forum, sosial media, dan ide pelanggan.Website yang di
kembangkan diatur sedemikian detail mulai dari tampilan,
materi/konten, SEO (search engine optimazation), tautan menu.
Contoh pengembangan website dari CV. Techarea Indonesia Jaya
adalah
- Aplikasi yang Disesuaikan
- Pemeliharaan Aplikasi
- Manajemen Aplikasi Baru
- Custom Aplikasi Perusahaan
- Website Profile Perusahaan
- Aplikasi E-Commerce
- Custom Website
- Mengembangkan dan Manajemen Konten Aplikasi Website.

6
2.4.3 Internet Of Things
Internet Of Things merupakan sistem yang membuat dan
mengembangkan aplikasi terintegrasi dengan hardware. Pengembangan
Aplikasi meliputi perancangan desain tampilan aplikasi mobile berbasis
Web/Windows/Android oleh tim desain CV. Techarea Indonesia Jaya.
Seperti pembuatan Smart-Home dengan keamanan kunci sidik jari, dan
pengendalian perkakas rumah (AC, lampu, CCTV) melalui
smartphone. Beberapa aplikasi lain yang dikembangkan meliputi:
Aplikasi Integrasi Perusahaan, Smart Parking, Server dan Keamanan
Linux, Mengintegrasi software dan Hardware.

2.4.4 Digital dan Social Media Marketing


CV. Techarea Indonesia Jaya melayani pembuatan creative
concept dan design social media bisnis, serta merancang timeline social
media bisnis untuk mendapatkan awareness dari calon pelanggan atau
pelanggan.

2.4.5 Workshop Dan Training


Kebutuhan SDM dalam bidang skill IT khususnya sangat vital
bagi perusahaan atau instansi yang sedang berkembang. Dengan
layanan ini Techarea memberikan workshop dan training on demand
kepada instansi atau perusahaan dalam bidang teknologi informasi (IT).

2.4 Struktur Organisasi


CV. Techarea Indonesia Jaya mempunyai struktur organisasi yang ditunjuk
pada Gambar 2.1 berikut.

7
Gambar 2.1 Struktur Organisasi CV. Techarea Indonesia Jaya

2.5 Lokasi Perusahaan


Lokasi Perusahaan merupakan tempat yang digunakan perusahan
tersebut untuk melakukan kegiatan sehari-hari atau kegiatan rutin sesuai
dengan tujuan utama perusahaan tersebut. Wilayah kerja Perusahaan adalah
daerah atau wilayah yang menjadi jangkauan pelaksanaan kerja CV. Techarea
Indonesia Jaya yang terletak seperti pada Gambar 2.2 berlokasi di Grand
Tembalang Regency D04/02 Bulusan, Tembalang Semarang 50227.

Gambar 2.2 Lokasi CV. Techarea Indonesia Jaya

2.6 Portofolio
Berikut adalah beberapa foto produk yang dihasilkan oleh CV. Techarea
Indonesia Jaya yang digunakan oleh banyak organisasi dan instansi yang
membutuhkan.

8
9
10
BAB III
HASIL PELAKSANAAN PKL

Masalah yang dibahas pada laporan PKL ini adalah pembuatan API dan
halaman admin website e-booking ‘Booking Futsal’.

3.1 Deskripsi Pelaksanaan PKL


Kegiatan PKL dilaksanakan di CV. Techarea Indonesia Jaya yang
bertempat di Grand Tembalang Regency D4/02, Bulusan, Kec. Tembalang,
Kota Semarang, Jawa Tengah 50277. Mahasiswa Politeknik Negeri Semarang
ditempatkan di bagian developer. Pelaksanaan PKL berlangsung selama
kurang lebih tiga bulan yang dimulai pada tanggal 20 Juli sampai 20 Oktober
2020, dengan hari kerja mulai dari Senin hingga Jumat dengan jam kerja pukul
09.00 sampai dengan pukul 17.00 WIB. Tugas yang diberikan yaitu pembuatan
backend aplikasi e-booking ‘Booking Futsal.
Backend dari aplikasi e-booking ‘Booking Futsal’ dibuat dengan
menggunakan Framework Laravel dan Object Oriented Programming PHP

3.2 Dasar Teori


Dalam penyusunan hasil dari Magang, penulis menggunaan dasar teori
yang berasal dari berbagai sumber, berikut penjelasnnya:

3.2.1 PHP
Script sendiri merupakan sekumpulan instruksi pemrograman
yang ditafsirkan pada saat runtime. Sedangkan Bahasa scripting adalah
bahasa yang menafsirkan skrip saat runtime. Dan biasanya tertanam ke
dalam lingkungan perangkat lunak lain.
Karena php merupakan scripting server-side maka jenis bahasa
pemrograman ini nantinya script/program tersebut akan
dijalankan/diproses oleh server. Berbeda dengan javascript yang client-
side.

11
PHP adalah bahasa pemrograman umum yang berarti php dapat
disematkan ke dalam kode HTML, atau dapat digunakan dalam
kombinasi dengan berbagai sistem templat web, sistem manajemen
konten web, dan kerangka kerja web

3.2.2 Framework Laravel


Laravel adalah sebuah framework PHP yang dirilis dibawah
lisensi MIT, dibangun dengan konsep MVC (model view controller).
Laravel adalah pengembangan website berbasis MVP yang ditulis
dalam PHP yang dirancang untuk meningkatkan kualitas perangkat
lunak dengan mengurangi biaya pengembangan awal dan biaya
pemeliharaan, dan untuk meningkatkan pengalaman bekerja dengan
aplikasi dengan menyediakan sintaks yang ekspresif, jelas dan
menghemat waktu.
MVC adalah sebuah pendekatan perangkat lunak yang
memisahkan aplikasi logika dari presentasi. MVC memisahkan aplikasi
berdasarkan komponen- komponen aplikasi, seperti : manipulasi data,
controller, dan user interface.
1) Model, Model mewakili struktur data. Biasanya model berisi
fungsi-fungsi yang membantu seseorang dalam pengelolaan basis
data seperti memasukkan data ke basis data, pembaruan data dan
lain-lain.
2) View, View adalah bagian yang mengatur tampilan ke pengguna.
Bisa dikatakan berupa halaman web.
3) Controller, Controller merupakan bagian yang menjembatani
model dan view.
Beberapa fitur yang terdapat di Laravel :
1) Bundles, yaitu sebuah fitur dengan sistem pengemasan modular
dan tersedia beragam di aplikasi.
2) Eloquent ORM, merupakan penerapan PHP lanjutan
menyediakan metode internal dari pola “active record” yang
menagatasi masalah pada hubungan objek database.

12
3) Application Logic, merupakan bagian dari aplikasi,
menggunakan controller atau bagian Route.
4) Reverse Routing, mendefinisikan relasi atau hubungan antara
Link dan Route.
5) Restful controllers, memisahkan logika dalam melayani HTTP
GET and POST.
6) Class Auto Loading, menyediakan loading otomatis untuk class
PHP.
7) View Composer, adalah kode unit logikal yang dapat dieksekusi
ketika view sedang loading.
8) IoC Container, memungkin obyek baru dihasilkan dengan
pembalikan controller.
9) Migration, menyediakan sistem kontrol untuk skema database.
10) Unit Testing, banyak tes untuk mendeteksi dan mencegah regresi.
11) Automatic Pagination, menyederhanakan tugas dari penerapan
halaman.

3.2.3 Visual Studio Code


Visual Studio Code (VS Code) ini adalah sebuah teks editor
ringan dan handal yang dibuat oleh Microsoft untuk sistem operasi
multiplatform, artinya tersedia juga untuk versi Linux, Mac, dan
Windows. Teks editor ini secara langsung mendukung bahasa
pemrograman JavaScript, Typescript, dan Node.js, serta bahasa
pemrograman lainnya dengan bantuan plugin yang dapat dipasang via
marketplace Visual Studio Code (seperti C++, C#, Python, Go, Java,
dst).
Banyak sekali fitur-fitur yang disediakan oleh Visual Studio
Code, diantaranya Intellisense, Git Integration, Debugging, dan fitur
ekstensi yang menambah kemampuan teks editor. Fitur-fitur tersebut
akan terus bertambah seiring dengan bertambahnya versi Visual Studio
Code. Pembaruan versi Visual Studio Code ini juga dilakukan berkala

13
setiap bulan, dan inilah yang membedakan VS Code dengan teks editor-
teks editor yang lain.

3.2.4 Apache Web Server


Apache adalah software web server yang gratis dan bersifat open
source. Server ini telah menjadi platform bagi 46% website di seluruh
dunia. Nama resminya adalah Apache HTTP Server, dan software ini
dikelola dan dikembangkan oleh Apache Software Foundation.
Apache memudahkan pemilik website untuk mebuat konten di
web – dan karena itulah software diikuti dengan kata ‘web server’.
Apache adalah salah satu web server tertua dan dapat diandalkan. Versi
pertamanya telah dirilis lebih dari 20 tahun yang lalu, tepatnya pada
tahun 1995.

3.2.5 Google Chrome


Google Chrome adalah sebuah aplikasi peramban yang
digunakan untuk menjelajah dunia maya seperti halnya Firefox, Opera
ataupun Microsoft Edge. Jika Firefox dikembangkan oleh Mozilla,
Google Chrome dibuat dan dirancang oleh Google, perusahaan internet
terbesar di dunia yang juga empunya Android.
Proyek open source yang digunakan oleh Google disebut
Chromium, menggunakan mesin rendering Webkit sampai dengan versi
27 dan dirancang untuk bekerja dengan kecepatan di atas rata-rata
namun tetap ringan dijalankan di perangkat desktop dan mobile.

3.2.6 GitLab
Gitlab adalah layanan yang menyediakan akses remote ke Git
repositories. Selain meng-hosting kode Pengguna, layanan ini
menyediakan fitur tambahan yang dirancang untuk membantu
mengelola siklus pengembangan software. GitLab adalah layanan mirip
github yang dapat digunakan organisasi untuk menyediakan
manajemen internal git repositories. Ini adalah sistem manajemen Git-

14
repository yang di-host-sendiri yang menjaga code private pengguna
dan dapat dengan mudah menyebarkan perubahan kode.

3.2.7 MySQL
MySQL adalah sebuah DBMS (Database Management System)
menggunakan perintah SQL (Structured Query Language) yang banyak
digunakan saat ini dalam pembuatan aplikasi berbasis website. MySQL
dibagi menjadi dua lisensi, pertama adalah Free Software dimana
perangkat lunak dapat diakses oleh siapa saja. Dan kedua adalah
Shareware dimana perangkat lunak berpemilik memiliki batasan dalam
penggunaannya.
MySQL termasuk ke dalam RDBMS (Relational Database
Management System). Sehingga, menggunakan tabel, kolom, baris, di
dalam struktur database -nya. Jadi, dalam proses pengambilan data
menggunakan metode relational database. Dan juga menjadi
penghubung antara perangkat lunak dan database server.

3.2.8 API (Application Programming Interface)


API kependekan dari Application Programming Interface
merupakan sebuah perangkat lunak yang dapat menerima panggilan
atau permintaan dari perangkat lunak lainnya seperti aplikasi dan
website yang memberikan pelayanan. Dengan kata lain API merupakan
sebuah perangkat lunak yang mengijinkan atau menghubungkan dua
aplikasi. Tidak hanya itu API juga digunakan untuk membuat software
dan aplikasi oleh para developer. API dapat ditemui dalam kehidupan
sehari-hari seperti saat pememesan hotel, mengirimkan pesan,
memesan makanan secara online maupun ketika mengunduh sebuah
software. Bagaimana hal tersebut terjadi? Prosesnya seperti ini, ketika
menggunakan aplikasi maupun melakukan aktifitas tersebut, aplikasi
terhubung ke internet dan mengirimkan data ke server. Setelah itu, data
tersebut diambil dan diterjemahkan oleh server yang kemudian
melakukan aksi yang diperlukan sebagai hasilnya kemudian dikirimkan

15
kembali ke smartphone. Setelah menerima data tersebut, aplikasi
menerjemahkannya lalu memberikan informasi yang diinginkan
dengan cara yang mudah dibaca. Dengan adanya API semua dapat
berjalan dengan lancar dan memudahkan.

3.2.9 Firebase Cloud Messaging


Firebase Cloud Messaging (FCM), sebelumnya disebut Google
Cloud Messaging (GCM), adalah layanan cloud gratis dari Google yang
memungkinkan developer aplikasi mengirimkan notifikasi dan pesan
kepada pengguna di berbagai platform, termasuk Android, iOS, dan
aplikasi web. FCM disediakan oleh Firebase, sebuah perusahaan yang
diakuisisi oleh Google pada tahun 2014.
FCM memungkinkan pengembang perangkat lunak mengirim
pemberitahuan push untuk aplikasinya kepada pengguna akhir melalui
antarmuka pemrograman aplikasi (API). Notifikasi push populer di
perangkat seluler karena menghemat masa pakai baterai, tidak seperti
notifikasi tarik, yang terus mengumpulkan informasi baru dari server
pengembang dan dapat menghabiskan masa pakai baterai perangkat.
Dengan pemberitahuan push, layanan awan bertindak atas nama
aplikasi dan hanya menghubungkan ke perangkat seluler ketika ada
pemberitahuan baru.
Untuk mengirim dan menerima pesan menggunakan FCM, dua
elemen yang diperlukan adalah lingkungan atau server tepercaya
tempat membuat, mengarahkan, dan mengirim pesan dan aplikasi klien
Android, iOS, atau Web untuk menerima pesan. Dengan FCM,
developer dapat mengirim dua jenis pesan ke pengguna: pesan
notifikasi dan pesan data. Pesan notifikasi ditampilkan di perangkat
pengguna oleh FCM atas nama aplikasi. Pesan data diproses secara
langsung oleh aplikasi, yang bertanggung jawab untuk menyampaikan
pesan kepada pengguna.
Dengan menggunakan penargetan pesan, FCM dapat
mengirimkan pesan ke aplikasi dengan tiga cara: ke satu perangkat, ke

16
sekelompok perangkat, atau ke perangkat yang berlangganan topik.
Pengembang memiliki opsi untuk membuat pesan di Notification
composer, yang dapat mengirim pesan yang ditargetkan ke segmen
pengguna tertentu. Pesan-pesan ini sepenuhnya terintegrasi dengan
Firebase Analytics, yang melacak interaksi dan konversi pengguna.

3.2.10 Pusher
Pusher adalah layanan yang dihosting yang membuatnya sangat
mudah untuk menambahkan data dan fungsionalitas waktu nyata ke
aplikasi web dan seluler.
Pusher berada sebagai lapisan real-time antara server dan klien.
Pusher mempertahankan koneksi persisten ke klien - melalui
WebSocket jika memungkinkan dan kembali ke konektivitas berbasis
HTTP - sehingga segera setelah server pengguna memiliki data baru
yang ingin mereka dorong ke klien yang dapat mereka lakukan,
langsung melalui Pusher.
Pusher menawarkan pustaka untuk diintegrasikan ke semua
runtime dan kerangka kerja utama. PHP, Ruby, Python, Java, .NET, Go
dan Node di server dan JavaScript, Objective-C (iOS) dan Java
(Android) di klien.
Pusher adalah solusi real-time yang sangat skalabel yang
didirikan pada tahun 2010 dan memiliki banyak pelanggan hebat
termasuk GitHub, MailChimp, CodeShip, The Financial Times,
UserVoice, Travis CI, dan QuizUp.

3.3 Analisis Masalah


Adapun masalah yang dianalisis merupakan gambaran umum tugas yang
dikerjakan, perangkat keras (hardware) serta perangkat lunak (software) yang
digunakan untuk membuat sistem tersebut.

17
3.3.1 Gambaran Umum Tugas PKL
Tugas PKL diberikan yaitu membuat backend aplikasi e-booking
yang bernama Booking Futsal. Aplikasi ini berfokus pada penyewaan
lapangan futsal dengan sistem order online. Backend Booking Futsal
terdapat multiuser untuk login yaitu administrator dan pemilik lapangan.
Untuk administrator terdapat menu untuk pengisian data booking,
manajemen users, dan lain sebagainya. Sedangkan untuk bagian pemilik
lapangan terdapat kelola lapangan dan jenis lapangan yang dimiliki,
laporan booking dan lain sebagainya. Dalam pembuatan aplikasi booking
futsal ini menggunakan PHP dan Laravel sebagai frameworknya.

3.3.2 Perangkat Keras yang Digunakan


Perangkat yang diperlukan dalam membangun website ini adalah
sebagai berikut:
1) Laptop

3.3.3 Perangkat Lunak yang Digunakan


Perangkat lunak yang dibutuhkan untuk membangun website ini
adalah sebagai berikut:
1) Visual Studio Code
2) XAMPP
3) Chrome Browser
4) GitLab
5) Postman
6) Laravel

3.4 Pembuatan dan Hasil Tugas PKL


3.4.1 Database
Database yang digunakan adalah MySQL diberi nama
booking_futsal. Dalam penerapannya, tabel yang dibuat dalam database
dirancang sesuai dengan kebutuhan client. Ada tahapan tersendiri untuk
menentukan apa saja tabel yang akan ditambahkan dalam database

18
misalnya dengan pembuatan analisis kebutuhan yang dilakukan oleh
Account Manager yang didiskusikan oleh client. Dalam database
booking_futsal terdapat beberapa tabel seperti yang terlihat pada Gambar
3.1.

Gambar 3.1 Daftar Tabel Database Futsal Booking

1) Tabel app_notifications
Tabel app_notifications digunakan untuk menyimpan data
notifikasi yang dibroadcast ke android. Struktur tabel
app_notifications dapat dilihat pada Gambar 3.2.

Gambar 3.2 Tabel app_notifications

2) Tabel banks
Tabel banks digunakan untuk menyimpan data bank yang
dapat digunakan untuk melakukan pembayaran. Struktur tabel
banks dapat dilihat pada Gambar 3.3.

19
Gambar 3.3 Tabel banks

3) Tabel booking
Tabel booking digunakan untuk menyimpan data transaksi
booking lapangan. Struktur tabel booking dapat dilihat pada
Gambar 3.4.

Gambar 3.4 Tabel booking

4) Tabel configurations
Tabel configurations digunakan untuk menyimpan data
konfigurasi pada aplikasi, seperti konfigurasi pusher, FCM, UI
Aplikasi dll. Struktur tabel configurations dapat dilihat pada
Gambar 3.5.

Gambar 3.5 Tabel configurations

20
5) Tabel email_tokens
Tabel email_tokens digunakan untuk menyimpan data token
untuk keperluan yang berhubungan dengan email akun, seperti
reset password, aktivasi akun dan perubahan email. Struktur tabel
email_tokens dapat dilihat pada Gambar 3.6.

Gambar 3.6 Tabel email_tokens

6) Tabel jenis_lapangan
Tabel jenis_lapangan digunakan untuk menyimpan data
jenis lapangan. Struktur tabel jenis_lapangan dapat dilihat pada
Gambar 3.7.

Gambar 3.7 Tabel jenis_lapangan

7) Tabel lapangan
Tabel lapangan digunakan untuk menyimpan data lapangan
yang dimiliki oleh pemilik lapangan. Struktur tabel lapangan dapat
dilihat pada Gambar 3.8.

21
Gambar 3.8 Tabel lapangan

8) Tabel notifications
Tabel notifications digunakan untuk menyimpan data
notifikasi pada website admin. Struktur tabel notifications dapat
dilihat pada Gambar 3.9.

Gambar 3.9 Tabel notifications

9) Tabel temp_new_email
Tabel promo digunakan untuk menyimpan data email baru
sementara pada proses ganti email. Struktur tabel temp_new_email
dapat dilihat pada Gambar 3.10.

Gambar 3.10 Tabel temp_new_email

22
10) Tabel users
Tabel user digunakan untuk menyimpan data user yang
tersimpan pada aplikasi. Struktur tabel users dapat dilihat pada
Gambar 3.11.

Gambar 3.11 Tabel users

11) Tabel oauth_access_tokens


Tabel oauth_access_tokens digunakan untuk menyimpan
data token yang digunakan untuk mengakses api. Struktur tabel
oauth_access_tokens dapat dilihat pada Gambar 3.12.

Gambar 3.12 Tabel oauth_access_tokens

12) Tabel oauth_auth_codes


Tabel oauth_auth_codes digunakan untuk menyimpan
otentifikasi pada api. Struktur tabel oauth_auth_codes dapat dilihat
pada Gambar 3.13.

23
Gambar 3.13 Tabel oauth_auth_codes

13) Tabel oauth_clients


Tabel oauth_clients digunakan untuk menyimpan data client
yang menggunakan api. Struktur tabel oauth_clients dapat dilihat
pada Gambar 3.14.

Gambar 3.14 Tabel oauth_clients

3.4.2 Halaman Login


Halaman login ini digunakan untuk masuk ke dalam halaman
administrator atau pemilik lapangan. Apabila username menggunakan
tipe_user admin yang telah ditambahkan pada kolom tabel users, maka
akan masuk ke halaman admin. Sedangkan tipe_user pemilik_lapangan
akan masuk ke dalam halaman pemilik_lapangan. Untuk kolom role dari
setiap user tabelnya seperti pada Gambar 3.15 berikut ini.

Gambar 3.15 Tipe User pada aplikasi Booking Futsal

24
Pada halaman login tidak terdapat fungsi register dikarenakan user
admin hanya terdapat satu akun. Untuk menambahkan user untuk pemilik
lapangan hanya dapat ditambahkan melalui halaman admin. Tampilan
Halaman Login pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.16.

Gambar 3.16 Halaman Login

3.4.3 Halaman Admin


Pada halaman admin ini terdapat berbagai menu yang digunakan
oleh admin dalam mengatur data website. Tampilan pada halaman ini
menggunakan template dari Admin LTE 3 yang memang dikhususkan
untuk bagian administrator sehingga dalam pembuatannya lebih cepat
dan efisien.
Berikut merupakan menu-menu yang terdapat pada halaman
administrator Booking Futsal.
1) Navbar
Dalam navbar terdapat tombol untuk fungsi sign out dan
tombol untuk mengganti warna tema dari halaman admin.
Tampilan Navbar pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.17 dan Gambar 3.18.

Gambar 3.17 Navbar pada Halaman Admin Booking Futsal

25
Gambar 3.18 Tombol untuk Fungsi Sign Out Halaman Admin

2) Sidebar
Didalam sidebar terdapat beberapa fitur atau menu yang ada
pada halaman admin Booking Futsal. Tampilan Sidebar pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.19.

Gambar 3.19 Sidebar pada Halaman Admin Booking Futsal

3) Menu Laporan
Pada halaman Laporan, terdapat tampilan untuk
menampilkan jumlah jumlah booking perkategori dan grafik
booking dalam satu bulan. Tampilan Laporan pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.20.

26
Gambar 3.20 Tampilan Halaman Laporan

4) Menu Admin - Konfigurasi E-mail


Pada halaman Konfigurasi E-mail, terdapat form untuk
menyimpan konfigurasi smtp. Tampilan Konfigurasi E-mail pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.21.

Gambar 3.21 Tampilan Konfigurasi E-Mail

5) Menu Admin - Konfigurasi Pusher


Pada halaman Konfigurasi pusher, terdapat form untuk
menyimpan konfigurasi pusher. Tampilan Konfigurasi Pusher pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.22.

27
Gambar 3.22 Tampilan Konfigurasi Pusher

6) Menu Admin - Konfigurasi FCM


Pada halaman Konfigurasi FCM, terdapat form untuk
menyimpan konfigurasi FCM. Tampilan Konfigurasi FCM pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.23.

Gambar 3.23 Tampilan Konfigurasi FCM

7) Menu Admin - Konfigurasi UI


Pada halaman Konfigurasi UI, terdapat form untuk
menyimpan konfigurasi UI aplikasi, seperti nama aplikasi, logo
web dan logo pada halaman login. Tampilan Konfigurasi UI pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.24.

28
Gambar 3.24 Tampilan Konfigurasi UI

8) Menu Admin - Users Admin


Pada halaman User Admin, terdapat tabel yang berisi data
user yang bertipe admin. Disebelah kanan data terdapat tombol aksi
yang dapat digunakan untuk manajemen user admin. Tampilan
Users Admin pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.25.

Gambar 3.25 Tampilan Users Admin

9) Menu Admin – Users Admin Form


Users Admin Form adalah form yang digunakan untuk
manajemen users admin. Form tersebut digunakan untuk
menambah, mengubah atau melihat detail users admin. Tampilan
Users Admin Form pada aplikasi ‘Booking Futsal’ dapat dilihat
pada Gambar 3.26.

29
Gambar 3.26 Tampilan Users Admin Form

10) Menu Admin – Users Pemilik


Pada halaman User Pemilik, terdapat tabel yang berisi data
user yang bertipe pemilik_lapangan. Disebelah kanan data terdapat
tombol aksi yang dapat digunakan untuk manajemen user pemilik
lapangan. Tampilan Users Pemilik pada aplikasi ‘Booking Futsal’
dapat dilihat pada Gambar 3.27.

Gambar 3.27 Tampilan Users Pemilik

11) Menu Admin – Users Pemilik Form


Users Pemilik Form adalah form yang digunakan untuk
manajemen users pemilik lapangan. Form tersebut digunakan
untuk menambah, mengubah atau melihat detail users pemilik

30
lapangan. Tampilan Users Pemilik Form pada aplikasi ‘Booking
Futsal’ dapat dilihat pada Gambar 3.28.

Gambar 3.28 Tampilan Form User Pemilik

12) Menu Admin – Users Customer


Pada halaman User Customer, terdapat tabel yang berisi data
user yang bertipe customer. Disebelah kanan data terdapat tombol
aksi yang dapat digunakan untuk manajemen user customer.
Tampilan Users customer pada aplikasi ‘Booking Futsal’ dapat
dilihat pada Gambar 3.29.

Gambar 3.29 Tampilan Users Customer

31
13) Menu Admin – Users Customer Form
Users Customer Form adalah form yang digunakan untuk
manajemen users customer. Form tersebut digunakan untuk
menambah, mengubah atau melihat detail users customer.
Tampilan Users Customer Form pada aplikasi ‘Booking Futsal’
dapat dilihat pada Gambar 3.30.

Gambar 3.30 Tampilan Form User Customer Form

14) Menu Admin – Booking Pending


Pada halaman Booking Pending, terdapat tabel yang berisi
data booking dengan status pending. Disebelah kanan data terdapat
tombol aksi yang dapat digunakan untuk manajemen booking.
Tampilan Booking Pending pada aplikasi ‘Booking Futsal’ dapat
dilihat pada Gambar 3.31.

32
Gambar 3.31 Tampilan Booking Pending

15) Menu Admin – Booking Down Payment


Pada halaman Booking Down Payment, terdapat tabel yang
berisi data booking dengan status down payment. Disebelah kanan
data terdapat tombol aksi yang dapat digunakan untuk manajemen
booking. Tampilan Booking Down Payment pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.32.

Gambar 3.32 Tampilan Booking Down Payment

16) Menu Admin – Booking Paid


Pada halaman Booking Paid, terdapat tabel yang berisi data
booking dengan status paid. Disebelah kanan data terdapat tombol
aksi yang dapat digunakan untuk manajemen booking. Tampilan

33
Booking Paid pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.33.

Gambar 3.33 Tampilan Booking Paid

17) Menu Admin – Booking Cancel


Pada halaman Booking Cancel, terdapat tabel yang berisi
data booking dengan status cancel. Disebelah kanan data terdapat
tombol aksi yang dapat digunakan untuk manajemen booking.
Tampilan Booking Cancel pada aplikasi ‘Booking Futsal’ dapat
dilihat pada Gambar 3.34.

Gambar 3.34 Tampilan Booking Cancel

18) Menu Admin – Booking Tambah Data


Pada halaman Booking Tambah Data, terdapat form yang
berfungsi untuk manajemen booking, seperti menambah dan

34
mengubah data booking. Tampilan Booking Tambah Data pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.35.

Gambar 3.35 Tampilan Booking Tambah Data

19) Menu Admin – Lapangan


Pada halaman Lapangan, terdapat tabel yang berisi data
lapangan yang terdaftar pada sistem. Disebelah kanan data terdapat
tombol aksi yang dapat digunakan untuk manajemen lapangan.
Tampilan Lapangan pada aplikasi ‘Booking Futsal’ dapat dilihat
pada Gambar 3.36.

Gambar 3.36 Tampilan Lapangan

20) Menu Admin – Lapangan Form


Pada halaman Lapangan Form, terdapat form yang berfungsi
untuk manajemen lapangan, seperti menambah dan mengubah data

35
lapangan. Tampilan Lapangan Form pada aplikasi ‘Booking Futsal’
dapat dilihat pada Gambar 3.37.

Gambar 3.37 Tampilan Form Lapangan

21) Menu Admin – Jenis Lapangan


Pada halaman Jenis Lapangan, terdapat tabel yang berisi data
jenis lapangan yang terdaftar pada sistem. Disebelah kanan data
terdapat tombol aksi yang dapat digunakan untuk manajemen jenis
lapangan. Tampilan Jenis Lapangan pada aplikasi ‘Booking Futsal’
dapat dilihat pada Gambar 3.38.

Gambar 3.38 Tampilan Jenis Lapangan

22) Menu Admin – Jenis Lapangan Form


Pada halaman Jenis Lapangan Form, terdapat form yang
berfungsi untuk manajemen lapangan, seperti menambah dan

36
mengubah data jenis lapangan. Tampilan Jenis Lapangan Form
pada aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.39.

Gambar 3.39 Tampilan Form Jenis Lapangan

23) Menu Admin – Jadwal


Pada halaman Jadwal, terdapat tabel berisi data jadwal
penggunaan lapangan, sesuai data booking yang masuk. Diatas
tabel terdapat beberapa input yang berfungsi untuk filter data
jadwal. Tampilan Jadwal pada aplikasi ‘Booking Futsal’ dapat
dilihat pada Gambar 3.40.

Gambar 3.40 Tampilan Jadwal

37
24) Menu Admin – Notifikasi
Pada halaman notifikasi, terdapat tabel berisi data notifikasi
yang masuk pada website, seperti notifikasi booking user.
Tampilan Notifikasi pada aplikasi ‘Booking Futsal’ dapat dilihat
pada Gambar 3.41.

Gambar 3.41 Tampilan Notifikasi

3.4.4 API
Pengerjaan API ebooking Booking Futsal menggunakan konsep
Object Oriented Programming dengan PHP sebagai Bahasa
pemgrograman utama. Penjelasan tentang bagian-bagian apa yang
dikerjakan dalam website ini adalah sebagai berikut.

1) API Register
API register digunakan untuk melakukan proses pendaftaran
user baru. Tampilan Response API Register pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.42.

38
Gambar 3.42 Tampilan Response pada API Register

2) API Login
API Login digunakan untuk melakukan proses masuk user
pada aplikasi. Tampilan Response API Login pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.43.

Gambar 3.43 Tampilan Response pada API Login

3) API Resend Email Verification


API resend email verification digunakan untuk mengirimkan
ulang email verifikasi kepada user, apabila user merasa belum
menerima email verifikasi setelah register sebelumnya. Tampilan
Response API Resend Email Verification pada aplikasi ‘Booking
Futsal’ dapat dilihat pada Gambar 3.44.

39
Gambar 3.44 Tampilan Response pada API Resend Email
Verification

4) API Forgot Password


API Forgot Password digunakan untuk melakukan proses
reset password pada akun user. Setelah response diterima, maka
user akan mendapat email yang berisi link untuk melakukan
perubahan password. Tampilan Response API Forgot Password
pada aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.45.

Gambar 3.45 Tampilan Response pada API Forgot Password

5) API Update FCM


API update FCM digunakan untuk memelakukan update
data FCM user. Data FCM ini akan digunakan untuk proses
broadcasting message notification. Tampilan Response API

40
Update FCM pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.46.

Gambar 3.46 Tampilan Response pada API update FCM

6) API User Details


API User Details akan mengembalika response berupa data
user yang sedang login. Tampilan Response API User Details pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.47.

Gambar 3.47 Tampilan Response pada API User Details

7) API Lapangan
API Lapangan akan mengembalikan response berupa semua
data lapangan yang terdaftar pada sistem. Tampilan Response API
Lapangan pada aplikasi ‘Booking Futsal’ dapat dilihat pada
Gambar 3.48.

41
Gambar 3.48 Tampilan Response pada API Lapangan

8) API Lapangan By Lapangan ID


API ini akan mengembalikan response berupa data detail
dari lapangan, sesuai dengan ID lapangan yang dikirimkan.
Tampilan Response API Lapangan By Lapangan ID pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.49.

Gambar 3.49 Tampilan Response pada API Lapangan By ID


Lapangan

9) API Jenis Lapangan


API Jenis Lapangan akan mengembalikan response berupa
semua data jenis lapangan, sesuai kode lapangan yang dikirim.
Tampilan Response API Jenis Lapangan pada aplikasi ‘Booking
Futsal’ dapat dilihat pada Gambar 3.50.

42
Gambar 3.50 Tampilan Response pada API Jenis Lapangan

10) API Detail Jenis Lapangan


API ini akan mengembalikan response berupa data detail
dari jenis lapangan sesuai dengan id yang dikirimkan. Tampilan
Response API Detail Jenis Lapangan pada aplikasi ‘Booking
Futsal’ dapat dilihat pada Gambar 3.51.

Gambar 3.51 Tampilan Response pada API Detail Jenis


Lapangan

11) API Tujuan Transfer


API Tujuan Transfer akan mengembalika response berupa
data bank sesuai dengan ID lapangan yang dikirimkan. Tampilan
Response API Tujuan Transfer pada aplikasi ‘Booking Futsal’
dapat dilihat pada Gambar 3.52.

43
Gambar 3.52 Tampilan Response pada API Tujuan Transfer

12) API History Booking


API ini akan menampilkan semua data booking yang pernah
dilakukan oleh user. Tampilan Response API History Booking pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.53.

Gambar 3.53 Tampilan Response pada API History Booking

13) API Create Booking


API ini akan melakukan proses penyimpanan data booking
ke database. Tampilan Response API Create Booking pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.54.

44
Gambar 3.54 Tampilan Response pada API Create Booking

14) API Booking Update Pembayaran


API ini akan melakukan proses update status booking
menyimpan foto bukti pembayaran yang diupload oleh user.
Tampilan Response API Update Pembayaran pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.55.

Gambar 3.55 Tampilan Response pada API Booking Update


Pembayaran

15) API Detail Booking


API ini akan mengembalikan response berupa data detail
booking sesuai dengan ID booking yang dikirimkan. Tampilan
Response API Detail Booking pada aplikasi ‘Booking Futsal’ dapat
dilihat pada Gambar 3.56.

45
Gambar 3.56 Tampilan Response pada API Detail Booking

16) API Booking Update Pembatalan


API ini akan melakukan proses update status booking
menjadi cancel. Tampilan Response API Update Pembatalan pada
aplikasi ‘Booking Futsal’ dapat dilihat pada Gambar 3.57.

Gambar 3.57 Tampilan Response pada API Booking Update


Pembatalan

17) API Fixture By Id Lapangan And Date


API ini akan mengembalikan response berupa data jadwal
berdasarkan id lapangan dan tanggal yang di minta. Tampilan
Response API Fixture By Id Lapangan And Date pada aplikasi
‘Booking Futsal’ dapat dilihat pada Gambar 3.58.

46
Gambar 3.58 Tampilan Response pada API Fixture By Id
Lapangan And Date

47
BAB IV
PENUTUP

4.1 Kesimpulan
Kesimpulan yang dapat diambil dari Magang di CV. Techarea Indonesia
Jaya adalah :
1) Jam kerja di CV. Techarea Indonesia Jaya yaitu 09.00 – 17.00 WIB dan
harus tepat waktu saat jam masuk. Sehingga didalam dunia kerja
memiliki integritas dalam hal kedisiplinan waktu.
2) Magang di CV. Techarea Indonesia Jaya juga memberikan pelajaran
tentang target pekerjaan yang harus dicapai perharinya. Sehingga dalam
dunia kerja akan memberikan pelajaran tentang bagaimana agar target
tercapai.
3) Magang di CV. Techarea Indonesia Jaya harus menyesuaikan dengan
peraturan perusahaan hingga penyesuaian dengan sistem kerja
perusahaan. Sehingga dapat melatih untuk dapat beradaptasi di dunia
kerja.
4) Pembagian jenis tugas bagi peserta Magang, sesuai dengan minat
masing-masing peserta. Apabila peserta Magang minat pada website,
maka akan diberikan tugas seputar pembuatan website sehingga akan
lebih fokus dalam pengerjaannya.

4.2 Saran
Saran yang dapat diambil dari hasil Magang di CV. Techarea Indonesia
Jaya adalah :
1) Halaman admin website e-booking ‘Booking Futsal’ perlu dikembangkan
lagi, baik dari sistem, tampilan maupun fiturnya.
2) Penerapan backend API pada aplikasi e-booking Booking Futsal perlu
dikembangkan lagi menggunakan konsep bahasa pemrogaman lain
seperti Node.JS dan semacanya supaya pemrosesan data akan lebih
cepat.

48
DAFTAR PUSTAKA

https://netmonk.id/apa-itu-api/ diakses pada tanggal (20 Desember 2020)


https://www.jagoanhosting.com/blog/pengertian-php/ diakses pada tanggal (20
Desember 2020)
https://idcloudhost.com/pengertian-dan-keunggulan-framework-laravel/ diakses pada
tanggal (20 Desember 2020)

https://medium.com/kode-dan-kodean/ekstensi-dan-tema-visual-studio-code-yang-saya-
gunakan-6c3555762816 diakses pada tanggal (20 Desember 2020)

https://idcloudhost.com/kamus-hosting/apache/ diakses pada tanggal (20


Desember 2020)

https://dailysocial.id/post/apa-itu-google-chrome diakses pada tanggal (20 Desember


2020)

https://www.jetorbit.com/blog/apa-itu-gitlab-serta-kelebihan-kekurangan-gitlab/ diakses
pada tanggal (20 Desember 2020)

https://www.sekawanmedia.co.id/pengertian-mysql/ diakses pada tanggal (20


Desember 2020)

https://whatis.techtarget.com/definition/Firebase-Cloud-Messaging-FCM diakses pada


tanggal (20 Desember 2020)
https://dailysocial.id/post/apa-itu-google-chrome diakses pada tanggal (20 Desember
2020)

https://pusher-community.github.io/real-time-laravel/introduction/what-is-
pusher.html diakses pada tanggal (20 Desember 2020)

49
LAMPIRAN

Lampiran 1. Lembar Penilaian PKL

50
Lampiran 2 Dokumentasi PKL

51
Lampiran 3 Berita Acara Seminar PKL

52
Lampiran 4 Dokumentasi Seminar PKL

53

Anda mungkin juga menyukai