DISUSUN OLEH:
Kelompok 1
1. ASKIRATUL MUTTAZI (201220529)
2. ANDI NUR SAFIRA TRI KARTINI (201220524)
3. ANDI RADIAH ADHA ARSYAD (201220525)
4. AINUL AFNI (201220521)
5. PUTRI YASMIN YAKUB (201210515)
SUMMERY..................................................................................................... 59
HOTEL
Username
Password
Login Sebagai
close login
Syntaks Login
1 Imports System.Data.Odbc
Imports MySql.Data.MySqlClient
End Sub
Call koneksi()
Try
Dim selectDB As String
selectDB = "select * from user where username='" &
input_username.Text & "' and password='" & input_pass.Text & "'"
cmd = New MySqlCommand(selectDB, conn)
dr = cmd.ExecuteReader
dr.Read()
Else
4 MessageBox.Show("Username atau password salah")
End If
3 Catch ex As Exception
End Try
End If
End Sub
Mulai
- Username
-Password
-Login Sebagai
Z
-Login
-Close
? Login MU
Close
1
A
2
B
3
C
F
D
4 5
E
V(6) = (E-N) + 2
=(6-6) +2
=2
V(6) = P+1
=1+1
=2
Path
Path 1 = 1,2,3,4,5,3
Path 2 = 1,2,3,4,6
Matrix login
P=1
P = P+1
P = 1+1
End Sub
Menu Utama
1.Chekin/Out
2.Room Service
3.Kategori
X
4.Data
5.Laporan
6.Log Out
1 Check in/Out A
2 Room Service B
3 Kategori C
4 Data D
Laporan E
5
Log Out
E
B
D
K
F
I N
J
Q
L
14
V(G) = (E-N) + 2
= (17-13) + 2
=6
V(G) = P+1
= 5+1
Path:
Path 1 : 1,2,3,4,2
Path 2 : 1,2,3,5,6,2
Path 3 : 1,2,3,5,7,8,2
Path 4 : 1,2,3,5,7,9,10,2
Path 5 : 1,2,3,5,7,9,11,12,2
Path 6 : 1,2,3,5,7,9,11,13
If dr.HasRows Then
Try
4 Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='TERSEDIA'
order by kamar_id desc"
5 cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
list_kamar.btn_pilih.OnHoverForeColor = Color.White
pnl_body.Controls.Add(list_kamar)
list_kamar.pilihan = "1"
Loop
Catch ex As Exception
MessageBox.Show("Gagal2")
Else ' akan menampilkan pesan bahwa tidak ada kamar yang terpakai
Panel5.Height = 213
GunaLabel1.Hide()
End If
Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub
temp = ""
urutan = 0
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
urutan = urutan + 1
cb_tipe_kamar.Items.Add(dr.Item("kategori_nama_kamar"))
If urutan = 1 Then
11 temp = dr.Item("kategori_nama_kamar")
End If
Loop
cb_tipe_kamar.SelectedItem = temp
End Sub
12
' fungsi pada combobox
' fungsinya yaitu, akan menampilkan data kamar tersedia berdasarkan tipe kamar
(event selectted item)
Private Sub cb_tipe_kamar_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles cb_tipe_kamar.SelectedIndexChanged
pnl_body2.Controls.Clear()
Call koneksi()
Try
Dim cek As String
cek = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar_status='TERSEDIA' and
kategori_nama_kamar='" & cb_tipe_kamar.Text & "'"
cmd = New MySqlCommand(cek, conn)
If dr.HasRows Then
Try
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
13 kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kategori_nama_kamar='" &
cb_tipe_kamar.Text & "' and kamar.kamar_status='TERSEDIA' order by kamar_id desc"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
list_kamar.btn_pilih.OnHoverForeColor = Color.White
pnl_body2.Controls.Add(list_kamar)
list_kamar.pilihan = "1"
Loop
Catch ex As Exception
MessageBox.Show("Gagal2")
End Try
15
Else ' akan menampilkan pesan bahwa tidak ada kamar yang terpakai
pnl_body2.Controls.Clear()
End If
Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu1)
End Sub
-Check In
-Check Out
-Kembali
-Pilih Kamar
? Check In
-Kembali
-Nama Tamu
-Maks. Tamu/Kamar
? Y Pilih Kamar -Tgl/Waktu check in
-Tgl/Waktu check out
-Jumlah Deposit
T
-Refresh
Kembali -Check in
-Kembali
? Refresh
? Check in Berhasil
Kembali
-Pilih Kamar
? Check out
-Kembali
-Nama Tamu
-Tgl/Waktu check in
? Pilih Kamar -Tgl/Waktu check out
-Maks. Tamu/Kamar
-Rincian Tagihan
-Check out
-Batal
? Check out
? Yes Berhasil
No
Batal
Kembali
Kembali
1
A
2
B
C E
3 4 5
F
G
6 7 I
8
H J
9 N
R
16 K
D
S
10 L
11
T
M
O Q
12 13 14
P
15
U W
17 18 19
X
Y AA
20 21 22
AB
23
AC
AD
24 25
AF
AG AI
26 27 28
AE
AH
AK
32 29
AL
30
AM
AN 31
33
V(6) = (E-14) + 2
=(40-33) + 2
=9
V(6) = P+1
= 8+1
=9
Path :
Path 1 : 1,2,3,4,5,6,7,8,9,10,11,8
Path 2 : 1,2,3,4,5,6,7,8,9,10,12,13,14,5
Path 3 : 1,2,3,4,5,6,7,8,9,10,12,15,5
Path 4 : 1,2,3,4,5,6,
Path 5 : 1,2,3,17,18,19,20,21,22,23,24,25,26,27,28,19
Path 6 : 1,2,3,17,18,19,20,21,22,23,24,25,26,29,19
Path 7: 1,2,3,17,18,19,20,21,22,23,24,30,19
Path 8 : 1,2,3,17,18,19,20,31,2
Path 9 : 1,2,3,17,32,33
If dr.HasRows Then
Try
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='KOTOR'
order by kamar_id desc"
3 cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
3 Catch ex As Exception
MessageBox.Show("Gagal2")
End Try
Else ' akan menampilkan pesan bahwa tidak ada kamar yang kotor
Panel5.Height = 213
GunaLabel1.Hide()
4 pnl_body.Controls.Clear()
End If
Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub
Call tampilkan2()
6 Call tampilkan_tipeKamar()
End Sub
temp = ""
urutan = 0
Call koneksi()
7 Dim tampilkan As String
9 8 tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
urutan = urutan + 1
cb_tipe_kamar.Items.Add(dr.Item("kategori_nama_kamar"))
If urutan = 1 Then
temp = dr.Item("kategori_nama_kamar")
End If
Loop
cb_tipe_kamar.SelectedItem = temp
End Sub
' function untuk menampilkan data kamar yang kotor berdasarkan tipe kamar
Private Sub cb_tipe_kamar_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles cb_tipe_kamar.SelectedIndexChanged
pnl_body2.Controls.Clear()
9 Call koneksi()
Try
Dim cek As String
If dr.HasRows Then
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kategori_nama_kamar='" &
cb_tipe_kamar.Text & "' and kamar.kamar_status='KOTOR' order by kamar_id desc"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader
Do While dr.Read()
list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
pnl_body2.Controls.Add(list_kamar)
list_kamar.pilihan = "3"
Loop
Else ' akan menampilkan pesan bahwa tidak ada kamar yang kotor
pnl_body2.Controls.Clear()
End If
Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub
11 menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_dua)
End Sub
End Class
Clening Room
Kembali
Y Pilih Kamar
? Clening Room
Kembali
T
No. Kamar
Y Tipe Kamar
Kembali X ? Pilih Kamar
Maks. Tamu
T Status Kamar
Kembali
Update Kamar
Kembali
Y
? Update Kamar Berhasil
Kembali
1
A
2
B
C E
R1 3 4 5
D
F
15 G I
6 7 8
R3
J
16 9
R2
H K
L N O
10 11 12
R4
13 P
14 Q
V(6) = P+1
= 3+1
=4
Path
Path 1 = 1,2,3,4,5,6,7,8,9,10,11,12,9
Path 2 = 1,2,3,4,5,6,7,8,9,10,13,5
Path 3 = 1,2,3,4,5,6,14,2
Path 4 = 1,2,3,15,16
Menu Kategori
Imports System.Data.Odbc
1 Imports MySql.Data.MySqlClient
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kategori_kamar2)
End Sub
inputTipe_kamar.Clear()
inputHarga_kamar.Clear()
4 input_keterangan.Clear()
5
inputTipe_kamar.Focus()
End Sub
Else
Try
7
Call koneksi()
Dim cek As String
cek = "select * from kategori_kamar where kategori_nama_kamar='" &
kode_tipe_kamar & "'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()
If dr.HasRows Then
8 Call koneksi()
Dim update As String
update = "update kategori_kamar set kategori_nama_kamar='" &
inputTipe_kamar.Text & "' ,kategori_harga_kamar='" & inputHarga_kamar.Text & "'
,kategori_keterangan_kamar='" & input_keterangan.Text & "' where kategori_id_kamar='" &
dr.Item("kategori_id_kamar") & "'"
cmd = New MySqlCommand(update, conn)
cmd.ExecuteNonQuery()
Call kosong()
MessageBox.Show("Telah berhasil diubah")
Dim menu_kategori_kamar2 As control_kategori_kamar2 = New
control_kategori_kamar2
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kategori_kamar2)
Else
MessageBox.Show("Gagal diubah")
Call kosong()
End If
-Kategori kamar
-Kembali
-Tambah Kamar
-Cari
?
Y Kategori
-Edit
kamar
-Hapus
T -Kembali
Kembali
-Nama/Tipe Kamar
?
Y Tambah Kamar
-Harga kamar/
malam
-Keterangan
X
T ?
Y Tambah kamar Berhasil
T
Batal
? Cari
Y -Nama/Tipe Kamar
-Harga kamar/
? Edit
malam
-Keterangan
-Edit kamar
-Batal
Y
T
? Edit kamar Berhasil
Batal
? Hapus
Kembali
C E
R1 3 4 5
F
D
G
I
6 7 8
26 R2
K M
9 10 11
27 H
L
R3
12 O
R4
13 14 R
S
U
15 16 17 R5
18
AA
T
W
X Z
19 20 21
Y
R6
22 AB
R7
AC AE
23 24
AD R8
25
AF
= (33-27) + 2
=8
V(6) = P+1
= 7+1
=8
Path:
Path 1 = 1,2,3,4,5,6,7,8,9,10,11,5
Path 2 = 1,2,3,4,5,6,7,8,9,12,5
Path 3 = 1,2,3,4,5,6,13,14,5
Path 4=1,2,3,4,5,6,13,15,16,17,18,19,20,21,5
Path 5 = 1,2,3,4,5,6,13,15,16,17,18,19,22,5
Path 6 = 1,2,3,4,5,6,13,15,23,24,5
Path 7 = 1,2,3,4,5,6,13,15,23,25,5
Path 8 = 1,2,3,26,27,27
Matrikx kategori
Menu Kamar
+ Tambah Tamu
Username
Hapus Kembali
Edit
Sub tampilkan_tipeKamar()
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
2 dr = cmd.ExecuteReader
3
Do While dr.Read()
cb_tipeKamar.Items.Add(dr.Item("kategori_nama_kamar"))
Loop
End Sub
End Sub
Else
Call koneksi()
Try
7 Dim cek As String
cek = "select * from kamar where kamar_no='" &
inputNo_kamar.Text & "'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()
If dr.HasRows Then
Call koneksi()
Try
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kamar)
Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
End Try
End If
Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
inputNo_kamar.Clear()
End Try
End If
End Sub
End Class
From Data
-Buku tamu
-Kamar
-Data pengguna
-Kembali
Y
D.1
? Buku Tamu
Y D.2
? Kamar
Y D.3
? Data Pengguna
Kembali
1
A
B R2
C
3 4
E
R3
D
F
5 6
R4 H
G
I
7 8
10
V(6) = (E-N) + 2
=(12-10) +2
=2+2
=4
V(6) = P+1
=3+1
=4
Path
Path 1 = 1,2,3,4,2
Path 2 = 1,2,3,5,6,2
Paht 3 = 1,2,3,5,7,8,2
Path 4 = 1,2,3,5,7,9,10
-Tambah tamu
-Cari
-Refresh
-Edit
-Hapus
-Kembali
-Clear
-Tambah Tamu
-Batal
? Clear
? Batal
? Cari
? Refresh
-Update kamar
-Batal
Batal
? Hapus
Kembali
B E
C
3 4 5
F
R2 R3
D 6 J
G
H
7 8
N
I M
K
9 10 11
L
O R4
12 13
P
Q R5
14 15 S
R1 R R6
T
16 17
V
U Y
W R7
18 19 20
Z
X AA 21
AB AD
22 23 24 AE
AC
R8
25
AF
R9
AG
26 27
AI
AH
28
AJ
29
V(G) = (E – N) + 2
= (3 - 29) + 2
=9
PATH :
Path 1 = 1,2,3,4,5,6,7,8,5
Path 2 = 1,2,3,4,5,6,7,8,9,10,11,2
Path 3 = 1,2,3,4,5,6,7,9,12,13,2
Path 4 = 1,2,3,14.15,2
Path 5 = 1,2,3,14,16,17,2
Path 6 = 1,2,3,14,16,18,19.20,21,22,23,24,2
Path 7 = 1,2,3,14,16,18,19,20,21,22,25,2
Path 8 = 1,2,3,14,16,18,26,27,2
Path 9 = 1,2,3,14,16,18,26,28,29
-Tambah kamar
-Cari
-Refresh
-Edit
-Hapus
-Kembali
-Nomor kamar
? Tambah kamar -Maks.Tamu/kamar
-Tipe kamar
-Tambah kamar
-Batal
Batal
? refresh
-Nomor kamar
-Maks.Tamu/kamar
? Edit
-Tipe kamar
-status kamar
-Update kamar
-Kembali
Kembali
? Hapus
Kembali
C E
3 4 5
F
6
K
G
H J
7 8 9
I
L
10
M O P
11 12 13
Q S
14 15
T V
16 17 18
W
19
X
Y AA AB
20 21 22
Z
AC
23
AD AF
24 25
26
27
V(G) = (E-N) +
= (33-27) + 2
=8
V(6) = P+1
= 7+1
=8
Path
Path 1 = 1,2,3,4,5,6,7,8,9,2
Path 2 = 1,2,3,4,5,6,7,10,2
Path 3 = 1,2,3,11,12,13,2
Path 4 = 1,2,3,11,14,15,12
Path 5 = 1,2,3,11,14,16,17,18,19,20,21,22,19
Path 6 = 1,2,3,,11,14,16,17,18,19,20,23,2
Path 7 = 1,2,3,11,14,16,24,25,2
Path 8 = 1,2,3,11,14,16,24,26,27
D.3
-Tambah tamu
-Edit
-Hapus
-Kembali
-Nama pengguna
-Batasan akses
-Jabatan
? Tambah Tamu -No. Telp/
Handphone
-Akun baru
-Clear
-Tambah User
-Batal
? Clear
Batal
-Nama pengguna
-Batasan akses
-Jabatan
? Edit
-No. Telp/
Handphone
-Akun baru
-Clear
-Tambah User
-Batal
? Clear
Batal
? Hapus
Kembali
E
C
3 4 5
F
R3
R2
6
J
G
D H
7 8
I
M N
K
9 10 11
R4
L
12 O
P R
13 14 15
S
W
16 R5
U R6
Q
17 18
V
Z
X
19 20 21 AA
R7
Y
22 AB
R8
AC
23 24 AE
AD
25
AF
26
V(6) = (E-N)+2
=(32-26)+2
=8
V(6) = P+1
= 7+1
=8
Path :
P1 = 1,2,3,4,5,6,7,8,5
P2 = 1,2,3,4,5,6,7,9,10,11,2
Path 3 = 1,2,3,4,5,6,7,9,12,2
Path 4 = 1,2,3,13,14,15,16,17,18,15
Path 5 = 1,2,3,13,14,15,16,17,19,2,21,22
Path 6 = 1,2,3,13,14,15,16,17,19,22,2
Path 7 = 1,2,3,13,23,24,2
Path 8 = 1,2,3,13,23,25,26
Matriks Data
V(G) = P+1
= 5+1
=6
Path:
Path 1 : 1,2,3,4,2
Path 2 : 1,2,3,5,6,2
Path 3 : 1,2,3,5,7,8,2
Path 4 : 1,2,3,5,7,9,10,2
Path 5 : 1,2,3,5,7,9,11,12,2
Path 6 : 1,2,3,5,7,9,11,13
NO
TANGGAL TRANSAKSI TOTAL BIAYA KAMAR
Kembali
Total Pendapatan : Rp 0
Do While dr.Read()
jumlah = jumlah + 1
cb_tamu.Items.Add(dr.Item("tamu_nama_depan") & " " &
dr.Item("tamu_nama_belakang"))
arrIdentitas(jumlah) = dr.Item("tamu_id")
Loop
End Sub
' fungsi label untuk link menuju tambah tamu (event click)
Private Sub lbl_link_Click(sender As Object, e As EventArgs) Handles
lbl_link.Click
Dim tambah_tamu As control_tambah_tamu = New control_tambah_tamu
6 menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(tambah_tamu)
End Sub
datetime1 = Me.date_checkin.Value
datetime2 = Me.date_checkout.Value
selisih = datetime2.Subtract(datetime1)
jumlah_hari = selisih.Days
7
If date_checkout.Value < date_checkin.Value Then
MessageBox.Show("Maaf, anda salah memasukkan tanggal Check
Out")
ElseIf date_checkout.Value = date_checkin.Value Then
jumlah_hari = jumlah_hari + 1
MessageBox.Show("Maaf, anda harus pesan kamar minimal 1 malam")
Else
jumlah_hari = jumlah_hari
Call transaksi_kamar()
End If
End Sub
Sub transaksi_kamar()
Else
8 kata = cb_maxTamu.Text
temp5 = kata.Substring(0, (kata.Length - 5))
pilihan = cb_tamu.SelectedIndex
Call koneksi()
Try
If dr.HasRows Then
' untuk mengubah status kamar yang dipilih menjadi status TERPAKAI
Call koneksi()
Dim update As String
update = "update kamar set kamar_status='TERPAKAI' where kamar_no='"
& lbl_no_kamar.Text & "'"
cmd = New MySqlCommand(update, conn)
9 cmd.ExecuteNonQuery()
Dim check_in As control_check_in = New control_check_in
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(check_in)
End If
10
Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
End Try
Else
MessageBox.Show("Maaf, jumlah tamu yang tersedia pada
kamar ini hanya " & lbl_max_tamu.Text)
cb_maxTamu.SelectedItem = lbl_max_tamu.Text
End If
End If
End Sub
End Sub
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu1)
End Sub
End Class
Laporan Kembali
Y
-Tgl/Waktu Chek in
? Laporan
-Tgl/ Waktu Check out
T
Kembali -Lapran
-Refresh
-Kembali
Y
X
? Laporan
T
Y
? Refresh
Kembali
B
C E
3 4 5
R1 F
D
6
12 G R2
O
H
7 8
R3 J
I
K
13 9 10 M
L R4
11
N
Matriks laporan