Selasa, 02 Juni 2015



Awlydn's Cake and Beverages


Dalam UAS Konsep Pemrograman kali ini, saya membuat aplikasi untuk admin dari Awlydn's Cake and Beverages agar dapat lebih mudah dalam menginput dan mencatat data penjualan.

Disini saya membuat 8 form, yaitu :
1. Form Login
2. Form Welcome To Awlydn's Cake and Beverages
3. Form Awlydn's Cake and Beverages Menu
4. Form Profil Owner
5. Form Purchase Order
6. Form Cake's Detail
7. Form Beverage's Detail
8. Form Cetak Resi

Berikut adalah penjelasan dari masing-masing form yang saya buat :



Form ini berfungsi untuk login ke dalam aplikasi Awlydn's Cake and Beverages. Login dapat dilakukan oleh admin dan oleh semua orang yang ingin melihat web dari Awlydn's Cake and Beverages ini. Apabila yang mengisi adalah admin, maka ia harus mengisikan username dan password yang sesuai dengan apa yang diminta. Usernamenya adalah sarahawliya25 dan passwordnya adalah sarahawliyadini. Dan apabila yang ingin masuk hanyalah pengunjung web atau orang yang ingin melihat web dari Awlydn's Cake and Beverages, maka ia tidak perlu mengisikan username dan password. Ia cukup mengklik button "Visit" saja.

(Kasus 1 : Yang ingin login adalah admin) 
Apabila admin salah mengisi username dan password, maka akan muncul messagebox seperti berikut ini :

Namun apabila admin benar mengisikan username dan password, maka form yang keluar adalah sebagai berikut :


Admin harus menginput :
1. Tanggal, Bulan dan Tahun
2. Nama Pelanggan
3. Nomer Telepon
4. Email
5. Alamat
6. Kota
7. Pesanan (Bisa dipilih sesuai menu yang tersedia, yaitu : Strawberry Cake, Green Tea Cake, Oreo Cheese Cake, Blueberry Cake, Macarons, Cupcakes, Hazelnut Chocolate Milk Tea, Frappucino, Green Tea Latte dan Strawberry Frappe)
8. Jumlah masing-masing dari setiap pesanan 

Ketika combobox kota dipilih, maka secara otomatis textbox ongkos kirim akan terisi tergantung dengan jauhnya tujuan pengiriman. Jabodetabek adalah sebesar Rp. 10.000, Bandung sebesar Rp. 15.000 dan Luar Jabodetabek dan Bandung sebesar Rp. 20.000.

