SISTEM PARKIR KENDARAAN


KATA PENGANTAR

Assalamualaikum Wr.Wb
Dengan menyebut nama Allah SWT yang Maha Pengasih lagi Maha Penyayang, penulis panjatkan puja dan puji syukur atas kehadirat-Nya, yang telah melimpahkan rahmat, hidayah, dan inayah-Nya, sehingga penulis dapat menyelesaikan laporan proyek UAS Pemrograman Beroientasi Objek tentang Sistem Parkir Kendaraan.
Adapun laporan proyek UAS Pemrograman Beroientasi Objek tentang Sistem Parkir Kendaraan, penulis telah mengusahakan semaksimal mungkin dan tentunya dengan bantuan berbagai pihak, sehingga dapat memperlancar pembuatan laporan ini. Untuk itu penulis tidak lupa menyampaikan banyak terima kasih kepada penulis mengucapkan banyak terima kasih kepada dosen matakuliah yang mengajar Pemrograman Beroientasi Objek. Dan semua pihak yang telah membantu dalam pembuatan laporan ini. Namun tidak lepas dari semua itu, penulis menyadari sepenuhnya bahwa ada kekurangan baik dari segi penyusunan bahasa maupun segi materi dan kajian. Oleh karena itu penulis berharap dapat menerima saran dan kritikan sehingga dapat memperbaiki laporan ini.
Akhirnya penulis mengharapkan semoga dari laporan proyek UAS ini dapat diambil hikmah dan manfaatnya sehingga dapat memberikan inpirasi terhadap pembaca.
Wassalamu’alaikum Wr.Wb


BAB I
PENDAHULUAN


1.1  Latar Belakang
Parkir merupakan fasilitas yang harus terpenuhi dalam sebuah institusi. Di mana fasilitas ini mempunyai peranan penting demi kemajuan institusi tersebut.  Sistem parkir yang tertata dengan baik akan membuat pengguna kendaraan merasa nyaman. Para pengguna pun dapat melakukan aktifitas dengan maksimal. Tanpa adanya suatu sistem parkir yang baik dapat menimbulkan berbagai masalah. Seperti halnya pada toko-toko tertentu sistem penataan parkir yang masih bersifat manual. Tata kelola parkir kendaraan sepenuhnya masih menggunakan petugas parkir untuk mengarahkan dan mengontrol kendaraan yang terparkir. Tentunya hal ini sudah tidak efisien. Contoh masalah yang timbul yakni mengenai kurang tertatanya kendaraan di lingkungan parkir dengan baik, sehingga seringkali masih terdapat tempat kosong yang tidak bisa ditempati. Hal ini membuat area parkir tidak bisa menampung kendaraan secara maksimal. Akibatnya, banyak kendaraan yang tidak dapat menempati area parkir.     
     Untuk itu diperlukan suatu sistem parkir sistemastis yang mampu mengatasi permasalahan tersebut. Dibutuhkan suatu sistem komputerisasi yang mampu mengarahkan pengguna parkir ke lokasi parkir yang kosong. Sehingga penulis mempunyai gagasan untuk membuat suatu sistem parkir untuk kendaraan. Diharapkan dengan sistem aplikasi parkir ini pengguna parkir dapat memarkir kendaraan pada lokasi yang telah ditentukan sesuai dengan daya tampung tempat parkir yang tersedia.
1.2  Rumusan Masalah
Dari latar belakang masalah diatas penulis dapat mengambil rumusan masalah sebagai berikut :
a.       Bagaimana merancang sistem parkir yang dapat menentukan lokasi parkir kendaraan?
b.      Bagaimana kinerja sistem parkir dalam menentukan lokasi parkir kendaraan?
1.3  Tujuan Penelitian
Adapun yang menjadi tujuan dari penelitian yang akan dilakukan adalah :
a.       Menciptakan sistem parkir yang mampu menentukan lokasi parkir.
b.      Mengetahui kinerja sistem parkir dalam menentukan lokasi parkir kendaraan.



1.4  Manfaat Penelitian
Adapun manfaat dari penelitian ini adalah :
1.      Bagi Penulis :
a.       Dapat membuat sistem parkir yang sesuai dengan permasalahan yang dihadapi.
b.      Sebagai  pembelajaran  serta  menambah  wawasan  tentang dunia kerja khususnya  mengenai  pembuatan sistem komputerisasi yang telah didapatkan pada bangku perkuliahan.
2. Bagi Instansi Terkait :
a.       Memudahkan mahasiswa, dosen maupun karyawan dalam mendapatkan tempat parkir.
b.      Mempercepat proses pencarian kendaraan yang terparkir di area parkir.
c.       Memudahkan dalam proses penghitungan daya tampung area parkir.
d.      Informasi keluar masuk kendaraan dapat terekam dengan sistematis.
e.       Membantu petugas parkir dalam menjalankan pekerjaan.



BAB II
LANDASAN TEORI


