Source
Code style.css
@import 'https://fonts.googleapis.com/css?family=Montserrat:400,700|Roboto:300i,300,400,500';
* {
box-sizing: border-box;
}
body{
background: #eee;
font-family: arial, "roboto";
margin: 0;
padding: 0px;
font-size: 14px;
font-weight: 300;
position: relative;
}
header {
padding: 50px;
text-align: center;
background: #0f3057;
color: white;
border-radius: 5px 5px 0px 0px;
}
header h1 {
font-size: 40px;
margin: 5px;
}
header p {
margin: 0px;
}
.container {
width: 1020px;
padding-right: 15px;
padding-left: 15px;
margin: 20px auto;
}
.topnav {
overflow: hidden;
background-color: #00587a;
border-radius: 0px 0px 5px 5px;
}
.topnav a {
float: left;
display: block;
color: #f2f2f2;
text-align: center;
padding: 14px 16px;
text-decoration: none;
font-size: 17px;
}
.active {
background-color: #008891;
color: white;
}
.topnav .icon {
display: none;
}
.dropdown {
float: left;
overflow: hidden;
}
.dropdown .dropbtn {
font-size: 17px;
border: none;
outline: none;
color: white;
padding: 14px 16px;
background-color: inherit;
font-family: inherit;
margin: 0;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.dropdown-content a {
float: none;
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
text-align: left;
}
.topnav a:hover, .dropdown:hover .dropbtn {
background-color: #41aea9;
color: white;
}
.dropdown-content a:hover {
background-color: #ddd;
color: black;
}
.dropdown:hover .dropdown-content {
display: block;
}
#content {
float: left;
width: 70%;
background-color: white;
padding: 20px;
margin-top: 20px;
margin-bottom: 20px;
border-radius: 5px;
}
#content img {
background-color: #f8efd4;
width: 100%;
padding: 5px;
border-radius: 5px;
}
#content h2 {
margin: 5px 0px;
}
#content p {
margin: 0px;
}
#sub {
width: 50%;
text-align: center;
}
form {
text-align: left;
}
article {
background-color: white;
padding: 20px;
margin-top: 20px;
border-radius: 5px;
}
article h5 {
color: gray;
text-align: right;
font-size: 12px;
margin: 0px 0px 10px 0px;
display: block;
}
article a {
text-decoration: none;
font-style: italic;
color: #d7385e;
}
aside {
float: right;
width: 29%;
margin-bottom: 20px;
}
.side {
background-color: white;
padding: 10px;
margin-top: 20px;
border-radius: 5px;
}
.side h2 {
color: white;
margin: 0px;
background-color: #0d7377;
padding: 5px;
font-size: 20px;
border-radius: 2px;
margin-bottom: 5px;
text-align: center;
}
.side img {
width: 100%;
border-radius: 5px;
}
.sidenav {
width: 100%;
position: relative;
background-color: #00587a;
overflow-x: hidden;
border-radius: 2px;
}
.sidenav a, .dropdown-btn {
padding: 6px 8px 6px 8px;
text-decoration: none;
font-size: 17px;
color: white;
display: block;
background: none;
width: 100%;
text-align: left;
cursor: pointer;
outline: none;
border: 1px solid;
}
.sidenav a:hover, .dropdown-btn:hover {
color: #f1f1f1;
}
.main {
margin-left: 200px;
font-size: 20px;
padding: 0px 10px;
}
.sidenav .active {
background-color: #008891;
color: white;
}
.dropdown-container {
display: none;
background-color: #8bcdcd;
border: 2px;
}
.sidenav .fa-caret-down {
float: right;
padding-right: 8px;
}
footer {
position: relative;
overflow: hidden;
width: 100%;
padding: 10px;
text-align: center;
background: #0f3057;
color: white;
border-radius: 5px;
}
footer p {
margin: 0px;
}
input[type=text], input[type=number], input[type=tel], input[type=password], input[type=date], select, textarea {
width: 100%;
padding: 12px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
input[type=submit] {
width: 100%;
background-color: #2c82c9;
color: white;
padding: 10px;
margin: 8px 0;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 18px;
font-weight: bold;
}
input[type=submit]:hover {
background-color: #2574a9;
}
#login {border: 3px solid #f1f1f1;}
.logincontainer button {
background-color: #2c82c9;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
}
.logincontainer button:hover {
opacity: 0.8;
}
#cancelbtn {
width: auto;
padding: 10px 18px;
background-color: #f44336;
}
.logincontainer {
padding: 16px;
}
#simpan, #hapus, #lihat, #sebelum, #pilih, #sesudah, #tampil, #sblm, #plh, #ssdh {
width: 20%;
margin: 5px;
}
#mulai, #jml {
width: 10%;
margin: 5px;
}
.tbl {
margin: 10px;
}
td {
padding: 5px;
}
table#t01 tr:nth-child(even) {
background-color: #eee;
}
table#t01 tr:nth-child(odd) {
background-color:#fff;
}
table#t01 th{
background-color: #0d7377;
color: white;
padding: 5px;
}
/* Responsive layout */
@media screen and (max-device-width: 800px) {
body {
padding: 0px;
}
#content, aside {
width: 100%;
}
}
@media screen and (max-width: 600px) {
.topnav a:not(:first-child), .dropdown .dropbtn {
display: none;
}
.topnav a.icon {
float: right;
display: block;
}
}
@media screen and (max-width: 600px) {
.topnav.responsive {position: relative;}
.topnav.responsive .icon {
position: absolute;
right: 0;
top: 0;
}
.topnav.responsive a {
float: none;
display: block;
text-align: left;
}
.topnav.responsive .dropdown {
float: none;
}
.topnav.responsive .dropdown-content {
position: relative;
}
.topnav.responsive .dropdown .dropbtn {
display: block;
width: 100%;
text-align: left;
}
#simpan, #hapus, #lihat, #sebelum, #pilih, #sesudah, #tampil, #sblm, #plh, #ssdh {
width: 100%;
margin: 0px 0px 5px;
}
#mulai, #jml {
width: 30%;
}
}
@media screen and (max-width:1249px) {
.container {
width:1170px
}
}
@media screen and (max-width:1199px) {
.container {
width:970px
}
}
@media screen and (max-width:991px) {
.container {
width:100%;
padding-left:10px;
padding-right:10px
}
}
@media screen and (max-height: 450px) {
.sidenav {padding-top: 15px;}
.sidenav a {font-size: 18px;}
}
@media screen and (max-width: 300px) {
span.psw {
display: block;
float: none;
}
.cancelbtn {
width: 100%;
}
}
Membuat menu Master Data, Transaksi, Laporan
Source
Code Index.jsp
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>JasaFikri</title>
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="script.js"></script>
</head>
<body>
<div class="container">
<header>
<h1>JasaFikri</h1>
<p>Menyediakan sewa mobil dengan harga termurah dan keamanan terjamin.<br>Driver profesional handal dan berpengalaman.</p>
</header>
<%
String topMenu = "<a href=. class='active'>Home</a>"
+ "<a href=LoginController>Login</a>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Master Data "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=DataMobilController>Data Mobil</a>"
+ "<a href=DataCustomerController>Data Customer</a>"
+ "<a href=DataUserController>Data User</a>"
+ "</div>"
+ "</div>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Data Transaksi "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=RentalMobilController>Rental Mobil</a>"
+ "</div>"
+ "</div>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Laporan "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=LaporanRentalMobilController>Rental Mobil</a>"
+ "<a href=StokMobilController>Stok Mobil</a>"
+ "</div>"
+ "</div>"
+ "<a href=About>About</a>"
+ "<a href='javascript:void(0);' style='font-size:15px;' class='icon' onclick='myFunction()'>☰</a>";
String sideMenu = "<h2>Menu</h2>"
+ "<div class='sidenav'>"
+ "<a href=LoginController>Login</a>"
+ "<button class='dropdown-btn'>Master Data "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=DataMobilController>Data Mobil</a>"
+ "<a href=DataCustomerController>Data Customer</a>"
+ "<a href=DataUserController>Data User</a>"
+ "</div>"
+ "<button class='dropdown-btn'>Transaksi "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=RentalMobilController>Rental Mobil</a>"
+ "</div>"
+ "<button class='dropdown-btn'>Laporan "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=LaporanRentalMobilController>Rental Mobil</a>"
+ "<a href=StokMobilController>Stok Mobil</a>"
+ "</div>"
+ "</div>";
String konten = "<h2>Selamat Datang</h2>";
String paragraf = "<p>Kami melayani dengan profesional demi kenyamanan anda. Hubungi kami sekarang juga. Kepuasan anda adalah prioritas kami. Mobil Terbaru dan Bersih.</p>";
String userName = "";
if (!session.isNew()) {
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
konten = "<h2>Selamat Datang " + userName + "</h2>";
try {
sideMenu = session.getAttribute("sideMenu").toString();
} catch (Exception ex) {
}
try {
topMenu = session.getAttribute("topMenu").toString();
} catch (Exception ex) {
}
}
}
%>
<div class="topnav" id="myTopnav">
<%=topMenu%>
</div>
<main>
<div id="content">
<%=konten%>
<%=paragraf%>
</div>
<aside>
<div class="side">
<%=sideMenu%>
</div>
</aside>
</main>
<footer>
<p>Copyright © 2020 JasaFikri<br>Created by Akhmad Fikri Septiawan</p>
</footer>
</div>
<script type="text/javascript">
var dropdown = document.getElementsByClassName("dropdown-btn");
var i;
for (i = 0; i < dropdown.length; i++) {
dropdown[i].addEventListener("click", function () {
this.classList.toggle("active");
var dropdownContent = this.nextElementSibling;
if (dropdownContent.style.display === "block") {
dropdownContent.style.display = "none";
} else {
dropdownContent.style.display = "block";
}
});
}
</script>
</body>
</html>
Membuat Fasilitas Login
Source
Code LoginController.java
HttpSession session = request.getSession(true);
String userName = "";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (((userName == null) || userName.equals(""))) {
String username = request.getParameter("username");
String password = request.getParameter("password");
String konten = "<form id='login' action=LoginController method=post>"
+ "<div class='logincontainer'>"
+ "<label for='username'><b>Username</b></label>"
+ "<input class='inputlogin' type='text' placeholder='Enter Username' name='username' required>"
+ "<label for='password'><b>Password</b></label>"
+ "<input type='password' placeholder='Enter Password' name='password' required>"
+ "<input type='submit'>"
+ "</div>"
+ "<div class='logincontainer' style='background-color:#f1f1f1'>"
+ "<button type='button' id='cancelbtn' onclick=document.location='.'>Cancel</button>"
+ "</div>"
+ "</form>";
String pesan = "";
if (username == null) {
} else if (username.equals("")) {
pesan = "<br><br><font style='color:red'>Username harus diisi</font>";
} else {
DataUser dataUser = new DataUser();
Enkripsi enkripsi = new Enkripsi();
pesan = "<br><br><font style='color:red'>Username atau password salah</font>";
if (dataUser.baca(username)) {
String passwordEncrypted = "";
try {
passwordEncrypted = enkripsi.hashMD5(password);
} catch (Exception ex) {
}
if (passwordEncrypted.equals(dataUser.getPassword())) {
pesan = "";
session.setAttribute("userName", dataUser.getUsername().equals("") ? "No Name" : dataUser.getUsername());
String topMenu = "<a href=. class='active'>Home</a>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Master Data "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=DataMobilController>Data Mobil</a>"
+ "<a href=DataCustomerController>Data Customer</a>"
+ "<a href=DataUserController>Data User</a>"
+ "</div>"
+ "</div>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Data Transaksi "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=RentalMobilController>Rental Mobil</a>"
+ "</div>"
+ "</div>"
+ "<div class='dropdown'>"
+ "<button class='dropbtn'>Laporan "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-content'>"
+ "<a href=LaporanRentalMobilController>Rental Mobil</a>"
+ "<a href=StokMobilController>Stok Mobil</a>"
+ "</div>"
+ "</div>"
+ "<a href=About>About</a>"
+ "<a href=LogoutController>Logout</a>"
+ "<a href='javascript:void(0);' style='font-size:15px;' class='icon' onclick='myFunction()'>☰</a>";
session.setAttribute("topMenu", topMenu);
String sideMenu = "<h2>Menu</h2>"
+ "<div class='sidenav'>"
+ "<button class='dropdown-btn'>Master Data "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=DataMobilController>Data Mobil</a>"
+ "<a href=DataCustomerController>Data Customer</a>"
+ "<a href=DataUserController>Data User</a>"
+ "</div>"
+ "<button class='dropdown-btn'>Transaksi "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=RentalMobilController>Rental Mobil</a>"
+ "</div>"
+ "<button class='dropdown-btn'>Laporan "
+ "<i class='fa fa-caret-down'></i>"
+ "</button>"
+ "<div class='dropdown-container'>"
+ "<a href=LaporanRentalMobilController>Rental Mobil</a>"
+ "<a href=StokMobilController>Stok Mobil</a>"
+ "</div>"
+ "<a href=LogoutController>Logout</a>"
+ "</div>";
session.setAttribute("sideMenu", sideMenu);
session.setMaxInactiveInterval(15 * 60); // 15 x 60 detik = 15 menit
konten = "";
}
} else if (!dataUser.getPesan().substring(0, 3).equals("username")) {
pesan = "<br><br><font style='color:red'>" + dataUser.getPesan().replace("n", "<br>") + "</font>";
}
}
new MainForm().tampilkan(konten + pesan, request, response);
} else {
response.sendRedirect(".");
}
Output:
Membuat Form untuk Master Data
Data
Mobil
Source
Code DataMobilController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession(true);
DataMobil dataMobil = new DataMobil();
String userName = "";
String tombol = request.getParameter("tombol");
String kodeMobil = request.getParameter("kodeMobil");
String namaMobil = request.getParameter("namaMobil");
String hargaPerHari = request.getParameter("hargaPerHari");
String stok = request.getParameter("stok");
String transmisi = request.getParameter("transmisi");
String kapasitas = request.getParameter("kapasitas");
String mulaiParameter = request.getParameter("mulai");
String jumlahParameter = request.getParameter("jumlah");
String kodeMobilDipilih = request.getParameter("kodeMobilDipilih");
if (tombol == null) {
tombol = "";
}
if (kodeMobil == null) {
kodeMobil = "";
}
if (namaMobil == null) {
namaMobil = "";
}
if (hargaPerHari == null) {
hargaPerHari = "";
}
if (stok == null) {
stok = "";
}
if (transmisi == null) {
transmisi = "Otomatis";
}
if (kapasitas == null) {
kapasitas = "";
}
if (kodeMobilDipilih == null) {
kodeMobilDipilih = "";
}
int mulai = 0, jumlah = 10;
try {
mulai = Integer.parseInt(mulaiParameter);
} catch (NumberFormatException ex) {
}
try {
jumlah = Integer.parseInt(jumlahParameter);
} catch (NumberFormatException ex) {
}
String keterangan = "<br>";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
if (tombol.equals("Simpan")) {
if (!kodeMobil.equals("")) {
dataMobil.setKodeMobil(kodeMobil);
dataMobil.setNamaMobil(namaMobil);
dataMobil.setHargaPerHari(Long.parseLong(hargaPerHari));
dataMobil.setStokMobil(Integer.parseInt(stok));
dataMobil.setTransmisi(transmisi);
dataMobil.setKapasitas(Integer.parseInt(kapasitas));
if (dataMobil.simpan()) {
kodeMobil = "";
namaMobil = "";
hargaPerHari = "0";
stok = "0";
kapasitas = "0";
keterangan = "Sudah tersimpan";
} else {
keterangan = "Gagal menyimpan:n" + dataMobil.getPesan();
}
} else {
keterangan = "Gagal menyimpan, kode mobil tidak boleh kosong";
}
} else if (tombol.equals("Hapus")) {
if (!kodeMobil.equals("")) {
if (dataMobil.hapus(kodeMobil)) {
kodeMobil = "";
namaMobil = "";
hargaPerHari = "0";
stok = "0";
kapasitas = "0";
keterangan = "Data sudah dihapus";
} else {
keterangan = "Kode mobil tersebut tidak ada, atau ada kesalahan:n" + dataMobil.getPesan();
}
} else {
keterangan = "Kode mobil masih kosong";
}
} else if (tombol.equals("Cari")) {
if (!kodeMobil.equals("")) {
if (dataMobil.baca(kodeMobil)) {
kodeMobil = dataMobil.getKodeMobil();
namaMobil = dataMobil.getNamaMobil();
hargaPerHari = Long.toString(dataMobil.getHargaPerHari());
stok = Integer.toString(dataMobil.getStokMobil());
transmisi = dataMobil.getTransmisi();
kapasitas = Integer.toString(dataMobil.getKapasitas());
keterangan = "<br>";
} else {
keterangan = "Kode mobil tersebut tidak ada";
}
} else {
keterangan = "Kode mobil masih kosong";
}
} else if (tombol.equals("Pilih")) {
kodeMobil = kodeMobilDipilih;
namaMobil = "";
stok = "0";
hargaPerHari = "0";
if (!kodeMobilDipilih.equals("")) {
if (dataMobil.baca(kodeMobilDipilih)) {
kodeMobil = dataMobil.getKodeMobil();
namaMobil = dataMobil.getNamaMobil();
hargaPerHari = Long.toString(dataMobil.getHargaPerHari());
stok = Integer.toString(dataMobil.getStokMobil());
transmisi = dataMobil.getTransmisi();
kapasitas = Integer.toString(dataMobil.getKapasitas());
keterangan = "<br>";
} else {
keterangan = "Kode mobil tersebut tidak ada";
}
} else {
keterangan = "Tidak ada yang dipilih";
}
}
String kontenLihat = "";
if (tombol.equals("Lihat") || tombol.equals("Sebelum") || tombol.equals("Berikutnya") || tombol.equals("Tampilkan")) {
kontenLihat += "<center>";
kontenLihat += "<div class='tbl'>";
kontenLihat += "<table>";
if (tombol.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombol.equals("Berikutnya")) {
mulai += jumlah;
}
Object[][] listDataMobil = null;
if (dataMobil.bacaData(mulai, jumlah)) {
listDataMobil = dataMobil.getList();
} else {
keterangan = dataMobil.getPesan();
}
if (listDataMobil != null) {
for (int i = 0; i < listDataMobil.length; i++) {
kontenLihat += "<tr>";
kontenLihat += "<td>";
if (i == 0) {
kontenLihat += "<input type='radio' checked name='kodeMobilDipilih' value='" + listDataMobil[i][0].toString() + "'>";
} else {
kontenLihat += "<input type='radio' name='kodeMobilDipilih' value='" + listDataMobil[i][0].toString() + "'>";
}
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataMobil[i][0].toString();
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataMobil[i][1].toString();
kontenLihat += "</td>";
kontenLihat += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "</div>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "<input id='sebelum' type='submit' name='tombol' value='Sebelum'>";
kontenLihat += "<input id='pilih' type='submit' name='tombol' value='Pilih'>";
kontenLihat += "<input id='sesudah' type='submit' name='tombol' value='Berikutnya'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombol' value='Tampilkan'>";
kontenLihat += "</center>";
}
String konten = "<center><h1>Master Data Mobil</h1></center>";
konten += "<form action='DataMobilController' method='post'>";
konten += "<label for='kodeMobil'><b>Kode Mobil</b></label><br>";
konten += "<input type='text' value='" + kodeMobil + "' name='kodeMobil' maxlength='15' size='15' placeholder='Masukkan Kode Mobil ..' style='width: 70%'><input type='submit' name='tombol' value='Cari' style='width: 28%; float: right'>";
konten += "<label for='namaMobil'><b>Nama Mobil</b></label>";
konten += "<input type='text' value='" + namaMobil + "' name='namaMobil' maxlength='30' size='30' placeholder='Masukkan Nama Mobil ..'>";
konten += "<label for='hargaPerHari'><b>Harga/hari</b></label>";
konten += "<input type='number' value='" + hargaPerHari + "' name='hargaPerHari' placeholder='Masukkan Harga per Hari ..'>";
konten += "<label for='stok'><b>Stok Mobil</b></label>";
konten += "<input type='number' name='stok' value='" + stok + "' placeholder='Masukkan Stok Mobil ..'>";
konten += "<label for='transmisi'><b>Transmisi</b></label>";
konten += "<select name='transmisi'>";
if ((transmisi.equalsIgnoreCase("Otomatis")) || transmisi.length() == 0) {
konten += "<option selected value='Otomatis'>Otomatis</option>";
} else {
konten += "<option value='Otomatis'>Otomatis</option>";
}
if (transmisi.equalsIgnoreCase("Manual")) {
konten += "<option selected value='Manual'>Manual</option>";
} else {
konten += "<option value='Manual'>Manual</option>";
}
konten += "</select>";
konten += "<label for='kapasitas'><b>Kapasitas</b></label>";
konten += "<input type='number' name='kapasitas' value='" + kapasitas + "' placeholder='Masukkan Kapasitas ..'>";
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
konten += "<center><input id='simpan' type='submit' name='tombol' value='Simpan'>";
konten += "<input id='hapus' type='submit' name='tombol' value='Hapus'>";
konten += "<input id='lihat' type='submit' name='tombol' value='Lihat'></center>";
konten += kontenLihat;
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
}
}
Output:
Data
Customer
Source Code DataCustomerController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession(true);
DataCustomer dataCustomer = new DataCustomer();
String userName = "";
String tombol = request.getParameter("tombol");
String namaCustomer = request.getParameter("nama");
String alamatCustomer = request.getParameter("alamat");
String telpon = request.getParameter("telepon");
String mulaiParameter = request.getParameter("mulai");
String jumlahParameter = request.getParameter("jumlah");
String namaCustomerDipilih = request.getParameter("namaCustomerDipilih");
if (tombol == null) {
tombol = "";
}
if (namaCustomer == null) {
namaCustomer = "";
}
if (alamatCustomer == null) {
alamatCustomer = "";
}
if (telpon == null) {
telpon = "";
}
if (namaCustomerDipilih == null) {
namaCustomerDipilih = "";
}
int mulai = 0, jumlah = 10;
try {
mulai = Integer.parseInt(mulaiParameter);
} catch (NumberFormatException ex) {
}
try {
jumlah = Integer.parseInt(jumlahParameter);
} catch (NumberFormatException ex) {
}
String keterangan = "<br>";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
if (tombol.equals("Simpan")) {
if (!namaCustomer.equals("")) {
dataCustomer.setNamaCustomer(namaCustomer);
dataCustomer.setAlamatCustomer(alamatCustomer);
dataCustomer.setTelpCustomer(telpon);
if (dataCustomer.simpan()) {
namaCustomer = "";
alamatCustomer = "";
telpon = "";
keterangan = "Sudah tersimpan";
} else {
keterangan = "Gagal menyimpan:n" + dataCustomer.getPesan();
}
} else {
keterangan = "Gagal menyimpan, nama customer tidak boleh kosong";
}
} else if (tombol.equals("Hapus")) {
if (!namaCustomer.equals("")) {
if (dataCustomer.hapus(namaCustomer)) {
namaCustomer = "";
alamatCustomer = "";
telpon = "";
keterangan = "Data sudah dihapus";
} else {
keterangan = "Nama Customer tersebut tidak ada, atau ada kesalahan:n" + dataCustomer.getPesan();
}
} else {
keterangan = "Nama Customer masih kosong";
}
} else if (tombol.equals("Cari")) {
if (!namaCustomer.equals("")) {
if (dataCustomer.baca(namaCustomer)) {
namaCustomer = dataCustomer.getNamaCustomer();
alamatCustomer = dataCustomer.getAlamatCustomer();
telpon = dataCustomer.getTelpCustomer();
keterangan = "<br>";
} else {
keterangan = "Nama Customer tersebut tidak ada";
}
} else {
keterangan = "Nama Customer masih kosong";
}
} else if (tombol.equals("Pilih")) {
namaCustomer = namaCustomerDipilih;
alamatCustomer = "";
telpon = "";
if (!namaCustomerDipilih.equals("")) {
if (dataCustomer.baca(namaCustomerDipilih)) {
namaCustomer = dataCustomer.getNamaCustomer();
alamatCustomer = dataCustomer.getAlamatCustomer();
telpon = dataCustomer.getTelpCustomer();
keterangan = "<br>";
} else {
keterangan = "Nama Customer tersebut tidak ada";
}
} else {
keterangan = "Tidak ada yang dipilih";
}
}
String kontenLihat = "";
if (tombol.equals("Lihat") || tombol.equals("Sebelum") || tombol.equals("Setelah") || tombol.equals("Tampilkan")) {
kontenLihat += "<center>";
kontenLihat += "<div class='tbl'>";
kontenLihat += "<table>";
if (tombol.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombol.equals("Setelah")) {
mulai += jumlah;
}
Object[][] listDataCustomer = null;
if (dataCustomer.bacaData(mulai, jumlah)) {
listDataCustomer = dataCustomer.getList();
} else {
keterangan = dataCustomer.getPesan();
}
if (listDataCustomer != null) {
for (int i = 0; i < listDataCustomer.length; i++) {
kontenLihat += "<tr>";
kontenLihat += "<td>";
if (i == 0) {
kontenLihat += "<input type='radio' checked name='namaCustomerDipilih' value='" + listDataCustomer[i][1].toString() + "'>";
} else {
kontenLihat += "<input type='radio' name='namaCustomerDipilih' value='" + listDataCustomer[i][1].toString() + "'>";
}
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataCustomer[i][1].toString();
kontenLihat += "</td>";
kontenLihat += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "</div>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "<input id='sebelum' type='submit' name='tombol' value='Sebelum'>";
kontenLihat += "<input id='pilih' type='submit' name='tombol' value='Pilih'>";
kontenLihat += "<input id='sesudah' type='submit' name='tombol' value='Berikutnya'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombol' value='Tampilkan'>";
kontenLihat += "</center>";
}
String konten = "<center><h1>Master Data Customer</h1></center>";
konten += "<form action='DataCustomerController' method='post'>";
konten += "<label for='nama'><b>Nama Customer</b></label><br>";
konten += "<input type='text' value='" + namaCustomer + "' name='nama' maxlength='30' size='15' placeholder='Masukkan Nama Customer..' style='width: 70%'><input type='submit' name='tombol' value='Cari' style='width: 28%; float: right'>";
konten += "<label for='telepon'><b>Telepon</b></label>";
konten += "<input type='tel' value='"+telpon+"' name='telepon' placeholder='Masukkan Nomor Telepon..'>";
konten += "<label for='alamat'><b>Alamat</b></label>";
konten += "<textarea name='alamat' rows='3' cols='30' placeholder='Masukkan Alamat..' style='font: unset;'>"+alamatCustomer+"</textarea>";
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
konten += "<center><input id='simpan' type='submit' name='tombol' value='Simpan'>";
konten += "<input id='hapus' type='submit' name='tombol' value='Hapus'>";
konten += "<input id='lihat' type='submit' name='tombol' value='Lihat'></center>";
konten += kontenLihat;
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
}
}
Output:
Data
User
Source
Code DataUserController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession(true);
DataUser dataUser = new DataUser();
Enkripsi enkripsi = new Enkripsi();
String userName = "";
String tombol = request.getParameter("tombol");
String namaUser = request.getParameter("nama");
String passwordUser = request.getParameter("password");
String mulaiParameter = request.getParameter("mulai");
String jumlahParameter = request.getParameter("jumlah");
String namaUserDipilih = request.getParameter("namaUserDipilih");
if (tombol == null) {
tombol = "";
}
if (namaUser == null) {
namaUser = "";
}
if (passwordUser == null) {
passwordUser = "";
}
if (namaUserDipilih == null) {
namaUserDipilih = "";
}
int mulai = 0, jumlah = 10;
try {
mulai = Integer.parseInt(mulaiParameter);
} catch (NumberFormatException ex) {
}
try {
jumlah = Integer.parseInt(jumlahParameter);
} catch (NumberFormatException ex) {
}
String keterangan = "<br>";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
if (tombol.equals("Simpan")) {
if (!namaUser.equals("")) {
dataUser.setUsername(namaUser);
String passwordEcrypted = "";
try {
passwordEcrypted = enkripsi.hashMD5(passwordUser);
} catch (Exception ex) {
}
dataUser.setPassword(passwordEcrypted);
if (dataUser.simpan()) {
namaUser = "";
passwordUser = "";
keterangan = "Sudah tersimpan";
} else {
keterangan = "Gagal menyimpan:n" + dataUser.getPesan();
}
} else {
keterangan = "Gagal menyimpan, username tidak boleh kosong";
}
} else if (tombol.equals("Hapus")) {
if (!namaUser.equals("")) {
if (dataUser.hapus(namaUser)) {
namaUser = "";
passwordUser = "";
keterangan = "Data sudah dihapus";
} else {
keterangan = "Username tersebut tidak ada, atau ada kesalahan:n" + dataUser.getPesan();
}
} else {
keterangan = "Username masih kosong";
}
} else if (tombol.equals("Cari")) {
if (!namaUser.equals("")) {
if (dataUser.baca(namaUser)) {
namaUser = dataUser.getUsername();
passwordUser = dataUser.getPassword();
keterangan = "<br>";
} else {
keterangan = "Username tersebut tidak ada";
}
} else {
keterangan = "Username masih kosong";
}
} else if (tombol.equals("Pilih")) {
namaUser = namaUserDipilih;
passwordUser = "";
if (!namaUserDipilih.equals("")) {
if (dataUser.baca(namaUserDipilih)) {
namaUser = dataUser.getUsername();
passwordUser = dataUser.getPassword();
keterangan = "<br>";
} else {
keterangan = "Username tersebut tidak ada";
}
} else {
keterangan = "Tidak ada yang dipilih";
}
}
String kontenLihat = "";
if (tombol.equals("Lihat") || tombol.equals("Sebelum") || tombol.equals("Berikutnya") || tombol.equals("Tampilkan")) {
kontenLihat += "<center>";
kontenLihat += "<div class='tbl'>";
kontenLihat += "<table>";
if (tombol.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombol.equals("Berikutnya")) {
mulai += jumlah;
}
Object[][] listDataUser = null;
if (dataUser.bacaData(mulai, jumlah)) {
listDataUser = dataUser.getList();
} else {
keterangan = dataUser.getPesan();
}
if (listDataUser != null) {
for (int i = 0; i < listDataUser.length; i++) {
kontenLihat += "<tr>";
kontenLihat += "<td>";
if (i == 0) {
kontenLihat += "<input type='radio' checked name='namaUserDipilih' value='" + listDataUser[i][0].toString() + "'>";
} else {
kontenLihat += "<input type='radio' name='namaUserDipilih' value='" + listDataUser[i][0].toString() + "'>";
}
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataUser[i][0].toString();
kontenLihat += "</td>";
kontenLihat += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "</div>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "<input id='sebelum' type='submit' name='tombol' value='Sebelum'>";
kontenLihat += "<input id='pilih' type='submit' name='tombol' value='Pilih'>";
kontenLihat += "<input id='sesudah' type='submit' name='tombol' value='Berikutnya'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombol' value='Tampilkan'>";
kontenLihat += "</center>";
}
String konten = "<center><h1>Master Data User</h1></center>";
konten += "<form action='DataUserController' method='post'>";
konten += "<label for='nama'><b>Username</b></label><br>";
konten += "<input type='text' value='" + namaUser + "' name='nama' maxlength='30' placeholder='Masukkan Username..' size='15' style='width: 70%'><input type='submit' name='tombol' value='Cari' style='width: 28%; float: right'>";
konten += "<label for='nama'><b>Passsword</b></label>";
konten += "<input type='password' name='password' value='" + passwordUser + "' size='15' placeholder='Masukkan Password..'>";
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
konten += "<center><input id='simpan' type='submit' name='tombol' value='Simpan'>";
konten += "<input id='hapus' type='submit' name='tombol' value='Hapus'>";
konten += "<input id='lihat' type='submit' name='tombol' value='Lihat'></center>";
konten += kontenLihat;
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
}
Output:
Membuat Form Data Transaksi (RentalMobil)
Source
Code RentalMobilController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession(true);
DataCustomer dataCustomer = new DataCustomer();
DataMobil dataMobil = new DataMobil();
RentalMobil rentalMobil = new RentalMobil();
Date tgl = new Date();
int idCustomer = 0;
long total = 0;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String userName = "";
String tombol = request.getParameter("tombol");
String tombolHitung = request.getParameter("hitung");
String tombolCustomer = request.getParameter("tombolCustomer");
String kodeRentalMobil = request.getParameter("kodeRentalMobil");
String namaCustomer = request.getParameter("namaCustomer");
String tanggal = request.getParameter("tanggal");
String kasir = request.getParameter("kasir");
String mulaiParameter = request.getParameter("mulai");
String jumlahParameter = request.getParameter("jumlah");
String namaCustomerDipilih = request.getParameter("namaCustomerDipilih");
String tombolDataMobil = request.getParameter("tombolDataMobil");
String kodeMobil = request.getParameter("kodeMobil");
String namaMobil = request.getParameter("namaMobil");
String hargaPerHari = request.getParameter("hargaPerHari");
String transmisi = request.getParameter("transmisi");
String kodeMobilDipilih = request.getParameter("kodeMobilDipilih");
String jmlUnit = request.getParameter("jmlUnit");
String lamaSewa = request.getParameter("lamaSewa");
if (tombol == null) {
tombol = "";
}
if (kodeRentalMobil == null) {
kodeRentalMobil = "";
}
if (tombolHitung == null) {
tombolHitung = "";
}
if (tombolCustomer == null) {
tombolCustomer = "";
}
if (namaCustomer == null) {
namaCustomer = "";
}
if (tanggal == null) {
tanggal = sdf.format(tgl);
}
if (kasir == null) {
kasir = "kasir";
}
if (namaCustomerDipilih == null) {
namaCustomerDipilih = "";
}
if (tombolDataMobil == null) {
tombolDataMobil = "";
}
if (kodeMobil == null) {
kodeMobil = "";
}
if (namaMobil == null) {
namaMobil = "";
}
if (hargaPerHari == null) {
hargaPerHari = "0";
}
if (transmisi == null) {
transmisi = "pcs";
}
if (kodeMobilDipilih == null) {
kodeMobilDipilih = "";
}
if (jmlUnit == null) {
jmlUnit = "0";
}
if (lamaSewa == null) {
lamaSewa = "0";
}
int mulai = 0, jumlah = 10;
try {
mulai = Integer.parseInt(mulaiParameter);
} catch (NumberFormatException ex) {
}
try {
jumlah = Integer.parseInt(jumlahParameter);
} catch (NumberFormatException ex) {
}
String keterangan = "<br>";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
kasir = userName;
if (tombolCustomer.equals("Cari")) {
if (!namaCustomer.equals("")) {
if (dataCustomer.baca(namaCustomer)) {
namaCustomer = dataCustomer.getNamaCustomer();
idCustomer = dataCustomer.getIdCustomer();
keterangan = "<br>";
} else {
tanggal = sdf.format(tgl);
kasir = "kasir";
keterangan = "Nama Customer: <i>" + namaCustomer + "</i> tidak ada";
}
} else {
keterangan = "Nama Customer harus diisi";
}
} else if (tombolCustomer.equals("Pilih")) {
namaCustomer = namaCustomerDipilih;
tanggal = sdf.format(tgl);
if (!namaCustomerDipilih.equals("")) {
if (dataCustomer.baca(namaCustomerDipilih)) {
namaCustomer = dataCustomer.getNamaCustomer();
idCustomer = dataCustomer.getIdCustomer();
keterangan = "<br>";
} else {
keterangan = "Nama Customer: <i>" + namaCustomer + "</i> tidak ada";
}
} else {
keterangan = "Tidak ada yang dipilih";
}
}
String kontenLihat = "";
if (tombolCustomer.equals("Lihat") || tombolCustomer.equals("Sebelum") || tombolCustomer.equals("Berikutnya") || tombolCustomer.equals("Tampilkan")) {
kontenLihat += "<center>";
kontenLihat += "<div class='tbl'>";
kontenLihat += "<table>";
if (tombolCustomer.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombolCustomer.equals("Berikutnya")) {
mulai += jumlah;
}
Object[][] listDataCustomer = null;
if (dataCustomer.bacaData(mulai, jumlah)) {
listDataCustomer = dataCustomer.getList();
} else {
keterangan = dataCustomer.getPesan();
}
if (listDataCustomer != null) {
for (int i = 0; i < listDataCustomer.length; i++) {
kontenLihat += "<tr>";
kontenLihat += "<td>";
if (i == 0) {
kontenLihat += "<input type='radio' checked name='namaCustomerDipilih' value='" + listDataCustomer[i][1].toString() + "'>";
} else {
kontenLihat += "<input type='radio' name='namaCustomerDipilih' value='" + listDataCustomer[i][1].toString() + "'>";
}
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataCustomer[i][1].toString();
kontenLihat += "</td>";
kontenLihat += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "</div>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "<input id='sebelum' type='submit' name='tombolCustomer' value='Sebelum'>";
kontenLihat += "<input id='pilih' type='submit' name='tombolCustomer' value='Pilih'>";
kontenLihat += "<input id='sesudah' type='submit' name='tombolCustomer' value='Berikutnya'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombolCustomer' value='Tampilkan'>";
kontenLihat += "</center>";
}
if (tombolDataMobil.equals("Cari")) {
if (!kodeMobil.equals("")) {
if (dataMobil.baca(kodeMobil)) {
kodeMobil = dataMobil.getKodeMobil();
namaMobil = dataMobil.getNamaMobil();
hargaPerHari = Long.toString(dataMobil.getHargaPerHari());
keterangan = "<br>";
} else {
keterangan = "Kode Barang tersebut tidak ada";
}
} else {
keterangan = "Kode Barang masih kosong";
}
} else if (tombolDataMobil.equals("Pilih")) {
kodeMobil = kodeMobilDipilih;
namaMobil = "";
hargaPerHari = "0";
jmlUnit = "0";
if (!kodeMobilDipilih.equals("")) {
if (dataMobil.baca(kodeMobilDipilih)) {
kodeMobil = dataMobil.getKodeMobil();
namaMobil = dataMobil.getNamaMobil();
hargaPerHari = Long.toString(dataMobil.getHargaPerHari());
keterangan = "<br>";
} else {
keterangan = "Kode barang tersebut tidak ada";
}
} else {
keterangan = "Tidak ada yang dipilih";
}
}
if (tombolDataMobil.equals("Lihat") || tombolDataMobil.equals("Sebelum") || tombolDataMobil.equals("Berikutnya") || tombolDataMobil.equals("Tampilkan")) {
kontenLihat += "<center>";
kontenLihat += "<div class='tbl'>";
kontenLihat += "<table>";
if (tombolDataMobil.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombolDataMobil.equals("Berikutnya")) {
mulai += jumlah;
}
Object[][] listDataMobil = null;
if (dataMobil.bacaData(mulai, jumlah)) {
listDataMobil = dataMobil.getList();
} else {
keterangan = dataMobil.getPesan();
}
if (listDataMobil != null) {
for (int i = 0; i < listDataMobil.length; i++) {
kontenLihat += "<tr>";
kontenLihat += "<td>";
if (i == 0) {
kontenLihat += "<input type='radio' checked name='kodeMobilDipilih' value='" + listDataMobil[i][0].toString() + "'>";
} else {
kontenLihat += "<input type='radio' name='kodeMobilDipilih' value='" + listDataMobil[i][0].toString() + "'>";
}
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataMobil[i][0].toString();
kontenLihat += "</td>";
kontenLihat += "<td>";
kontenLihat += listDataMobil[i][1].toString();
kontenLihat += "</td>";
kontenLihat += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "</div>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "<input id='sblm' type='submit' name='tombolDataMobil' value='Sebelum'>";
kontenLihat += "<input id='plh' type='submit' name='tombolDataMobil' value='Pilih'>";
kontenLihat += "<input id='ssdh' type='submit' name='tombolDataMobil' value='Berikutnya'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombolDataMobil' value='Tampilkan'>";
kontenLihat += "</center>";
}
if (!tombol.equals("")) {
if (tombol.equals("Simpan")) {
if (!namaCustomer.equals("") && !kodeMobil.equals("")) {
rentalMobil.setKodeRental(kodeRentalMobil);
dataCustomer.setNamaCustomer(namaCustomer);
if(dataCustomer.baca(namaCustomer)){
idCustomer=dataCustomer.getIdCustomer();
}
rentalMobil.setListRental(new Object[][]{{kodeRentalMobil, tanggal, idCustomer, kasir, kodeMobil, Integer.parseInt(jmlUnit), Integer.parseInt(lamaSewa)}});
if (rentalMobil.simpan()) {
//namaCustomer = "";
tanggal = sdf.format(tgl);
kasir = userName;
kodeMobil = "";
namaMobil = "";
hargaPerHari = "0";
jmlUnit="0";
lamaSewa="0";
keterangan = "Sudah disimpan";
} else {
keterangan = "Gagal menyimpan:n" + rentalMobil.getPesan();
}
} else {
keterangan = "Kode RentalMobil, Nama Customer dan kode barang tidak boleh kosong";
}
} else if (tombol.equals("Hapus")) {
if (!namaCustomer.equals("") && !kodeMobil.equals("")) {
if (rentalMobil.hapus(kodeRentalMobil, kodeMobil)) {
kodeRentalMobil="";
namaCustomer = "";
tanggal = sdf.format(tgl);
kasir = userName;
kodeMobil = "";
namaMobil = "";
hargaPerHari = "0";
jmlUnit = "0";
lamaSewa="0";
keterangan = "Sudah dihapus";
} else {
keterangan = "Gagal menghapus:n" + rentalMobil.getPesan();
}
} else {
keterangan = "Kode RentalMobil, Nama Customer dan kode barang tidak boleh kosong";
}
}else if(tombol.equals("Reset")){
kodeRentalMobil="";
namaCustomer = "";
tanggal = sdf.format(tgl);
kasir = userName;
kodeMobil = "";
namaMobil = "";
hargaPerHari = "0";
jmlUnit = "0";
lamaSewa="0";
}
}
String konten = "<center><h1>Input Data Rental Mobil</h1></center>";
konten += "<form action='RentalMobilController' method='post'>";
konten += "<label for='kodeRentalMobil'><b>No. Rental Mobil</b></label><br>";
konten += "<input type='text' value='" + kodeRentalMobil + "' maxlength='15' name='kodeRentalMobil' placeholder='Masukkan Kode Rental ..'>";
konten += "<label for='namaCustomer'><b>Nama Customer</b></label><br>";
konten += "<input type='text' value='" + namaCustomer + "' name='namaCustomer' maxlength='15' placeholder='Masukkan Nama Customer ..' style='width: 60%'>";
konten += "<input type='submit' name='tombolCustomer' value='Cari' style='width: 19%; margin: 5px'><input type='submit' name='tombolCustomer' value='Lihat' style='width: 19%'>";
if (!tombolCustomer.equals("")) {
if (!keterangan.equals("<br>")) {
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
}
konten += kontenLihat;
}
konten += "<label for='tanggal'><b>Tanggal</b></label>";
konten += "<input type='date' readonly value='" + tanggal + "' name='tanggal'>";
konten += "<label for='kasir'><b>Kasir</b></label>";
konten += "<input type='text' readonly value='" + kasir + "' name='kasir'>";
konten += "<label for='kodeMobil'><b>Kode Mobil</b></label><br>";
konten += "<input type='text' value='" + kodeMobil + "' name='kodeMobil' maxlength='15' placeholder='Masukkan Kode Mobil..' style='width: 60%'>";
konten += "<input type='submit' name='tombolDataMobil' value='Cari' style='width: 19%; margin: 5px'><input type='submit' name='tombolDataMobil' value='Lihat' style='width: 19%'>";
if (!tombolDataMobil.equals("")) {
if (!keterangan.equals("<br>")) {
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
}
konten += kontenLihat;
}
konten += "<label for='kodeMobil'><b>Nama Mobil</b></label>";
konten += "<input type='text' readonly value='" + namaMobil + "' name='namaMobil' placeholder='Nama Mobil..'>";
konten += "<label for='hargaPerHari'><b>Harga Rp.</b></label>";
konten += "<input type='number' readonly value='" + hargaPerHari + "' name='hargaPerHari'>";
konten += "<label for='jmlUnit'><b>Jumlah Unit</b></label>";
konten += "<input type='number' min='0' value='" + jmlUnit + "' name='jmlUnit' placeholder='Masukkan Jumlah Unit ..'>";
konten += "<label for='lamaSewa'><b>Lama Sewa</b></label><br>";
konten += "<input type='number' min='0' value='" + lamaSewa + "' name='lamaSewa' placeholder='Masukkan Lama Sewa ..' style='width: 95%'> Hari<br>";
int nilaiJmlUnit = 0;
long nilaiHarga = 0;
int nilaiSewa = 0;
try {
nilaiJmlUnit = Integer.parseInt(jmlUnit);
} catch (NumberFormatException ex) {
}
try {
nilaiHarga = Long.parseLong(hargaPerHari);
} catch (NumberFormatException ex) {
}
try {
nilaiSewa = Integer.parseInt(lamaSewa);
} catch (NumberFormatException ex) {
}
if (tombolHitung.equalsIgnoreCase("Hitung")) {
total = nilaiHarga * nilaiJmlUnit * nilaiSewa;
}
konten += "<label for='bayar'><b>Total Rp.</b></label><br>";
konten += "<input type='number' min='0' name='bayar' readonly value='" + Long.toString(total) + "' style='width: 70%'>"
+ "<input type='submit' name='hitung' value='Hitung' style='width: 28%; float: right'>";
konten += "<center><input id='simpan' type='submit' name='tombol' value='Simpan'>";
konten += "<input id='hapus' type='submit' name='tombol' value='Hapus'>";
konten += "<input id='lihat' type='submit' name='tombol' value='Reset'></center>";
if (!tombol.equals("") && !keterangan.equals("<br>")) {
konten += "<tr>";
konten += "<p><font style='color:red'><b>" + keterangan.replaceAll("n", "<br>").replaceAll(";", ",") + "</b></font></p>";
konten += "</tr>";
}
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
}
}
Output:
Membuat Laporan
Laporan
Rental Mobil
Source
Code LaporanRentalMobilController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
String[][] formatTypeData = {{"PDF (Portable Document Format)","pdf","application/pdf"},
{"XLSX (Microsoft Excel)","xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},
{"XLS (Microsoft Excel 97-2003)","xls","application/vnd.ms-excel"},
{"DOCX (Microsoft Word)","docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"},
{"ODT (OpenDocument Text)","odt","application/vnd.oasis.opendocument.text"},
{"RTF (Rich Text Format)","rtf","text/rtf"}};
Date tgl=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
HttpSession session = request.getSession(true);
String userName = "";
String tombol = request.getParameter("tombol");
String opsi = request.getParameter("opsi");
String kodeRental = request.getParameter("koderental");
String awalStr = request.getParameter("awal");
String akhirStr=request.getParameter("akhir");
String kelas = request.getParameter("kelas");
String formatType = request.getParameter("formatType");
if (tombol==null) tombol="";
if (kodeRental==null) kodeRental="";
if (opsi==null) opsi="";
if (awalStr==null) awalStr="0";
if (akhirStr==null) akhirStr="0";
if (formatType==null) kelas="";
String keterangan = "<br>";
int noType = 0;
for (int i=0; i<formatTypeData.length; i++){
if (formatTypeData[i][0].equals(formatType)){
noType = i;
}
}
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex){}
if (!((userName == null) || userName.equals(""))){
boolean opsiSelected = false;
if (tombol.equals("Cetak")){
RentalMobil rentalMobil = new RentalMobil();
Date awal=new Date(), akhir=new Date();
if (rentalMobil.cetakLaporan(opsi, kodeRental, awalStr, akhirStr, formatTypeData[noType][1], getServletConfig().getServletContext().getRealPath("reports/RentalMobil.jrxml"))){
byte[] pdfasbytes = rentalMobil.getPdfasbytes();
try (OutputStream outStream = response.getOutputStream()) {
response.setHeader("Content-Disposition","inline; filename=LaporanRentalMobil."+formatTypeData[noType][1]);
response.setContentType(formatTypeData[noType][2]);
response.setContentLength(pdfasbytes.length);
outStream.write(pdfasbytes,0,pdfasbytes.length);
outStream.flush();
outStream.close();
}
} else {
keterangan += rentalMobil.getPesan();
}
}
String konten = "<center><h1>Mencetak Laporan Rental Mobil</h1></center>";
konten += "<form action='LaporanRentalMobilController' method='post'>";
konten += "<table>";
konten += "<tr>";
if (opsi.equalsIgnoreCase("koderental")){
konten += "<td align='right'><input type='radio' checked name='opsi' value='koderental'></td>";
opsiSelected = true;
} else {
konten += "<td align='right'><input type='radio' name='opsi' value='koderental'></td>";
}
konten += "<td align='left'>Kode Rental</td>";
konten += "<td align='left'><input type='text' value='"+kodeRental+"' name='koderental' maxlength='15' size='15' placeholder='Masukkan Kode Rental'></td>";
konten += "</tr>";
konten += "<tr>";
if(opsi.equalsIgnoreCase("tanggal")){
konten+="<td align='right'><input type='radio' checked name='opsi' value='tanggal'></td>";
opsiSelected=true;
}else{
konten+="<td align='right'><input type='radio' name='opsi' value='tanggal'></td>";
}
konten+="<td align='left'>Tanggal</td>";
konten+="<td align='left'>"
+ "<input type='date' name='awal' value='"+sdf.format(tgl)+"' style='width: 47%'> - "
+ "<input type='date' name='akhir' value='"+sdf.format(tgl)+"' style='width: 47%'>"
+ "</td>";
konten += "</tr>";
konten += "<tr>";
if (!opsiSelected){
konten += "<td align='right'><input type='radio' checked name='opsi' value='Semua'></td>";
} else {
konten += "<td align='right'><input type='radio' name='opsi' value='Semua'></td>";
}
konten += "<td align='left'>Semua</td>";
konten += "<td><br></td>";
konten += "</tr>";
konten += "<tr>";
konten += "<td colspan='3'><br></td>";
konten += "</tr>";
konten += "<tr>";
konten += "<td>Format Laporan</td>";
konten += "<td colspan=2>";
konten += "<select name='formatType'>";
for (String[] formatLaporan : formatTypeData){
if (formatLaporan[0].equals(formatType)){
konten += "<option selected value='"+formatLaporan[0]+"'>"+formatLaporan[0]+"</option>";
} else {
konten += "<option value='"+formatLaporan[0]+"'>"+formatLaporan[0]+"</option>";
}
}
konten += "</select>";
konten += "</td>";
konten += "</tr>";
konten += "<tr>";
konten += "<td colspan='3'><b>"+keterangan.replaceAll("n", "<br>").replaceAll(";", ",")+"</b></td>";
konten += "</tr>";
konten += "<tr>";
konten += "<td colspan='3' align='center'><input type='submit' name='tombol' value='Cetak' style='width: 100px'></td>";
konten += "</tr>";
konten += "</table>";
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
} }
RentalMobil.jrxml
Output:
Laporan
Stok Mobil
Source
Code StokMobilController.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession(true);
DataMobil dataMobil = new DataMobil();
String[][] formatTypeData = {{"PDF (Portable Document Format)", "pdf", "application/pdf"},
{"XLSX (Microsoft Excel)", "xlsx", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},
{"XLS (Microsoft Excel 97-2003)", "xls", "application/vnd.ms-excel"},
{"DOCX (Microsoft Word)", "docx", "application/vnd.openxmlformats-officedocument.wordprocessingml.document"},
{"ODT (OpenDocument Text)", "odt", "application/vnd.oasis.opendocument.text"},
{"RTF (Rich Text Format)", "rtf", "text/rtf"}};
String formatType = request.getParameter("formatType");
String userName = "";
String tombol = request.getParameter("tombol");
String mulaiParameter = request.getParameter("mulai");
String jumlahParameter = request.getParameter("jumlah");
int noType = 0;
for (int i = 0; i < formatTypeData.length; i++) {
if (formatTypeData[i][0].equals(formatType)) {
noType = i;
}
}
if (tombol == null) {
tombol = "";
}
int mulai = 0, jumlah = 10;
try {
mulai = Integer.parseInt(mulaiParameter);
} catch (NumberFormatException ex) {
}
try {
jumlah = Integer.parseInt(jumlahParameter);
} catch (NumberFormatException ex) {
}
String keterangan = "<br>";
try {
userName = session.getAttribute("userName").toString();
} catch (Exception ex) {
}
if (!((userName == null) || userName.equals(""))) {
if (tombol.equals("Cetak")) {
if (dataMobil.cetakLaporanStokMobil(formatTypeData[noType][1], getServletConfig().getServletContext().getRealPath("reports/StokMobil.jrxml"))) {
byte[] pdfasbytes = dataMobil.getPdfasbytes();
try (OutputStream outStream = response.getOutputStream()) {
response.setHeader("Content-Disposition", "inline; filename=LaporanStok Mobil." + formatTypeData[noType][1]);
response.setContentType(formatTypeData[noType][2]);
response.setContentLength(pdfasbytes.length);
outStream.write(pdfasbytes, 0, pdfasbytes.length);
outStream.flush();
outStream.close();
}
} else {
keterangan += dataMobil.getPesan();
}
}
String isi = "";
String kontenLihat = "<table>";
if (tombol.equals("Lihat") || tombol.equals("Sebelum") || tombol.equals("Berikutnya") || tombol.equals("Tampilkan")
|| tombol.equals("") || tombol.equals("Cetak")) {
if (tombol.equals("Sebelum")) {
mulai -= jumlah;
if (mulai < 0) {
mulai = 0;
}
}
if (tombol.equals("Berikutnya")) {
mulai += jumlah;
}
Object[][] listDataMobil = null;
if (dataMobil.bacaData(mulai, jumlah)) {
listDataMobil = dataMobil.getList();
} else {
keterangan = dataMobil.getPesan();
}
if (listDataMobil != null) {
for (int i = 0; i < listDataMobil.length; i++) {
isi += "<tr>";
isi += "<td>" + (i + 1) + "</td>";
for (int j = 0; j < listDataMobil[i].length; j++) {
isi += "<td>" + listDataMobil[i][j].toString() + "</td>";
}
isi += "</tr>";
}
}
kontenLihat += "</table>";
kontenLihat += "<center>";
kontenLihat += "<input id='sblm' type='submit' name='tombolDataMobil' value='Sebelum'>";
kontenLihat += "<input id='ssdh' type='submit' name='tombolDataMobil' value='Berikutnya'><br>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Mulai <input id='mulai' type='text' name='mulai' value=" + mulai + "> ";
kontenLihat += "Jumlah";
kontenLihat += "<select id='jml' name='jumlah'>";
for (int i = 1; i <= 10; i++) {
if (jumlah == (i * 10)) {
kontenLihat += "<option selected value=" + i * 10 + ">" + i * 10 + "</option>";
} else {
kontenLihat += "<option value=" + i * 10 + ">" + i * 10 + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='tampil' type='submit' name='tombolDataMobil' value='Tampilkan'>";
kontenLihat += "</center>";
kontenLihat += "<center>";
kontenLihat += "Format Laporan ";
kontenLihat += "<select name='formatType' style='width: 50%'>";
for (String[] formatLaporan : formatTypeData) {
if (formatLaporan[0].equals(formatType)) {
kontenLihat += "<option selected value='" + formatLaporan[0] + "'>" + formatLaporan[0] + "</option>";
} else {
kontenLihat += "<option value='" + formatLaporan[0] + "'>" + formatLaporan[0] + "</option>";
}
}
kontenLihat += "</select>";
kontenLihat += "<input id='lihat' type='submit' name='tombol' value='Cetak'>";
kontenLihat += "</center>";
}
String konten = "<center><h1>Stok Mobil</h1></center>";
konten += "<form action='StokMobilController' method='post'>";
konten += "<center><table id='t01'>";
konten += "<thead>"
+ "<tr>"
+ "<th>No.</th>"
+ "<th>Kode Mobil</th>"
+ "<th>Nama Mobil</th>"
+ "<th>Stok</th>"
+ "<th>Transmisi</th>"
+ "<th>Kapasitas</th>";
konten += "</tr>";
konten += "</thead>";
konten += "<tbody>";
konten += isi;
konten += "</tbody>";
konten += "</table></center>";
konten += kontenLihat;
konten += "</form>";
new MainForm().tampilkan(konten, request, response);
} else {
response.sendRedirect(".");
}
}
StokMobil.jrxml
Output:




Comments