Пример #1
0
        /// <summary>
        /// Menghapus details transaksi
        /// </summary>
        private void RemoveDetails()
        {
            utils = new Ultilities();

            for (int i = 0; i < _kode.Count; i++)
            {
                if (_kode[i] != null)
                {
                    utils.ClearLabel(lblDetailBarang, _name[i]);
                    utils.ClearLabel(lblDetailKode, _kode[i]);
                    utils.ClearLabel(lblDetailJenis, _jenis[i]);
                    utils.ClearLabel(lblDetailJumlah, _jumlah[i].ToString());
                    if (_diskon[i] > 0)
                    {
                        utils.ClearLabel(lblDetailHarga, "Rp" + _harga[i].ToString("N0") + " (" + _diskon[i] + "%)");
                    }
                    else
                    {
                        utils.ClearLabel(lblDetailHarga, "Rp" + _harga[i].ToString("N0"));
                    }
                }
            }

            if (_kode.Count == 0)
            {
                utils.ClearLabel(lblDetailBarang, "?");
                utils.ClearLabel(lblDetailKode, "?");
                utils.ClearLabel(lblDetailJenis, "?");
                utils.ClearLabel(lblDetailJumlah, "?");
                utils.ClearLabel(lblDetailHarga, "?");
            }
        }