Ketika admin menginput nama pesanan, maka secara otomatis harga satuan dari masing-masing pesanan tersebut akan muncul. Dan ketika admin menginput jumlah pemesanan dari masing-masing jenis pesanan, harga masing-masing total dari pesanan akan muncul juga di textbox sebelah kanannya. (Dalam kasus ini, Awlydn's Cake and Beverages menerapkan peraturan bahwa untuk pemesanan secara delivery harus memesan minimal 3 jenis menu yang disediakan).

Textbox  total harga pesanan akan secara otomatis terisi apabila semua textbox harga total/item terisi. Dan textbox pajakpun juga akan terisi secara otomatis dengan perhitungan bahwa pajaknya adalah 10% dari harga total pemesanan.

Ketika semua sudah terisi, maka admin tinggal mengklik button "Total" untuk mengetahui jumlah harga keseluruhan yang harus dibayarkan oleh pembeli.

Berikut adalah contoh form Purchase Order yang sudah terisi :



Apabila admin sudah menyelesaikan tugasnya hingga step klik button "Total", hal yang harus dilakukan setelah itu adalah mengklik button simpan. Apabila button simpan sudah di klik, maka akan muncul data pemesan seperti berikut ini didalam listbox :


Selanjutnya, demi menjaga kerahasiaan dan keamanan perusahaan, Awlydn's Cake and Beverages memprogram aplikasinya sehingga apabila admin ingin menginput data pembelian selanjutnya, ia harus kembali ke halaman awal (login) dan mengisikan username dan password, baru setelah itu bisa masuk lagi ke halaman purchase order.

Untuk memastikan pesanan yang diorder oleh pembeli sekaligus mengarsipkan data penjualan, Awlydn's Cake and Beverage juga mempunyai form resi yang bisa diprint dan diberikan sebagai tanda bukti terima dari pembeli. Formnya adalah sebagai berikut :


(Kasus 2 : Yang ingin login adalah pengunjung web Awlydn's Cake and Beverages)


Untuk para pengunjung web Awlydn's Cake and Beverages, tidak perlu mengisikan username dan password apapun untuk  dapat masuk ke halaman selanjutnya. Ia cukup mengklik button "Visit", lalu selanjutnya ia bisa melihat menu yang disediakan di web Awlydn's Cake and Beverages, seperti berikut ini :

Apabila sudah masuk ke halaman tersebut, maka kita dapat melihat 2 buah button yang masing-masing merujuk kepada menu dan profil owner. Ketika kita mengklik button "Awlydn's Menu", maka kita akan melihat form sebagai berikut :


Disini kita dapat memilih apakah menu yang mau kita lihat. Apakah itu cakenya ataupun beveragesnya. Apabila kita memiih "Awlydn's Cake, maka akan muncul form sebagai berikut :


Lalu apabila kita mengklik button back, maka kita akan kembali ke halaman sebelumnya seperti sebagai berikut ini :



Nah, apabila kita ingin melihat menu beverages apa saja yang disediakan oleh Awlydn's Cake and Beverages, maka kita hanya tinggal mengklik "Awlydn's Beverages", dan akan muncul form sebagai berikut :
 


Sama seperti sebelumnya, apabila kita mengklik button back, kita dapat kembali ke halaman cake and beverages menu. Lalu apabila kita mengklik "Back to Menu" kita akan kembali ke form Welcome to Awlydn's Cake and Beverages dan dapat melihat form Profil Owner seperti sebagai berikut :


Apabila pengunjung web sudah selesai melihat-lihat apa saja isi dari web Awlydn's Cake and Beverages, ia tinggal mengklik button "Close" untuk keluar dari halaman ini. Namun apabila pengunjung web ingin kembali melihat halaman web Awlydn's Cake and Beverages yang lain, ia hanya tinggal mengklik button "Back".

SOURCE CODE

Sources Code Form 1 (Login)

Public Class Login

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm5 As New PurchaseOrder
        Dim NewFrm2 As New Welcome
        If TextBox1.Text = "sarahawliya25" And TextBox2.Text = "sarahawliyadini" Then
            NewFrm5.Show()
            Me.Hide()
        ElseIf MsgBox("Terjadi Kesalahan Dalam Penginputan Username dan Password, Silahkan Coba Lagi", MsgBoxStyle.Critical, "Peringatan") Then
            TextBox1.Text = ""
            TextBox2.Text = ""
            TextBox1.Focus()

        End If
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Me.Close()
    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim Frm2 As New Welcome
        Frm2.Show()
        Me.Hide()
    End Sub
End Class


Sources Code Form 2 (Welcome To Awlydn's Cake and Beverages)

Public Class Welcome
    Dim NewFrm3 As New Form3
    Dim NewFrm4 As New Form4
    Dim NewFrm5 As New PurchaseOrder

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm3 As New Form3
        NewFrm3.Show()
        Me.Hide()

    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim NewFrm4 As New Form4
        NewFrm4.Show()
        Me.Hide()
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs)
        Dim NewFrm5 As New PurchaseOrder
        NewFrm5.Show()
        Me.Hide()
    End Sub
End Class


Sources Code Form 3 (Awlydn's Cake and Beverages Menu)

Public Class Form3

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm6 As New Form6
        NewFrm6.Show()
        Me.Hide()
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim NewFrm7 As New Form7
        NewFrm7.Show()
        Me.Hide()
    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim NewFrm2 As New Welcome
        NewFrm2.Show()
        Me.Hide()
    End Sub
End Class


Sources Code Form 4 (Profil Owner)

Public Class Form4

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm2 As New Welcome
        NewFrm2.Show()
        Me.Hide()
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Me.Close()
    End Sub
End Class


Sources Code Form 5 (Purchase Order)

Public Class PurchaseOrder

    Private Sub ComboBoxPesanan1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxPesanan1.SelectedIndexChanged
        If ComboBoxPesanan1.Text = "Strawberry Cake" Then
            TextBoxHarga1.Text = "25.000"
        ElseIf ComboBoxPesanan1.Text = "Oreo Cheese Cake" Then
            TextBoxHarga1.Text = "27.500"
        ElseIf ComboBoxPesanan1.Text = "Blueberry Cake" Then
            TextBoxHarga1.Text = "22.500"
        ElseIf ComboBoxPesanan1.Text = "Green Tea Cake" Then
            TextBoxHarga1.Text = "27.500"
        ElseIf ComboBoxPesanan1.Text = "Macarons" Then
            TextBoxHarga1.Text = "10.500"
        ElseIf ComboBoxPesanan1.Text = "Cupcakes" Then
            TextBoxHarga1.Text = "15.000"
        ElseIf ComboBoxPesanan1.Text = "Frappucino" Then
            TextBoxHarga1.Text = "30.000"
        ElseIf ComboBoxPesanan1.Text = "Hazelnut Chocolate Milk Tea" Then
            TextBoxHarga1.Text = "27.500"
        ElseIf ComboBoxPesanan1.Text = "Green Tea Latte" Then
            TextBoxHarga1.Text = "22.500"
        ElseIf ComboBoxPesanan1.Text = "Strawberry Frappe" Then
            TextBoxHarga1.Text = "25.000"
        End If
    End Sub

    Private Sub ComboBoxPesanan2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxPesanan2.SelectedIndexChanged
        If ComboBoxPesanan2.Text = "Strawberry Cake" Then
            TextBoxHarga2.Text = "25.000"
        ElseIf ComboBoxPesanan2.Text = "Oreo Cheese Cake" Then
            TextBoxHarga2.Text = "27.500"
        ElseIf ComboBoxPesanan2.Text = "Blueberry Cake" Then
            TextBoxHarga2.Text = "22.500"
        ElseIf ComboBoxPesanan2.Text = "Green Tea Cake" Then
            TextBoxHarga2.Text = "27.500"
        ElseIf ComboBoxPesanan2.Text = "Macarons" Then
            TextBoxHarga2.Text = "10.500"
        ElseIf ComboBoxPesanan2.Text = "Cupcakes" Then
            TextBoxHarga2.Text = "15.000"
        ElseIf ComboBoxPesanan2.Text = "Frappucino" Then
            TextBoxHarga2.Text = "30.000"
        ElseIf ComboBoxPesanan2.Text = "Hazelnut Chocolate Milk Tea" Then
            TextBoxHarga2.Text = "27.500"
        ElseIf ComboBoxPesanan2.Text = "Green Tea Latte" Then
            TextBoxHarga2.Text = "22.500"
        ElseIf ComboBoxPesanan2.Text = "Strawberry Frappe" Then
            TextBoxHarga2.Text = "25.000"
        End If
    End Sub

    Private Sub ComboBoxPesanan3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxPesanan3.SelectedIndexChanged
        If ComboBoxPesanan3.Text = "Strawberry Cake" Then
            TextBoxHarga3.Text = "25.000"
        ElseIf ComboBoxPesanan3.Text = "Oreo Cheese Cake" Then
            TextBoxHarga3.Text = "27.500"
        ElseIf ComboBoxPesanan3.Text = "Blueberry Cake" Then
            TextBoxHarga3.Text = "22.500"
        ElseIf ComboBoxPesanan3.Text = "Green Tea Cake" Then
            TextBoxHarga3.Text = "27.500"
        ElseIf ComboBoxPesanan3.Text = "Macarons" Then
            TextBoxHarga3.Text = "10.500"
        ElseIf ComboBoxPesanan3.Text = "Cupcakes" Then
            TextBoxHarga3.Text = "15.000"
        ElseIf ComboBoxPesanan3.Text = "Frappucino" Then
            TextBoxHarga3.Text = "30.000"
        ElseIf ComboBoxPesanan3.Text = "Hazelnut Chocolate Milk Tea" Then
            TextBoxHarga3.Text = "27.500"
        ElseIf ComboBoxPesanan3.Text = "Green Tea Latte" Then
            TextBoxHarga3.Text = "22.500"
        ElseIf ComboBoxPesanan3.Text = "Strawberry Frappe" Then
            TextBoxHarga3.Text = "25.000"
        End If
    End Sub
    Private Function total1(ByVal pesanan1 As Integer, harga1 As Integer)
        total1 = pesanan1 * harga1
    End Function
    Private Sub TextBoxPesanan1_TextChanged(sender As Object, e As EventArgs) Handles TextBoxPesanan1.TextChanged
        TotalperItem1.Text = total1(TextBoxPesanan1.Text, TextBoxHarga1.Text)
    End Sub
    Private Function total2(ByVal pesanan2 As Integer, harga2 As Integer)
        total2 = pesanan2 * harga2
    End Function
    Private Sub TextBoxPesanan2_TextChanged(sender As Object, e As EventArgs) Handles TextBoxPesanan2.TextChanged
        TotalperItem2.Text = total2(TextBoxPesanan2.Text, TextBoxHarga2.Text)
    End Sub
    Private Function total3(ByVal pesanan3 As Integer, harga3 As Integer)
        total3 = pesanan3 * harga3
    End Function
    Private Sub TextBoxPesanan3_TextChanged(sender As Object, e As EventArgs) Handles TextBoxPesanan3.TextChanged
        TotalperItem3.Text = total3(TextBoxPesanan3.Text, TextBoxHarga3.Text)

        TextBoxTotalHP.Text = Val(TotalperItem1.Text) + Val(TotalperItem2.Text) + Val(TotalperItem3.Text)
    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBoxKota.SelectedIndexChanged
        If ComboBoxKota.Text = "Jakarta" Then
            TextBoxOngkir.Text = "10.000"
        ElseIf ComboBoxKota.Text = "Bogor" Then
            TextBoxOngkir.Text = "10.000"
        ElseIf ComboBoxKota.Text = "Depok" Then
            TextBoxOngkir.Text = "10.000"
        ElseIf ComboBoxKota.Text = "Tangerang" Then
            TextBoxOngkir.Text = "10.000"
        ElseIf ComboBoxKota.Text = "Bekasi" Then
            TextBoxOngkir.Text = "10.000"
        ElseIf ComboBoxKota.Text = "Bandung" Then
            TextBoxOngkir.Text = "15.000"
        ElseIf ComboBoxKota.Text = "Luar Jabodetabek" Then
            TextBoxOngkir.Text = "20.000"
        End If
    End Sub

    Private Sub TextBoxTotalHP_TextChanged(sender As Object, e As EventArgs) Handles TextBoxTotalHP.TextChanged
        TextBoxPajak.Text = Val(0.1 * TotalperItem1.Text) + Val(0.1 * TotalperItem2.Text) + Val(0.1 * TotalperItem3.Text)
    End Sub
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        TextBoxTotalHarga.Text = Val(TextBoxTotalHP.Text) + Val(TextBoxPajak.Text) + Val(TextBoxOngkir.Text)
    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim varian1 As Object
        Dim varian2 As Object
        Dim varian3 As Object
        Dim varian4 As Object
        Dim varian5 As Object
        Dim varian6 As Object
        Dim varian7 As Object
        Dim varian8 As Object
        Dim varian9 As Object
        Dim varian10 As Object
        Dim varian11 As Object
        Dim varian12 As Object
        Dim varian13 As Object
        Dim varian14 As Object
        Dim varian15 As Object

        varian1 = TextBoxNamaPelanggan.Text
        varian2 = TextBoxNomerTelepon.Text
        varian3 = TextBoxEmail.Text
        varian4 = RichTextBoxAlamat.Text
        varian5 = ComboBoxKota.Text
        varian6 = ComboBoxPesanan1.Text
        varian7 = TextBoxPesanan1.Text
        varian8 = ComboBoxPesanan2.Text
        varian9 = TextBoxPesanan2.Text
        varian10 = ComboBoxPesanan3.Text
        varian11 = TextBoxPesanan3.Text
        varian12 = TextBoxTotalHP.Text
        varian13 = TextBoxOngkir.Text
        varian14 = TextBoxPajak.Text
        varian15 = TextBoxTotalHarga.Text

        ListBox1.Items.Add(varian1 & "---" & varian2 & "---" & varian3 & "---" & varian4 & "---" & varian5 & "---" & varian6 & "---" & varian7 & "---" & varian8 & "---" & varian9 & "---" & varian10 & "---" & varian11 & "---" & varian12 & "---" & varian13 & "---" & varian14 & "---" & varian15)
    End Sub

    Private Sub Form5_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Dim Bulan() As String = {"Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"}

        ComboBox2.Items.Add(Bulan(0))
        ComboBox2.Items.Add(Bulan(1))
        ComboBox2.Items.Add(Bulan(2))
        ComboBox2.Items.Add(Bulan(3))
        ComboBox2.Items.Add(Bulan(4))
        ComboBox2.Items.Add(Bulan(5))
        ComboBox2.Items.Add(Bulan(6))
        ComboBox2.Items.Add(Bulan(7))
        ComboBox2.Items.Add(Bulan(8))
        ComboBox2.Items.Add(Bulan(9))
        ComboBox2.Items.Add(Bulan(10))
        ComboBox2.Items.Add(Bulan(11))


        Dim Tanggal As Integer

        For Tanggal = 1 To 31 Step +1
            ComboBox1.Items.Add(Tanggal)
        Next

        Dim Tahun As String
        Tahun = 2015
        While Tahun <= 2020
            ComboBox3.Items.Add(Tahun)
            Tahun = Tahun + 1

        End While
    End Sub
    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Dim NewFrm1 As New Login
        If (MsgBox("Apakah Anda Ingin Kembali ke Halaman Awal?", vbYesNo + MsgBoxStyle.Question, "Konfirmasi") = vbYes) Then
            NewFrm1.Show()
            Me.Hide()
        End If
    End Sub

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim Frm8 As New Form8
        Frm8.Show()
        Me.Hide()
    End Sub
End Class


Sources Code Form 6 (Cake Detail)

Public Class Form6

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm3 As New Form3
        NewFrm3.Show()
        Me.Hide()
    End Sub
End Class



Sources Code Form 7 (Beverages Detail)

Public Class Form7

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim NewFrm3 As New Form3
        NewFrm3.Show()
        Me.Hide()
    End Sub
End Class


Sources Code Form 8 (Cetak Resi)

Public Class Form8
    Private Sub Form8_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Label7.Text = DateAndTime.Now
        TextBoxNamaPelanggan.Text = PurchaseOrder.TextBoxNamaPelanggan.Text
        TextBoxNomerTelepon.Text = PurchaseOrder.TextBoxNomerTelepon.Text
        RichTextBoxAlamat.Text = PurchaseOrder.RichTextBoxAlamat.Text
        TextBoxPesanan1.Text = PurchaseOrder.ComboBoxPesanan1.Text
        TextBoxPesanan2.Text = PurchaseOrder.ComboBoxPesanan2.Text
        TextBoxPesanan3.Text = PurchaseOrder.ComboBoxPesanan3.Text
        TextBoxTotalHP.Text = PurchaseOrder.TextBoxTotalHP.Text
        TextBoxOngkir.Text = PurchaseOrder.TextBoxOngkir.Text
        TextBoxPajak.Text = PurchaseOrder.TextBoxPajak.Text
        TextBoxTotalHarga.Text = PurchaseOrder.TextBoxTotalHarga.Text


    End Sub
End Class