2.1  Pengertian Sistem
Sistem adalah suatu himpunan suatu “benda” nyata atau abstrak (a set of thing) yang terdiri dari bagian–bagian atau komponen-komponen yang saling berkaitan, berhubungan, berketergantungan, saling mendukung, yang secara keseluruhan bersatu dalam satu kesatuan (Unity) untuk mencapai tujuan tertentu secara efisien dan efektif”.
Pengertian Sistem Menurut Indrajit (2001: 2) mengemukakan bahwa sistem mengandung arti kumpulan-kumpulan dari komponen-komponen yang dimiliki unsur keterkaitan antara satu dengan lainnya.
Pengertian Sistem Menurut Jogianto (2005: 2) mengemukakan bahwa sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. sistem ini menggambarkan suatu kejadian-kejadian dan kesatuan yang nyata adalah suatu objek nyata, seperti tempat, benda, dan orang-orang yang betul-betul ada dan terjadi.
2.2 Java Netbeans
Pengertian Java
Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsysytems pada pertengahan tahun 1990. Menurut definisi Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada computer standalone ataupun pada lingkungan jaringan. Kita lebih menyukai Java sebagai sebuah teknologi disbanding hanya sebuah bahasa pemrograman, karena Java lebih lengkap karena Java lebih lengkap dibanding sebuah bahasa pemrograman konvensional. Teknologi Java memiliki tiga komponen penting, yaitu:
·         Programming-language specification
·         Application-programming interface.
Virtual-machine specification JDK (Java Development Kit) Java Development Kit (JDK) adalah Sun Microsystems produk ditujukan untuk pengembang Java. Sejak diperkenalkannya Java, telah jauh SDK Java yang paling banyak digunakan. Pada tanggal 17 November 2006, Sun mengumumkan bahwa akan dirilis di bawah GNU General Public License (GPL), sehingga membuat perangkat lunak bebas. Hal ini terjadi sebagian besar pada tanggal 8 Mei 2007 [3]; Sun kontribusi kode sumber untuk JDKOpen. JRL (Java Research License) JRL (JAVA RESEARCH LICENSE) ini dibuat khusus untuk universitas dan peneliti yang ingin menggunakan teknologi Java [tm] sebagai subyek pembelajaran dan penelitian. Ia ditulis untuk menyederhanakan dan bersantai persyaratan bagian yang ada “penelitian” dari SCSL saat ini. JRL adalah lisensi yang diciptakan khusus untuk universitas dan peneliti yang ingin menggunakan teknologi Java sebagai subyek pembelajaran dan penelitian. itu ditulis untuk menyederhanakan dan bersantai persyaratan bagian yang ada “penelitian” dari SCSL saat ini. NetBeans NetBeans mengacu pada kedua kerangka platform untuk aplikasi desktop Java, dan sebuah lingkungan pengembangan terpadu (IDE) untuk pengembangan dengan Java, JavaScript, PHP, Python, Ruby, Groovy, C, C + +, Scala, Clojure, dan lain-lain. NetBeans IDE ditulis dalam Java dan berjalan di mana-mana di mana JVM yang diinstal, termasuk Windows, Mac OS, Linux, dan Solaris.
Pengertian Netbeans
NetBeans adalah Integrated Development Environment (IDE) berbasiskan Java dari Sun Microsystems yang berjalan di atas Swing. Swing sebuah teknologi Java untuk pengembangan aplikasi Desktop yang dapat bejalan di berbagai macam platforms seperti Windows, Linux, Mac OS X and Solaris. Suatu IDE adalah lingkup pemrograman yang diintegrasikan kedalam suatu aplikasi perangkat lunak yang menyediakan pembangun Graphic User Interface (GUI), suatu text atau kode editor, suatu compiler atau interpreter dan suatu debugger. Netbeans merupakan software development yang Open Source, dengan kata lain software ini di bawah pengembangan bersama, bebas biaya NetBeans merupakan sebuah proyek kode terbuka yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra. Sun Microsystems mendirikan proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor utama. Saat ini terdapat dua produk : NetBeans IDE dan NetBeans Platform. The NetBeans IDE adalah sebuah lingkungan pengembangan – sebuah kakas untuk pemrogram menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java – namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. Tersedia juga NetBeans Platform sebuah fondasi yang modular dan dapat diperluas yang dapat digunakan sebagai perangkat lunak dasar untuk membuat aplikasi desktop yang besar. Mitra ISV menyediakan plug-in bernilai tambah yang dapat dengan mudah diintegrasikan ke dalam Platform dan dapat juga digunakan untuk membuat kakas dan solusi sendiri. Kedua produk adalah kode terbuka (open source) dan bebas (free) untuk penggunaan komersial dan non komersial. Kode sumber tersedia untuk guna ulang dengan lisensi Common Development and Distribution License (CDDL). 2. Kelebihan dan Kekurangan Netbeans Kelebihan NetBeans GUI Builder : Salah satu yang menjadi kelebihan NetBeans GUI Builder adalah yang telah disebutkan diatas, yaitu GRATIS. Selain itu NetBeans GUI Builder sangat kompetebel dengan Swing karena memang langsung dikembangkan oleh Sun yang notabenenya sebagai pengembang Swing. Kekurangan NetBeans GUI Builder : NetBeans hanya mensupport 1 pengembangan Java GUI, yaitu Swing, yang padahal ada Java GUI yang dikembangkan oleh eclipse yang bernama SWT dan JFace yang sudah cukup populer. NetBeans mempatenkan source untuk Java GUI yang sedang dikerjakan dalam sebuah Generated Code, sehingga programmer tak dapat mengeditnya secara manual.
2.3  Karakteristik Java
Sintaks bahasa pemograman java adalah pengembangan dari bahasa pemograman C/C++, sehingga dengan mereka yang sudah terbiasa dengan C/C++ tidak akan mengalami kesulitan mempelajari bahasa pemograman Java. Java adalah bahasa pemograman yang sederhana dan tangguh.
Berikut ini adalah beberapa karakteristik dari Java sesuai dengan white paper dari SUN :
Berorientasi Object, Java telah menerapkan konsep pemograman berorientasi object yang modern dalam implementasinya Robust, Java mendorong pemograman yang bebas dengan kesalahan yang bersipat strongly typed dan memiliki run time checking. Protable, pemograman Java berjalan pada system operasi apapun yang memiliki Java Virtual Machine.
Multithreding, Java mendukung pemograman multitreding dan terintegrasi secara langsung dalam bahasa Java. Dinamis, program Java dapat melakukan sesuatu tindakan yang ditentukan pada saat eksekusi program dan pada saat kompilasi. Sederhana, Java menggunakan bahasa yang sederhana dan mudah dipelajari.
Terdistribusi, Java didesain untuk berjalan pada lingkungan yang terdistribusi seperti halnya internet. Aman, aplikasi yang dibuat dengan bahasa Java lebih dapat dijamin keamanannya terutama untul aplikasi internet. Netral secara arsitektur, Java tidak terkait pada suatu mesin atau mesin operasi tertentu. 10. Interpreted, aplikasi java bisa dieksekusi pada platform yang berbeda-beda karena melakukan interpretasi pada bytecode. 11. Berkinerja tinggi, byte kode Java telah teroptimasi dengan baik sehingga eksekusi program dapat dilakukan dengan cepat.

BAB III
METODOLOGI PENELITIAN


3.1 Pengolahan Data

Bab ini akan membahas mengenai metode pengolahan data yang akan digunakan. Data karakteristik parkir merupakan dasar untuk mengetahui kebutuhan parkir ( demand ) dan penyediaan parkir (supply) yang telah ada. Data inventarisasi merupakan dasar untuk mengetahui pengaruh kondisi geometric terhadap tingkat pelayanan. Data tersebut juga dapat dijadikan dasar - dasar pemikiran untuk menganalisis dan merencanakan kembali desain perparkiran
3.2 Data Inventarisasi Parkir Data inventarisasi
Pengamatan lokasi parkir, yaitu untuk mengamati posisi pintu masuk dan pintu keluar yang mana lokasi. Data karakteristik parkir ini merupakan dasar untuk menganalisis dan merencanakan pengembangan dari area perparkiran pada masa yang akan datang.
a. Akumulasi parkir, yaitu jumlah kendaraan yang diparkir disuatu tempat pada waktu tertentu.
b. Indeks parkir, yaitu besarnya penggunaan ruang parkir yang dihitung dari jumlah kendaraan yang diparkir dibagi dengan jumlah total ruang parkir. Indeks parkir dapat diperoleh dengan cara membagi jumlah kendaraan yang diparkir dengan jumlah total yang tersedia, kemudian dikalilkan dengan 100 %. Bila indeks parkir lebih besar dari 100 %, artinya area parkir yang terpakai melebihi kapasitas, sedangkan apabila kurang dari 100 % berarti akumulasi parkir pada waktu tersebut belum memenuhi kapasitas yang tersedia. Tujuan perhitungan indeks parkir ini adalah untuk mengetahui prosentase penggunaan ruang parkir pada setiap periode waktu. Durasi parkir, yaitu suatu besaran waktu yang menunjukan lamanya kendaraan parkir pada suatu lokasi parkir. Durasi parkir diperoleh dengan cara mengurangkan jam keluar kendaraan dari lokasi parkir denagn jam masuk kendaraan ke lokasi parkir. d. Angka pergantian parkir, yaitu tingkat pengggunaan ruang parkir yang diperoleh dengan membagi volume parkir denagn jumlah total kapasitas parkir untuk periode tertentu.
Mulai identifikasi masalah studi literatur pengumpulan data, data primer survei inventarisasi parkir survei parkir kordon data sekunder kapasitas parkir lay out parkir analisis pengelolaan data karakteristik parkir : akumulasi parkir volume parkir rata-rata lama parkir kapasitas parkir indeks parkir pergantian parkir kebutuhan ruang parkir antrian selesai.

HASIL DAN PEMBAHASAN

4.1  Membuat Aplikasi Parkir Kendaraan Menggunakan Java Netbeans Dan MySQL –

Cara membuat aplikasi parkir kendaraan di netbeans dengan menggunakan database mysql,. Laporan ini dibuat  semudah mungkin.
1.      Membuat database di Mysql
2.      Membuat form login pada Netbeans
3.      Membuat form menu, cetak, laporan, cari  pada netbeans
4.      Pastikan Xampp sudah terinstal dengan benar, dan jalankan
5.      Masuk ke phpmyadmin 
6.      Buat database nya ‘parkir’ kemudian membuat table ‘Masuk’ dan table ‘User’
      di table masuk buat (no_pol, jenis, tanggal, jam_in, jam_out, biaya)
      di table user buat (user_id, nama, username, password) seperti dibawah ini
      kemudian jika sudah membuat databasenya langsung connect kan dengan sistem yang dibuat
              kemudian masuk ke Netbeans dan buat kerangka form-form yang dibutuhkannya 
                 buat nama aplikasi_parkir dan buat form-formnya seperti dibawah ini dan desain secantik mungkin
              
                        dan untuk menambahkan background gambar harus membuat folder didalam src dan tambahkan nama folder seperti dibawah ini .png
untuk mendesain form-form desain secantik mungkin, ini contoh desain yang kami buat


untuk souurce codenya :

package Aplikasi_Parkir;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;
import java.util.Locale;
import javax.swing.JOptionPane;
import javax.swing.Timer;

/**
 *
 * @author user
 */
public class formmenu extends javax.swing.JFrame {
String ID = UserID.getUserLogin();
java.util.Date tglsekarang = new java.util.Date();
    private SimpleDateFormat smpdtfmt = new SimpleDateFormat("dd MMMMMMMMM yyyy", Locale.getDefault());
    //diatas adalah pengaturan format penulisan, bisa diubah sesuai keinginan.
    private String tanggal = smpdtfmt.format(tglsekarang);
    /**
     * Creates new form formmenu
     */
    public formmenu() {
        initComponents();
       // labeluser.setText(UserID.getUserLogin());
        setLocationRelativeTo(this);
        tgl.setText(tanggal);
        setJam();
    }
public final void setJam(){
ActionListener taskPerformer = new ActionListener() {

            @Override
public void actionPerformed(ActionEvent evt) {
String nol_jam = "", nol_menit = "",nol_detik = "";

java.util.Date dateTime = new java.util.Date();
int nilai_jam = dateTime.getHours();
int nilai_menit = dateTime.getMinutes();
int nilai_detik = dateTime.getSeconds();

if(nilai_jam <= 9) nol_jam= "0";
if(nilai_menit <= 9) nol_menit= "0";
if(nilai_detik <= 9) nol_detik= "0";

String jam = nol_jam + Integer.toString(nilai_jam);
String menit = nol_menit + Integer.toString(nilai_menit);
String detik = nol_detik + Integer.toString(nilai_detik);

lblwktu.setText(jam+":"+menit+":"+detik+"");
}
};
new Timer(1000, taskPerformer).start();
}
    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")

Form Parkir : desain dan source code
package Aplikasi_Parkir;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Locale;
import javax.swing.JOptionPane;
import javax.swing.Timer;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author user
 */
public class formparkir extends javax.swing.JFrame {
java.util.Date tglsekarang = new java.util.Date();
    private SimpleDateFormat smpdtfmt = new SimpleDateFormat("dd/MM/yyyy", Locale.getDefault());
    //diatas adalah pengaturan format penulisan, bisa diubah sesuai keinginan.
    private String tanggal = smpdtfmt.format(tglsekarang);
    private Statement stm;
    private Connection Con;
    
    /**
     * Creates new form formparkir
     */
    public formparkir() {
        initComponents();
        tgl.setText(tanggal);
        setJam();
        tampilkan_data();
        open_db();
        setLocationRelativeTo(this);
        aktif(false);
        setTombol(true);
    }
public final void setJam(){
ActionListener taskPerformer = new ActionListener() {

            @Override
public void actionPerformed(ActionEvent evt) {
String nol_jam = "", nol_menit = "",nol_detik = "";

java.util.Date dateTime = new java.util.Date();
int nilai_jam = dateTime.getHours();
int nilai_menit = dateTime.getMinutes();
int nilai_detik = dateTime.getSeconds();

if(nilai_jam <= 9) nol_jam= "0";
if(nilai_menit <= 9) nol_menit= "0";
if(nilai_detik <= 9) nol_detik= "0";

String jam = nol_jam + Integer.toString(nilai_jam);
String menit = nol_menit + Integer.toString(nilai_menit);
String detik = nol_detik + Integer.toString(nilai_detik);

lblwktu.setText(jam+":"+menit+":"+detik+"");
}
};
new Timer(1000, taskPerformer).start();
}
    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        txtlama = new javax.swing.JTextField();
        jPanel1 = new javax.swing.JPanel();
        jDesktopPane1 = new javax.swing.JDesktopPane();
        jLabel1 = new javax.swing.JLabel();
        jPanel2 = new javax.swing.JPanel();
        jLabel2 = new javax.swing.JLabel();
        tgl = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        lblwktu = new javax.swing.JLabel();
        jPanel3 = new javax.swing.JPanel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        txtnopol = new javax.swing.JTextField();
        cmbjenis = new javax.swing.JComboBox();
        btsimpan = new javax.swing.JButton();
        btbatal = new javax.swing.JButton();
        btkeluar = new javax.swing.JButton();
        bttambah = new javax.swing.JButton();
        btedit = new javax.swing.JButton();
        btcari = new javax.swing.JButton();
        jLabel9 = new javax.swing.JLabel();
        lbltotal = new javax.swing.JLabel();
        txtout = new javax.swing.JTextField();
        jLabel4 = new javax.swing.JLabel();
        txtjamin = new javax.swing.JTextField();
        jLabel10 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();