Пример #2
0
        /// <summary>
        /// Menghapus barang dari database
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnHapus_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();

            if (indexBarang != string.Empty)
            {
                try
                {
                    barang.RemoveBarang(indexBarang);
                    utils.ShowMessage("Barang berhasil terhapus!", "Hapus Barang Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    //Melakukan refresh UI
                    ClearText();
                    indexBarang = string.Empty;

                    /* Menjalankan method di background
                     * hal ini mencegah terjadinya crash jika melakukan
                     * load barang dalam jumlah gede
                     * */
                    Thread daftar = new Thread(() => GetDaftarBarang());
                    daftar.Start();
                }
                catch (Exception ex)
                {
                    utils.ShowMessage(ex.Message, "Eror", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #3
0
        /// <summary>
        /// Proses login akun
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnLogin_Click(object sender, EventArgs e)
        {
            acc     = new Account();
            encrypt = new Encryption();
            utils   = new Ultilities();

            if (txtUsername.Text != string.Empty &&
                txtPassword.Text != string.Empty)
            {
                if (acc.Login(txtUsername.Text, encrypt.HashPassword(txtPassword.Text)))
                {
                    /* Menyimpan username yang berhasil login ke variable username
                     * yang berguna untuk diambill melalui form utama
                     * */
                    username = txtUsername.Text;
                    isLogged = true;

                    utils.ShowMessage("Berhasil login!", "Login Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    if (Properties.Settings.Default.RememberID)
                    {
                        Properties.Settings.Default.Username = username;
                        Properties.Settings.Default.Save();
                    }

                    this.Close();
                }
                else
                {
                    utils.ShowMessage("Username / password salah!", "Gagal Login", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtPassword.Text = string.Empty;
                }
            }
        }
Пример #4
0
        /// <summary>
        /// Menambah barang baru
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnTambah_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();

            if (txtKode.Text != string.Empty &&
                txtNamaBarang.Text != string.Empty &&
                comboJenisBarang.Text != string.Empty &&
                txtSupplier.Text != string.Empty &&
                txtStock.Text != string.Empty &&
                txtHargaJual.Text != string.Empty &&
                txtHargaBeli.Text != string.Empty &&
                txtBiayaProduksi.Text != string.Empty)
            {
                if (!barang.isBarangExists(txtNamaBarang.Text) &&
                    !barang.isKodeExists(txtKode.Text))
                {
                    try
                    {
                        int terjual = 0;

                        barang.AddBarang(txtKode.Text
                                         , txtNamaBarang.Text
                                         , comboJenisBarang.Text
                                         , txtSupplier.Text
                                         , int.Parse(txtStock.Text)
                                         , int.Parse(txtHargaJual.Text)
                                         , int.Parse(txtHargaBeli.Text)
                                         , int.Parse(txtBiayaProduksi.Text)
                                         , terjual);

                        utils.ShowMessage("Berhasil menambah barang", "Tambah Barang Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        //Clear Textbox
                        ClearText();

                        /* Menjalankan method di background
                         * hal ini mencegah terjadinya crash jika melakukan
                         * load barang dalam jumlah gede
                         * */
                        Thread daftar = new Thread(() => GetDaftarBarang());
                        daftar.Start();
                    }
                    catch (Exception ex)
                    {
                        utils.ShowMessage(ex.Message, "Eror", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    utils.ShowMessage("Barang tersebut sudah ada!", "Gagal Tambah Barang", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                utils.ShowMessage("Silahkan isi semua bagian", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #5
0
        /// <summary>
        /// Mendapatkan detail user
        /// seperti firstname, lastname dan email
        /// </summary>
        private void GetDetails()
        {
            acc   = new Account();
            utils = new Ultilities();

            utils.ClearTextBox(txtFirstname, acc.GetFirstname(username));
            utils.ClearTextBox(txtLastname, acc.GetLastname(username));
            utils.ClearTextBox(txtEmail, acc.GetEmail(username));
        }
Пример #6
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();
            if (txtJumlah.Text != string.Empty)
            {
                if (txtStock.Text == "0")
                {
                    utils.ShowMessage("Stock barang telah habis!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return;
                }

                listKeranjang.Items.Clear();

                if (comboDiskon.Text == string.Empty)
                {
                    comboDiskon.SelectedIndex = 0;
                }
                int hargaBarang = int.Parse(txtHargaBarang.Text);

                if (int.Parse(comboDiskon.Text.Replace("%", "")) > 0)
                {
                    int subt = hargaBarang * int.Parse(comboDiskon.Text.Replace("%", "")) / 100;
                    hargaBarang -= subt;
                }

                AddKeranjang(comboBarang.Text, int.Parse(txtJumlah.Text), hargaBarang, int.Parse(comboDiskon.Text.Replace("%", "")));

                //Menambah biaya
                AddTotalBiaya(hargaBarang, int.Parse(txtJumlah.Text));
                AddDetails(comboBarang.Text, txtKode.Text, txtJenisBarang.Text, hargaBarang, int.Parse(txtJumlah.Text));

                for (int i = 0; i < _name.Count; i++)
                {
                    rows[0] = "Rp" + _harga[i].ToString("N0");
                    rows[1] = _jumlah[i].ToString();

                    listKeranjang.Items.Add(_name[i], 0).SubItems.AddRange(rows);
                }

                //Refresh UI
                comboBarang.SelectedIndex = -1;
                comboDiskon.SelectedIndex = -1;
                utils.ClearTextBox(txtKode, string.Empty);
                utils.ClearTextBox(txtJenisBarang, string.Empty);
                utils.ClearTextBox(txtSupplier, string.Empty);
                utils.ClearTextBox(txtStock, string.Empty);
                utils.ClearTextBox(txtHargaBarang, string.Empty);
                utils.ClearTextBox(txtJumlah, string.Empty);
            }
            else
            {
                utils.ShowMessage("Masukkan jumlah belanja", "Penambahan Gagal", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #7
0
        /// <summary>
        /// Mencari barang sesuai keyword dari database
        /// </summary>
        /// <param name="keyword"></param>
        private void searchSomething(string keyword)
        {
            myDb   = new DatabaseHelper();
            utils  = new Ultilities();
            barang = new BarangDataHelper();

            using (SQLiteConnection con = new SQLiteConnection(myDb.GetConnection()))
            {
                using (SQLiteCommand cmd = new SQLiteCommand("SELECT * FROM barang_list WHERE [Nama Barang] LIKE '%" + keyword + "%'", con))
                {
                    con.Open();
                    SQLiteDataReader reader = cmd.ExecuteReader();
                    int count = 0;
                    while (reader.Read())
                    {
                        dataGridBarang.Rows.Clear();
                        count++;
                        string obj    = reader.GetValue(reader.GetOrdinal("Harga Jual")).ToString();
                        string obj2   = reader.GetValue(reader.GetOrdinal("Harga Beli")).ToString();
                        string obj3   = reader.GetValue(reader.GetOrdinal("Biaya Produksi")).ToString();
                        string obj4   = reader.GetValue(reader.GetOrdinal("Terjual")).ToString();
                        int    untung = barang.Keuntungan(int.Parse(obj), int.Parse(obj2), int.Parse(obj3), int.Parse(obj4));

                        dataGridBarang.Rows.Add(new object[]
                        {
                            reader.GetValue(reader.GetOrdinal("ID")),
                            reader.GetValue(reader.GetOrdinal("Kode Barang")),
                            reader.GetValue(reader.GetOrdinal("Nama Barang")),
                            reader.GetValue(reader.GetOrdinal("Jenis Barang")),
                            reader.GetValue(reader.GetOrdinal("Supplier")),
                            reader.GetValue(reader.GetOrdinal("Stock Barang")),
                            "Rp" + int.Parse(obj).ToString("N0"),
                            "Rp" + int.Parse(obj2).ToString("N0"),
                            "Rp" + int.Parse(obj3).ToString("N0"),
                            obj4,
                            "Rp" + untung.ToString("N0")
                        });
                    }
                    if (count < 1)
                    {
                        utils.ShowMessage("Pencarian tidak ditemukan!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        search         = false;
                        txtCari.Text   = string.Empty;
                        btnSearch.Text = "Search";

                        //Mengembalikan keadaan semula
                        Thread daftar = new Thread(() => GetDaftarBarang());
                        daftar.Start();
                    }
                    con.Close();
                }
            }
        }
Пример #8
0
 /// <summary>
 /// Membersihkan text Textbox
 /// </summary>
 private void ClearText()
 {
     utils = new Ultilities();
     utils.ClearTextBox(txtKode, string.Empty);
     utils.ClearTextBox(txtNamaBarang, string.Empty);
     comboJenisBarang.SelectedIndex = -1;
     utils.ClearTextBox(txtSupplier, string.Empty);
     utils.ClearTextBox(txtStock, string.Empty);
     utils.ClearTextBox(txtHargaJual, string.Empty);
     utils.ClearTextBox(txtHargaBeli, "0");
     utils.ClearTextBox(txtBiayaProduksi, "0");
 }
Пример #9
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     utils = new Ultilities();
     if (txtCash.Text != string.Empty)
     {
         this.Close();
     }
     else
     {
         utils.ShowMessage("Nominal Cash tidak boleh kosong!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     }
 }
Пример #10
0
        private void Main_Load(object sender, EventArgs e)
        {
            //Melakukan calling objek class
            myDb   = new DatabaseHelper();
            myFile = new FileManager(myDb.DatabaseName);
            utils  = new Ultilities();

            //Pengecekan file database tersedia
            if (!myFile.isFileExists())
            {
                myDb.CreateDatabase();
                int num = 0;
                myDb.InsertTotalTransaksi(num);
            }


            //Authentication Login Account
            if (Authentication())
            {
                //Melakukan seleksi tab control ke detail transaksi
                metroTabControl1.SelectedIndex = 0;

                //Membuat Kolom yang diperlukan
                CreateBelanjaColumns();
                CreateBarangTerlarisColumns();

                //Mendapatkan biodata user
                GetBiodata();

                //Mendapatkan total profit
                GetProfit();
                //Mendapatkan total barang
                GetTotalBarang();
                //Mendapatkan total stock barang
                GetTotalStock();

                //Mendapatkan daftar barang
                GetDaftarBarang();

                //Mendapatkan nomor diskon
                GetDiscNum();

                //Mendapatkan daftar transaksi
                GetTransaksi();

                //Mendapatkan total nominal transaksi
                GetTotalPay();

                //Mendapatkan barang terlaris
                GetBarangTerlaris();
            }
        }
Пример #11
0
        private void btnChoose_Click(object sender, EventArgs e)
        {
            utils = new Ultilities();

            Choose _choose = new Choose();

            _choose.ShowDialog();

            try
            {
                comboBarang.SelectedIndex = comboBarang.Items.IndexOf(_choose.barangChoose);
            }
            catch (Exception ex)
            {
                utils.ShowMessage(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #12
0
        /// <summary>
        /// Berfungsi sebagai penampil details transaksi.
        /// </summary>
        /// <param name="name"></param>
        /// <param name="kode"></param>
        /// <param name="jenis"></param>
        /// <param name="harga"></param>
        private void AddDetails(string name, string kode, string jenis, int harga, int jumlah)
        {
            utils = new Ultilities();

            utils.ClearLabel(lblDetailBarang, name);
            utils.ClearLabel(lblDetailKode, kode);
            utils.ClearLabel(lblDetailJenis, jenis);
            utils.ClearLabel(lblDetailJumlah, jumlah.ToString());
            if (int.Parse(comboDiskon.Text.Replace("%", "")) > 0)
            {
                utils.ClearLabel(lblDetailHarga, "Rp" + harga.ToString("N0") + " (" + comboDiskon.Text + ")");
            }
            else
            {
                utils.ClearLabel(lblDetailHarga, "Rp" + harga.ToString("N0"));
            }
        }
Пример #13
0
        /// <summary>
        /// Menyimpan data perubahan details user
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSimpan_Click(object sender, EventArgs e)
        {
            acc   = new Account();
            utils = new Ultilities();

            if (txtEmail.Text != string.Empty &&
                txtFirstname.Text != string.Empty &&
                txtLastname.Text != string.Empty)
            {
                acc.UpdateUser(username, txtFirstname.Text, txtLastname.Text, txtEmail.Text);

                utils.ShowMessage("Berhasil menyimpan perubahan!", "Ubah Details Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                utils.ShowMessage("Field tidak boleh kosong!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #14
0
        /// <summary>
        /// Menambah Jenis Barang baru
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnTambah_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();

            if (txtJenis.Text != string.Empty)
            {
                if (!barang.isJenisExists(txtJenis.Text))
                {
                    try
                    {
                        //Menambahkan jenis barang baru
                        barang.AddJenisBarang(txtJenis.Text);

                        txtJenis.Text = string.Empty;
                        utils.ShowMessage("Berhasil menambah jenis barang!", "Tambah Jenis Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                        /* Setiap data yang dimasukkan, harus direfresh menggunakan
                         * method ini agar data yang ditambahkan ke database akan langsung
                         * bisa terlihat
                         * */
                        GetJenisData();
                    }
                    catch (Exception ex)
                    {
                        utils.ShowMessage(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    utils.ShowMessage("Jenis tersebut sudah ada!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                utils.ShowMessage("Silahkan masukkan jenis barang!", "Masukkan Jenis Barang", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #15
0
        /// <summary>
        /// Menghapus barang belanjaan
        /// dari keranjang belanja
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnRemove_Click(object sender, EventArgs e)
        {
            utils = new Ultilities();

            int count = 0;

            foreach (string name in _name)
            {
                if (name != null)
                {
                    count++;
                }
            }

            if (count > 0)
            {
                int index = _kode.Count;

                //Mengurangi harga total biaya
                RemoveTotalBiaya(_harga[index - 1], _jumlah[index - 1]);

                _kode.RemoveAt(index - 1);
                _name.RemoveAt(index - 1);
                _jenis.RemoveAt(index - 1);
                _supplier.RemoveAt(index - 1);
                _jumlah.RemoveAt(index - 1);
                _harga.RemoveAt(index - 1);
                _diskon.RemoveAt(index - 1);

                listKeranjang.Items.RemoveAt(index - 1);
                RemoveDetails();
            }
            else
            {
                utils.ShowMessage("Keranjang belanja kosong!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #16
0
        /// <summary>
        /// Melakukan perubahan data pada barang ke data baru
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSimpan_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();

            if (indexBarang != string.Empty)
            {
                try
                {
                    barang.UpdateBarang(txtKode.Text
                                        , txtNamaBarang.Text
                                        , comboJenisBarang.Text
                                        , txtSupplier.Text
                                        , int.Parse(txtStock.Text)
                                        , int.Parse(txtHargaJual.Text)
                                        , int.Parse(txtHargaBeli.Text)
                                        , int.Parse(txtBiayaProduksi.Text));

                    utils.ShowMessage("Berhasil mengubah data!", "Edit Barang Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    //Melakukan refresh UI
                    ClearText();
                    indexBarang = string.Empty;

                    /* Menjalankan method di background
                     * hal ini mencegah terjadinya crash jika melakukan
                     * load barang dalam jumlah gede
                     * */
                    Thread daftar = new Thread(() => GetDaftarBarang());
                    daftar.Start();
                }
                catch (Exception ex)
                {
                    utils.ShowMessage(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #17
0
        private void btnSimpanPW_Click(object sender, EventArgs e)
        {
            security = new Encryption();
            utils    = new Ultilities();
            acc      = new Account();

            if (txtPasswordLama.Text != string.Empty &&
                txtPasswordBaru.Text != string.Empty)
            {
                if (security.HashPassword(txtPasswordLama.Text) == acc.GetPassword(username))
                {
                    acc.UpdatePassword(username, security.HashPassword(txtPasswordBaru.Text));

                    utils.ShowMessage("Berhasil mengubah password", "Ubah Password Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    utils.ClearTextBox(txtPasswordLama, string.Empty);
                    utils.ClearTextBox(txtPasswordBaru, string.Empty);
                }
                else
                {
                    utils.ShowMessage("Password lama salah!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #18
0
        /// <summary>
        /// Menghapus Jenis Barang yang sudah ada
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnHapus_Click(object sender, EventArgs e)
        {
            barang = new BarangDataHelper();
            utils  = new Ultilities();

            /* Untuk menghapus beberapa jenis barang,
             * kita hanya perlu memilih jensi barang yang
             * sudah ada melalui combobox
             * */
            if (comboDaftarJenis.Text != string.Empty)
            {
                try
                {
                    barang.RemoveJenisBarang(comboDaftarJenis.Text);

                    utils.ShowMessage("Berhasil menghapus jenis barang!", "Hapus Jenis Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    GetJenisData();
                }
                catch (Exception ex)
                {
                    utils.ShowMessage(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #19
0
        private void btnBayar_Click(object sender, EventArgs e)
        {
            utils  = new Ultilities();
            barang = new BarangDataHelper();
            tss    = new Transaksi();

            string tanggal = DateTime.Now.ToString("dd-MM-yyyy");

            if (_kode.Count > 0)
            {
                Cash _cash = new Cash();
                _cash.ShowDialog();

                //Mengambil input nominal dari form cash
                cash = int.Parse(_cash.txtCash.Text);

                //Jika nominal lebih besar / sama dengan dari total biaya
                if (cash >= TotalBiaya)
                {
                    int newTotalTrans;
                    //Mengupdate total transaksi
                    newTotalTrans  = tss.GetTotalTransaksi();
                    newTotalTrans += 1;
                    tss.UpdateTotalTransaksi(newTotalTrans);

                    //Mengambil data pada keranjang belanja
                    for (int i = 0; i < _kode.Count; i++)
                    {
                        /* Mengambil value stock pada barang
                         * di keranjang belanja untuk langsung
                         * dikurangi dengan jumlah pembelian.
                         * */
                        int newStock = 0, newTerjual = 0;
                        for (int b = 0; b < barang.GetNama().Count; b++)
                        {
                            if (barang.GetNama()[b] == _name[i])
                            {
                                newStock   = barang.GetStock()[b];
                                newTerjual = barang.GetTerjual()[b];
                            }
                        }
                        //Mengupdate jumlah stock barang tersebut
                        newStock -= _jumlah[i];
                        barang.UpdateStock(_name[i], newStock);
                        //Mengupdate barang terjual
                        newTerjual += _jumlah[i];
                        barang.UpdateTerjual(_name[i], newTerjual);

                        //Mendapatkan ID Transaksi
                        string IDTransaksi = "TR" + tss.GetTotalTransaksi().ToString("00000");

                        //Menambah data transaksi ke dalam database
                        tss.AddTransaksi(IDTransaksi, _name[i], _kode[i], _jenis[i], _stock[i], _jumlah[i], _rawHarga[i], tanggal, username, _diskon[i], _harga[i]);
                    }

                    //Membersihkan keranjang belanja
                    ClearKeranjang();

                    //Mendapatkan data transaksi
                    GetTransaksi();

                    //Mendapatkan total Stock
                    GetTotalStock();

                    //Mendapatkan total profit
                    GetProfit();

                    //Mendapatkan total nominal transaksi
                    GetTotalPay();

                    //Mendapatkan barang terlaris
                    GetBarangTerlaris();

                    lblDetailTotalBiaya.Text = "Rp0";
                }
                else
                {
                    utils.ShowMessage("Nominal cash tidak mencukupi", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                utils.ShowMessage("Keranjang Belanjang kosong!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Пример #20
0
        private void btnInfoProfit_Click(object sender, EventArgs e)
        {
            utils = new Ultilities();

            utils.ShowMessage("Perolehan profit berdasarkan pada hasil\ndari harga jual barang dikurangi oleh\nharga beli barang.\nDan transaksi yang memakai diskon \nakan tetap mengambil value profit no diskon.", "Informasi", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Пример #21
0
        /// <summary>
        /// Proses pendaftaran account
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDaftar_Click(object sender, EventArgs e)
        {
            acc     = new Account();
            util    = new Ultilities();
            encrypt = new Encryption();

            if (txtUsername.Text != string.Empty &&
                txtPassword.Text != string.Empty &&
                txtConfirmPassword.Text != string.Empty &&
                txtEmail.Text != string.Empty &&
                txtFirstname.Text != string.Empty &&
                txtLastname.Text != string.Empty)
            {
                //Melakukan pengecekan kecocokan password dan confirm password
                if (txtPassword.Text == txtConfirmPassword.Text)
                {
                    //Username, Password harus terdiri lebih dari 8 karakter
                    if (txtPassword.Text.Length >= 8 &&
                        txtConfirmPassword.Text.Length >= 8 &&
                        txtUsername.Text.Length >= 8)
                    {
                        //Mendeteksi kevalidan email yang di mana terdapat tanda "@"
                        if (txtEmail.Text.Contains("@"))
                        {
                            try
                            {
                                if (!acc.isExistsData(txtUsername.Text))
                                {
                                    //Menambahkan akun yang terdaftar ke dalam database
                                    acc.Add(txtUsername.Text, encrypt.HashPassword(txtPassword.Text), txtEmail.Text, txtFirstname.Text, txtLastname.Text, "Kasir");

                                    util.ShowMessage("Berhasil mendaftar akun!", "Pendaftaran Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    this.Close();
                                }
                                else
                                {
                                    util.ShowMessage("Username tersebut sudah ada!", "Gagal Mendaftar", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                            catch (Exception ex)
                            {
                                util.ShowMessage(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                        else
                        {
                            util.ShowMessage("Alamat email tidak valid!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                    else
                    {
                        util.ShowMessage("Username dan Password harus\nterdiri lebih dari 8 karakter!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                }
                else
                {
                    util.ShowMessage("Password tidak sama!", "Gagal Mendaftar", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            else
            {
                util.ShowMessage("Silahkan isi semua bagian!", "Gagal Mendaftar", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }