コード例 #1
0
        private void btnBrowseKodePembelian_Click(object sender, EventArgs e)
        {
            frmBrowse browse = new frmBrowse("pembelian");

            browse.ShowDialog();
            Dictionary <string, string> datas = browse.getData();

            if (datas.Count > 0)
            {
                Supplier supplier = Supplier.FindOneById(Convert.ToInt32(datas["id_supplier"]));
                id_supplier           = supplier.getId();
                txtKodePembelian.Text = datas["kode"];
                txtSupplier.Text      = supplier.getNama();
                DataTable dt = PembelianDetail.FindByIdPembelian(Convert.ToInt32(datas["id"]));
                dgvPembelianDetail.DataSource = dt;
                dgvPembelianDetail.Refresh();

                decimal sum = 0;
                foreach (DataRow dr in dt.Rows)
                {
                    sum += Convert.ToDecimal(dr["harga_barang"]) * Convert.ToInt32(dr["kuantitas"]);
                }
                txtTotalHargaPembelian.Text = sum.ToString();
            }
        }
コード例 #2
0
        private void menuTransaction_Load(object sender, EventArgs e)
        {
            PembelianDetail pembelian = new PembelianDetail();
            PenjualanDetail penjualan = new PenjualanDetail();

            dataGridView_PembelianDetail.DataSource = pembelian.showDataPembelianDetail();
            dataGridView_PenjualanDetail.DataSource = penjualan.showDataPenjualanDetail();
        }
コード例 #3
0
        private void butDelPembelian_Click(object sender, EventArgs e)
        {
            PembelianDetail pd = new PembelianDetail();

            pd.setKode(kodePembelian.Text);
            pd.DeletePembelianDetail();
            MessageBox.Show("1 Record Succesfully Deleted");
            kodePembelian.Clear();
            dataGridView_PembelianDetail.DataSource = pd.showDataPembelianDetail();
            dataGridView_PembelianDetail.Refresh();
        }
コード例 #4
0
        private void frmLihatTransaksi_Shown(object sender, EventArgs e)
        {
            mtcDaftarTransaksi.SelectTab(0);
            dgvPembelian.DataSource = Pembelian.FindAll();
            dgvPembelian.Refresh();
            dgvPembelianDetail.DataSource = PembelianDetail.FindAll();
            dgvPembelianDetail.Refresh();
            dgvPenjualan.DataSource = Penjualan.FindAll();
            dgvPenjualan.Refresh();
            dgvPenjualanDetail.DataSource = PenjualanDetail.FindAll();
            dgvPenjualanDetail.Refresh();

            dtPembelian       = (DataTable)dgvPembelian.DataSource;
            dtPembelianDetail = (DataTable)dgvPembelianDetail.DataSource;
            dtPenjualan       = (DataTable)dgvPenjualan.DataSource;
            dtPenjualanDetail = (DataTable)dgvPenjualanDetail.DataSource;
        }
コード例 #5
0
        private void butEditPembelian_Click(object sender, EventArgs e)
        {
            PembelianDetail pd = new PembelianDetail();

            pd.setKode(kodePembelian.Text);
            pd.setSup(int.Parse(supPembelian.Text));
            pd.setidBrg(int.Parse(brgPembelian.Text));
            pd.sethrgBrg(int.Parse(hrgBrgPembelian.Text));
            pd.setQty(int.Parse(qtyBrgPembelian.Text));
            pd.settotalHrg(decimal.Parse(TotalPembelian.Text));
            pd.setupdated_at(DateTime.Now);
            pd.UpdatePembelianDetail();
            MessageBox.Show("1 Record Succesfully Updated");
            kodePembelian.Clear();
            supPembelian.Clear();
            brgPembelian.Clear();
            hrgBrgPembelian.Clear();
            qtyBrgPembelian.Clear();
            TotalPembelian.Clear();
            dataGridView_PembelianDetail.DataSource = pd.showDataPembelianDetail();
            dataGridView_PembelianDetail.Refresh();
        }