        txtlama.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtlamaActionPerformed(evt);
            }
        });
        txtlama.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyReleased(java.awt.event.KeyEvent evt) {
                txtlamaKeyReleased(evt);
            }
        });

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        setTitle("Aplikasi Parkir Ver 1.0");
        setResizable(false);
        setUndecorated(true);

        jLabel1.setFont(new java.awt.Font("Tahoma", 1, 24)); // NOI18N
        jLabel1.setForeground(new java.awt.Color(255, 255, 255));
        jLabel1.setText("Parkir Kendaraan");
        jLabel1.setBounds(230, 0, 220, 40);
        jDesktopPane1.add(jLabel1, javax.swing.JLayeredPane.DEFAULT_LAYER);

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jDesktopPane1)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jDesktopPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE)
        );

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 16)); // NOI18N
        jLabel2.setText("Tanggal :");

        tgl.setFont(new java.awt.Font("Tahoma", 1, 16)); // NOI18N
        tgl.setText("jLabel3");

        jLabel3.setFont(new java.awt.Font("Tahoma", 1, 16)); // NOI18N
        jLabel3.setText("Jam :");

        lblwktu.setFont(new java.awt.Font("Tahoma", 1, 16)); // NOI18N
        lblwktu.setText("jLabel4");

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addGap(39, 39, 39)
                .addComponent(jLabel2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(tgl, javax.swing.GroupLayout.PREFERRED_SIZE, 211, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(84, 84, 84)
                .addComponent(jLabel3)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(lblwktu, javax.swing.GroupLayout.PREFERRED_SIZE, 164, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel2)
                    .addComponent(tgl)
                    .addComponent(jLabel3)
                    .addComponent(lblwktu))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        jLabel5.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel5.setText("No Polisi");

        jLabel6.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel6.setText("Jenis Kendaraan");

        cmbjenis.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "== PILIH JENIS KENDARAAN ==", "MOBIL", "MOTOR", " " }));
        cmbjenis.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                cmbjenisActionPerformed(evt);
            }
        });

        btsimpan.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btsimpan.setText("Simpan");
        btsimpan.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btsimpanActionPerformed(evt);
            }
        });

        btbatal.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btbatal.setText("Batal");
        btbatal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btbatalActionPerformed(evt);
            }
        });

        btkeluar.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btkeluar.setText("Keluar");
        btkeluar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btkeluarActionPerformed(evt);
            }
        });

        bttambah.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        bttambah.setText("Tambah");
        bttambah.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bttambahActionPerformed(evt);
            }
        });

        btedit.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btedit.setText("Update");
        btedit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                bteditActionPerformed(evt);
            }
        });

        btcari.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        btcari.setText("Cari");
        btcari.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btcariActionPerformed(evt);
            }
        });

        jLabel9.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel9.setText("Biaya :");

        lbltotal.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N

        jLabel4.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel4.setText("Jam Out");

        txtjamin.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                txtjaminActionPerformed(evt);
            }
        });

        jLabel10.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
        jLabel10.setText("Jam In");

        jLabel8.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel8.setText("Rp.");

        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
        jPanel3.setLayout(jPanel3Layout);
        jPanel3Layout.setHorizontalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addGap(18, 18, 18)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(jLabel4)
                            .addComponent(jLabel10))
                        .addGap(43, 43, 43)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel3Layout.createSequentialGroup()
                                .addComponent(txtnopol, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(btcari, javax.swing.GroupLayout.PREFERRED_SIZE, 78, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addComponent(cmbjenis, javax.swing.GroupLayout.Alignment.LEADING, 0, 229, Short.MAX_VALUE)
                            .addComponent(txtout, javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(txtjamin, javax.swing.GroupLayout.Alignment.LEADING)))
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addComponent(jLabel9)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(lbltotal, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(23, 23, 23)))
                .addGap(33, 33, 33)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addComponent(btsimpan)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btbatal, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(btkeluar, javax.swing.GroupLayout.PREFERRED_SIZE, 79, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addComponent(bttambah, javax.swing.GroupLayout.PREFERRED_SIZE, 124, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btedit, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jPanel3Layout.setVerticalGroup(
            jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel3Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(txtnopol, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btcari)
                    .addComponent(jLabel5))
                .addGap(8, 8, 8)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(cmbjenis)
                    .addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addGap(0, 7, Short.MAX_VALUE)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(txtjamin, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel10))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel4)
                            .addComponent(txtout, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(18, 18, 18)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(lbltotal, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabel9)))
                        .addGap(5, 5, 5))
                    .addGroup(jPanel3Layout.createSequentialGroup()
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(btedit, javax.swing.GroupLayout.DEFAULT_SIZE, 45, Short.MAX_VALUE)
                            .addComponent(bttambah, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addGap(18, 18, 18)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(btsimpan, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(btbatal, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(btkeluar, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE))))
                .addContainerGap())
        );

        jTable1.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jScrollPane1.setViewportView(jTable1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jScrollPane1)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, 35, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 223, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(6, 6, 6))
        );

        pack();
    }// </editor-fold>                        

    private void btsimpanActionPerformed(java.awt.event.ActionEvent evt) {                                         
       // TODO add your handling code here:
String no_pol = txtnopol.getText();
String jenis = (String) cmbjenis.getSelectedItem();
String tanggal = tgl.getText();
String jam_in = lblwktu.getText();
String jam_out = txtout.getText();
String biaya = lbltotal.getText();
{
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection koneksi = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost:3306/parkir", "root", "");
Statement statement = (Statement) koneksi.createStatement();
String sql="insert into masuk values('"+no_pol+"','"+jenis+"','"+tanggal+"','"+jam_in+"','"+jam_out+"','"+biaya+"')";
int executeUpdate = statement.executeUpdate(sql);
statement.close();
aktif(false);
setTombol(true);
JOptionPane.showMessageDialog(null, "Data berhasil dimasukkan..","Insert Data",JOptionPane.INFORMATION_MESSAGE);
txtnopol.setText("");
cmbjenis.setSelectedItem(0);
txtjamin.setText("");
txtout.setText("");
koneksi.close();
}
catch (     ClassNotFoundException | InstantiationException | IllegalAccessException | SQLException | HeadlessException e)
{
JOptionPane.showMessageDialog(null, "Eror: "+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}
finally {
tampilkan_data();
new formcetakparkir().setVisible(true);
}
    }
    }                                        

    private void bteditActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
        String no_pol = txtnopol.getText();
String jenis = (String) cmbjenis.getSelectedItem();
String tanggal = tgl.getText();
String jam_in = txtjamin.getText();
String jam_out = txtout.getText();
String biaya = lbltotal.getText();
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection koneksi = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost:3306/parkir", "root", "");
Statement statement = (Statement) koneksi.createStatement();
String sql="UPDATE masuk SET JENIS='"+jenis+"',TANGGAL='"+tanggal+"',JAM_IN='"+jam_in+"',JAM_OUT='"+jam_out+"',BIAYA='"+biaya+"' WHERE no_pol LIKE '"+no_pol+"'";
statement.executeUpdate(sql);
statement.close();
JOptionPane.showMessageDialog(null, "Data berhasil diedit..","Insert Data",JOptionPane.INFORMATION_MESSAGE);
koneksi.close();
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException | SQLException | HeadlessException e) {
JOptionPane.showMessageDialog(null, "Eror: "+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
}finally{
tampilkan_data();
}
    }                                      

    private void bttambahActionPerformed(java.awt.event.ActionEvent evt) {                                         
aktif(true);
setTombol(false);
txtjamin.setText(lblwktu.getText());       // TODO add your handling code here:
    }                                        

    private void btcariActionPerformed(java.awt.event.ActionEvent evt) {                                       
 // TODO add your handling code here:
          String no_pol = txtnopol.getText();
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection koneksi = (Connection) DriverManager.getConnection(
"jdbc:mysql://localhost:3306/parkir", "root", "");
Statement statement = (Statement) koneksi.createStatement();
String sql="SELECT * FROM masuk WHERE no_pol like '"+no_pol+"'";
 ResultSet rs = statement.executeQuery(sql);
if (rs.next())
{
aktif(true);
setTombol(false);
cmbjenis.setSelectedItem(rs.getString(2));
txtjamin.setText(rs.getString(4));
JOptionPane.showMessageDialog(null, "Data ditemukan","Insert Data",JOptionPane.INFORMATION_MESSAGE);
txtout.setText(lblwktu.getText());
}
else
{
JOptionPane.showMessageDialog(null, "Data tidak ditemukan ","Insert Data",JOptionPane.INFORMATION_MESSAGE);
}
statement.close();
koneksi.close();
}
catch ( ClassNotFoundException | InstantiationException | IllegalAccessException | SQLException | HeadlessException e)
{
JOptionPane.showMessageDialog(null, "Eror:"+e,"Gagal",JOptionPane.WARNING_MESSAGE);
//System.err.println("Exception: "+e.getMessage());
    }                                      

    private void btbatalActionPerformed(java.awt.event.ActionEvent evt) {                                        
txtnopol.setText("");
cmbjenis.setSelectedItem("== Pilih Jenis Kendaraan");
txtjamin.setText("");
txtout.setText("");
lbltotal.setText("");
aktif(false);
setTombol(true);
// TODO add your handling code here:
    }                                       

    private void btkeluarActionPerformed(java.awt.event.ActionEvent evt) {                                         
dispose();        // TODO add your handling code here:
    }                                        

    private void txtjaminActionPerformed(java.awt.event.ActionEvent evt) {                                         
     // TODO add your handling code here:
    }                                        

    private void txtlamaActionPerformed(java.awt.event.ActionEvent evt) {                                        


        
    }                                       

    private void txtlamaKeyReleased(java.awt.event.KeyEvent evt) {                                    
        // TODO add your handling code here:
        if (evt.getKeyCode() == 10){
     lbltotal.requestFocus();}
    }                                   

    private void cmbjenisActionPerformed(java.awt.event.ActionEvent evt) {                                         
         if(cmbjenis.getSelectedItem().equals("MOBIL")){  
      lbltotal.setText("2000");  
  }  
  else if(cmbjenis.getSelectedItem().equals("MOTOR")){  
      lbltotal.setText("1000");  
  }
       else{lbltotal.setText("GRATIS");  
  }// TODO add your handling code here:
       

    }                                        

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(formparkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(formparkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(formparkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(formparkir.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new formparkir().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                     
    private javax.swing.JButton btbatal;
    private javax.swing.JButton btcari;
    private javax.swing.JButton btedit;
    private javax.swing.JButton btkeluar;
    private javax.swing.JButton btsimpan;
    private javax.swing.JButton bttambah;
    private javax.swing.JComboBox cmbjenis;
    private javax.swing.JDesktopPane jDesktopPane1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTable1;
    private javax.swing.JLabel lbltotal;
    private javax.swing.JLabel lblwktu;
    private javax.swing.JLabel tgl;
    private javax.swing.JTextField txtjamin;
    private javax.swing.JTextField txtlama;
    private javax.swing.JTextField txtnopol;
    private javax.swing.JTextField txtout;
    // End of variables declaration                   

    private void tampilkan_data() {
        DefaultTableModel tabelparkir = new DefaultTableModel();
        tabelparkir.addColumn("NO_POL");
        tabelparkir.addColumn("JENIS");
        tabelparkir.addColumn("TANGGAL");
        tabelparkir.addColumn("JAM_IN");
        tabelparkir.addColumn("JAM_OUT");
        tabelparkir.addColumn("BIAYA");
        try {
            open_db();
             String sql = "select * from masuk";
            stm = (Statement) Con.createStatement();
            ResultSet rs=stm.executeQuery(sql);
            while (rs.next()) {
                Object[] o =new Object[7];
                o[0] = rs.getString("NO_POL");
                o[1] = rs.getString("JENIS");
                o[2] = rs.getString("TANGGAL");
                o[3] = rs.getString("JAM_IN");
                o[4] = rs.getString("JAM_OUT");
                o[5] = rs.getString("BIAYA");
                tabelparkir.addRow(o);
                
            }
           jTable1.setModel(tabelparkir);
        } catch (Exception e) {
        }
    }

    private void open_db() {
         try {
            Class.forName("com.mysql.jdbc.Driver");
Con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/parkir","root","");
            stm = (Statement) Con.createStatement();

        }catch (Exception e){
            JOptionPane.showMessageDialog(null,"Koneksi gagal");
            System.out.println(e.getMessage());
        }
    }

    private void aktif(boolean x) { 
    cmbjenis.setEnabled(x);
    txtout.setEditable(x);
    txtjamin.setEditable(x);
    txtnopol.requestFocus();
    }

    private void setTombol(boolean t) {
    bttambah.setEnabled(t);
     btsimpan.setEnabled(!t);
     btedit.setEnabled(!t);
     btbatal.setEnabled(!t);
     btcari.setEnabled(t);
    }   
}

Form Login : Desain dan Source Code :
public class formlogin extends javax.swing.JFrame {

    private static class Animation {

        public Animation() {
            
        }
    }
    private Controller controller;
    private Animation Animation;

    private static class Controller {

        public Controller() {
        }
    }
    private Connection Con;
    private Statement stm;

    /**
     * Creates new form formlogin
     */
    public formlogin() {
        initComponents();
        open_db();
    setLocationRelativeTo(this);
    initHelper();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")

Cari Parkir: Desain Dan Source Code 
public class cari_parkir extends javax.swing.JFrame {
    private Connection Con;
    private Statement stm;

    /**
     * Creates new form cari_parkir
     */
    public cari_parkir() {
        initComponents();
        tampilkan_data();
        setLocationRelativeTo(this);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jDesktopPane1 = new javax.swing.JDesktopPane();
        jLabel2 = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();
        jLabel1 = new javax.swing.JLabel();
        txtno = new javax.swing.JTextField();
        btcari = new javax.swing.JButton();
        jDesktopPane2 = new javax.swing.JDesktopPane();
        btbatal = new javax.swing.JButton();
        btkeluar = new javax.swing.JButton();
        cmbcari = new javax.swing.JComboBox();

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
        setTitle("Form Pencarian Data");
        setUndecorated(true);

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
        jLabel2.setForeground(new java.awt.Color(255, 255, 255));
        jLabel2.setText("Pencarian Data");
        jLabel2.setBounds(250, 10, 140, 30);
        jDesktopPane1.add(jLabel2, javax.swing.JLayeredPane.DEFAULT_LAYER);

        jTable1.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jScrollPane1.setViewportView(jTable1);

        jLabel1.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        jLabel1.setText("Cari Berdasar ");

        txtno.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyPressed(java.awt.event.KeyEvent evt) {
                txtnoKeyPressed(evt);
            }
            public void keyTyped(java.awt.event.KeyEvent evt) {
                txtnoKeyTyped(evt);
            }
        });

        btcari.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btcari.setText("Cari");
        btcari.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btcariActionPerformed(evt);
            }
        });

        btbatal.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btbatal.setText("Refresh");
        btbatal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btbatalActionPerformed(evt);
            }
        });
        btbatal.setBounds(230, 10, 80, 30);
        jDesktopPane2.add(btbatal, javax.swing.JLayeredPane.DEFAULT_LAYER);

        btkeluar.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
        btkeluar.setText("Keluar");
        btkeluar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btkeluarActionPerformed(evt);
            }
        });
        btkeluar.setBounds(340, 10, 80, 30);
        jDesktopPane2.add(btkeluar, javax.swing.JLayeredPane.DEFAULT_LAYER);

        cmbcari.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "NO_POL", "JENIS", "TANGGAL" }));
        cmbcari.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                cmbcariActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jDesktopPane1)
            .addComponent(jScrollPane1)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(cmbcari, javax.swing.GroupLayout.PREFERRED_SIZE, 126, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(txtno, javax.swing.GroupLayout.PREFERRED_SIZE, 227, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(btcari, javax.swing.GroupLayout.PREFERRED_SIZE, 74, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(80, Short.MAX_VALUE))
            .addComponent(jDesktopPane2)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jDesktopPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 47, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(txtno, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(btcari)
                    .addComponent(cmbcari, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 267, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(jDesktopPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 46, javax.swing.GroupLayout.PREFERRED_SIZE))
        );

        pack();
    }// </editor-fold>                        

    private void btcariActionPerformed(java.awt.event.ActionEvent evt) {                                       
        // TODO add your handling code here:
      /**  DefaultTableModel tabelcari = new DefaultTableModel();
        tabelcari.addColumn("NO_POL");
        tabelcari.addColumn("JENIS");
        tabelcari.addColumn("TANGGAL");
        tabelcari.addColumn("JAM_IN");
        tabelcari.addColumn("JAM_OUT");
        tabelcari.addColumn("BIAYA");
        String no_pol = txtno.getText();
        try {
            open_db();
             String sql = "select * from masuk WHERE no_pol like '"+no_pol+"'";
            stm = (Statement) Con.createStatement();
            ResultSet rs=stm.executeQuery(sql);
            while (rs.next()) {
                Object[] o =new Object[6];
                o[0] = rs.getString("NO_POL");
                o[1] = rs.getString("JENIS");
                o[2] = rs.getString("TANGGAL");
                o[3] = rs.getString("JAM_IN");
                o[4] = rs.getString("JAM_OUT");
                o[5] = rs.getString("BIAYA");
                tabelcari.addRow(o);
                
            }
           jTable1.setModel(tabelcari);
        } catch (Exception e) {
        }**/
    }                                      

Form CetakParkir : Desain Dan Source Code
public class formcetakparkir extends javax.swing.JFrame {

    /**
     * Creates new form formcetakparkir
     */
    public formcetakparkir() {
        initComponents();
        setLocationRelativeTo(this);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")

Form Laporan : Desain dan Source Code
public class formlaporan extends javax.swing.JFrame {
    

    /**
     * Creates new form formlaporan
     */
    public formlaporan() {
        initComponents();
        setLocationRelativeTo(this);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")


kurang lebih ketika di run sistemnya akan muncul seperti ini :







BAB VI
PENUTUP

Kesimpulan
Setelah dilakukan serangkaian pengujian dan analisa terhadap aplikasi yang dibangun maka dapat diambil kesimpulan sebagai berikut :
·         Dengan diterapkannya aplikasi pelayanan parkir maka dapat mengelola data kendaraan yang terparkir, sehingga dapat mengontrol data kendaraan yang masuk dan keluar.
·         Dengan diterapkannya aplikasi pelayanan parkir maka dapat mengetahui tanggal dan jam kendaraan yang terparkir.
Saran
Dari beberapa kesimpulan yang diambil diatas, dapat dikemukakan saran-saran yang berguna untuk perbaikan dari aplikasi yang kami bangun dalam project ini :
·         Perlunya pengembangan sistem parkir yang lebih baik dengan menggunakan kamera cctv (webcam), sehingga dapat menjadi sebuah sistem informasi yang lebih baik dari sisi keamanan yang dapat mengontrol di setiap pelataran parkir.
·         Perlunya pengembangan sistem parkir yang lebih baik dengan menggunakan palang pintu (Barier Gate), pada setiap pintu masuk dan pintu keluar.









DAFTAR PUSTAKA

Artikel “Visual Basic” pada  http://id.wikipedia.org, 2009.
Artikel dan contoh source code pada  http://www.planet-source-code.com,
2009 www.belajah.blogspot.com. http://antho-connenk.blogspot.co.id/2012/08/makalah-visual-basic.html.



Disusun oleh :

Ranti Kiranti (A3.1600028)
Rizky Surya Nurmansyah (A3.1600032)
Widya Noer Trisnika (A3.1600041)
Neneng Rima Nurmalita (A3.1600046)




SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
(STMIK) SUMEDANG
2019












0 Komentar untuk "SISTEM PARKIR KENDARAAN"

Silakan tinggalkan komentar anda. DILARANG KERAS menyimpan link blog/web pada komentar dengan tujuan backlink, Spam.

 
Copyright © 2014 Tutorial Kampus - All Rights Reserved
Template By. Catatan Info