コード例 #6
0
        private void btnTambahPembelian_Click(object sender, EventArgs e)
        {
            foreach (Control ctrl in mtpPembelian.Controls)
            {
                if (ctrl is TextBox && ctrl.Text.Trim() == "" && ctrl.Name != "txtTotalHargaPembelian")
                {
                    MessageBox.Show("Data tidak boleh ada yang kosong.");
                    return;
                }
            }

            Pembelian pembelian     = Pembelian.FindOneByKode(txtKodePembelian.Text);
            Pembelian pembelianBaru = new Pembelian();

            if (pembelian == null)
            {
                pembelianBaru.setSupplier(Supplier.FindOneById(id_supplier));
                pembelianBaru.setKode(txtKodePembelian.Text);
                try
                {
                    pembelianBaru.Insert();
                    pembelian = Pembelian.FindOneByKode(pembelianBaru.getKode());
                }
                catch (Exception error)
                {
                    MessageBox.Show(error.Message);
                }
            }

            PembelianDetail pembelianDetail = PembelianDetail.
                                              FindOneByIdBarangAndIdPembelian(id_barang_pembelian, pembelian.getId());

            if (pembelianDetail == null)
            {
                PembelianDetail pembelianDetailBaru = new PembelianDetail();
                pembelianDetailBaru.setBarang(Barang.FindOneById(id_barang_pembelian));

                Barang barang = pembelianDetailBaru.getBarang();

                int kuantitas = Convert.ToInt32(txtKuantitasPembelian.Text);

                pembelianDetailBaru.setKuantitas(kuantitas);
                pembelianDetailBaru.setHargaBarang(Convert.ToDecimal(txtHargaBarangPembelian.Text));
                pembelianDetailBaru.setPembelian(pembelian);

                try
                {
                    pembelianDetailBaru.Insert();
                    barang.setJumlah(barang.getJumlah() + kuantitas);
                    barang.setHargaHpp(pembelianDetailBaru.getHargaBarang());
                    barang.Update();
                    MessageBox.Show("Barang dengan kode " + pembelianDetailBaru.getBarang().getKode() +
                                    " berhasil dimasukkan pada faktur dengan kode " + pembelian.getKode());
                }
                catch (Exception error)
                {
                    MessageBox.Show(error.Message);
                }
            }
            else
            {
                Barang barang        = pembelianDetail.getBarang();
                int    kuantitas     = Convert.ToInt32(txtKuantitasPembelian.Text);
                int    kuantitasLama = pembelianDetail.getKuantitas();
                pembelianDetail.setKuantitas(kuantitas);
                pembelianDetail.setHargaBarang(Convert.ToDecimal(txtHargaBarangPembelian.Text));

                if (kuantitas < 0)
                {
                    MessageBox.Show("Kuantitas tidak valid.");
                }
                else
                {
                    try
                    {
                        pembelianDetail.Update();
                        barang.setJumlah(barang.getJumlah() + kuantitas - kuantitasLama);
                        barang.setHargaHpp(pembelianDetail.getHargaBarang());
                        barang.Update();
                        MessageBox.Show("Barang dengan kode " + pembelianDetail.getBarang().getKode() +
                                        " pada faktur dengan kode " + pembelian.getKode());
                    }
                    catch (Exception error)
                    {
                        MessageBox.Show(error.Message);
                    }
                }
            }

            DataTable dt = PembelianDetail.FindByIdPembelian(pembelian.getId());

            dgvPembelianDetail.DataSource = dt;
            dgvPembelianDetail.Refresh();

            decimal sum = 0;

            foreach (DataRow dr in dt.Rows)
            {
                sum += Convert.ToDecimal(dr["harga_barang"]) * Convert.ToInt32(dr["kuantitas"]);
            }
            txtTotalHargaPembelian.Text = sum.ToString();
        }
コード例 #7
0
        private void btnSimpan_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(textBoxJumlahBayar.Text))
            {
                MessageBox.Show("Jumlah bayar belum diisi", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.ActiveControl = this.textBoxJumlahBayar;
                return;
            }

            decimal total = decimal.Parse(labelTotal.Text, NumberStyles.Number, CultureInfo.GetCultureInfo("de"));
            decimal bayar = decimal.Parse(textBoxJumlahBayar.Text, NumberStyles.Number, CultureInfo.GetCultureInfo("de"));

            if (bayar < total)
            {
                MessageBox.Show("Jumlah bayar kurang", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                this.ActiveControl = this.textBoxJumlahBayar;
                return;
            }

            DataGridView data = dataGridViewTransaksiPembelian;

            int row = data.Rows.Count;

            if (row <= 1)
            {
                MessageBox.Show("Belum ada barang yang dimasukkan", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            Pembelian       pembelian = new Pembelian();
            PembelianDetail pDetail;

            for (int i = 0; i < row - 1; i++)
            {
                var    kodeBarang = data.Rows[i].Cells[0].Value.ToString();
                var    namaBarang = data.Rows[i].Cells[1].Value.ToString();
                string ukuran     = (data.Rows[i].Cells[2] as DataGridViewComboBoxCell).FormattedValue.ToString();
                var    jumlahJual = int.Parse(data.Rows[i].Cells[3].Value.ToString());

                if (data.Rows[i].Cells[4].Value == null)
                {
                    MessageBox.Show("Silahkan pilih ukuran", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                var hargaBeli = decimal.Parse(data.Rows[i].Cells[4].Value.ToString(), NumberStyles.Number, CultureInfo.GetCultureInfo("de"));

                var diskon   = float.Parse(data.Rows[i].Cells[5].Value.ToString(), NumberStyles.Number, CultureInfo.GetCultureInfo("de"));
                var subtotal = decimal.Parse(data.Rows[i].Cells[6].Value.ToString(), NumberStyles.Number, CultureInfo.GetCultureInfo("de"));

                var barang = service.FindByKodeBarang(kodeBarang);

                pDetail = new PembelianDetail()
                {
                    Pembelian = pembelian,
                    BarangId  = barang.Id,
                    Ukuran    = ukuran,
                    Harga     = hargaBeli,
                    Jumlah    = jumlahJual,
                    SubTotal  = subtotal,
                    Diskon    = diskon,
                };

                pembelian.PembelianDetails.Add(pDetail);
            }

            pembelian.KodeTransaksi  = textBoxKodeTransaksi.Text;
            pembelian.Tanggal        = DateTime.Now;
            pembelian.TotalHargaBeli = decimal.Parse(labelTotal.Text, NumberStyles.Number, CultureInfo.GetCultureInfo("de"));

            var pengguna = LoginContext.Pengguna;

            if (string.IsNullOrEmpty(textBoxKodeSupplier.Text))
            {
                MessageBox.Show("Harap pilih supplier", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            if (!string.IsNullOrEmpty(textBoxKodeSupplier.Text))
            {
                int  result;
                bool IsPass = int.TryParse(textBoxKodeSupplier.Text, out result);
                if (!IsPass)
                {
                    MessageBox.Show("Masukkan supplier dengan benar", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
            }

            var supplier = supplierService.Get(int.Parse(textBoxKodeSupplier.Text));

            if (supplier == null)
            {
                MessageBox.Show("Masukkan supplier dengan benar", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            pembelian.PenggunaId = pengguna.Id;
            pembelian.SupplierId = supplier.Id;

            pembelianService.Post(pembelian);

            this.Clear();
        }