Example #1
0
        private void btnSelesai_Click(object sender, EventArgs e)
        {
            DialogResult message = MessageBox.Show("Apakah anda yakin akan menambah data pembelian?", "Konfirmasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (message == DialogResult.Yes)
            {
                if (Status == "Baru")
                {
                    tbPembelian newPembelian = new tbPembelian();

                    newPembelian.No_Faktur         = tbNoFaktur.Text;
                    newPembelian.Tanggal_Pembelian = dtpTanggalPembelian.Value;
                    newPembelian.JatuhTempo        = dtpJatuhTempo.Value;
                    newPembelian.CaraBayar         = cbCaraBayar.Text;
                    newPembelian.Salesman          = tbSalesman.Text;
                    newPembelian.Sub_Total         = decimal.Parse(tbSubTotal.Text);
                    newPembelian.PPN             = double.Parse(nudPPN.Value.ToString());
                    newPembelian.Total_Pembelian = decimal.Parse(labelTotalPembelian.Text);
                    newPembelian.Username        = Username;
                    if (cbCaraBayar.Text == "Tunai")
                    {
                        newPembelian.Status = true;
                    }
                    else
                    {
                        newPembelian.Status = false;
                    }
                    string idSupplier = db.tbSuppliers.Where(x => x.Nama_Supplier == cbNamaSupplier.Text).Select(x => x.ID_Supplier).FirstOrDefault();
                    newPembelian.ID_Supplier = idSupplier;

                    db.tbPembelians.InsertOnSubmit(newPembelian);
                    db.SubmitChanges();

                    foreach (var item in ListDetailPembelian)
                    {
                        tbDetailPembelian newDetailPembelian = new tbDetailPembelian();
                        if (db.tbBarangs.Where(x => x.Nama_Barang == item.Nama_Barang).Select(x => x).Count() <= 0)
                        {
                            string idSupplierPembelian = db.tbSuppliers.Where(x => x.Nama_Supplier == cbNamaSupplier.Text).Select(x => x.ID_Supplier).FirstOrDefault();
                            string ID_BarangBaru       = item.ID_Barang;

                            tbBarang barangbaru = new tbBarang();
                            barangbaru.ID_Barang   = ID_BarangBaru;
                            barangbaru.Nama_Barang = item.Nama_Barang;
                            //barangbaru.Satuan = tbSatuan.Text;
                            barangbaru.Stok       = 0;
                            barangbaru.Harga_Beli = item.Harga_Beli;
                            barangbaru.Harga_Jual = 0;
                            //barangbaru.Tanggal_Kadaluarsa = item.Tanggal_Kadaluarsa;
                            barangbaru.ID_Supplier = idSupplierPembelian;
                            barangbaru.Satuan      = SatuanBarang;

                            db.tbBarangs.InsertOnSubmit(barangbaru);
                            db.SubmitChanges();
                        }

                        newDetailPembelian.ID_DetailPembelian = item.ID_DetailPembelian;
                        newDetailPembelian.Nama_Barang        = item.Nama_Barang;
                        newDetailPembelian.Harga_Beli         = (decimal)item.Harga_Beli;
                        newDetailPembelian.Jumlah_Beli        = (int)item.Jumlah_Beli;
                        newDetailPembelian.Diskon             = (double)item.Diskon;
                        newDetailPembelian.Sub_Total          = (decimal)item.Sub_Total;
                        newDetailPembelian.ID_Barang          = item.ID_Barang;
                        newDetailPembelian.No_Faktur          = item.No_Faktur;

                        db.tbDetailPembelians.InsertOnSubmit(newDetailPembelian);
                        db.SubmitChanges();
                    }
                    MessageBox.Show("Data Pembelian berhasil ditambahkan", "Pemberitahuan");
                    this.Close();
                }
                else
                {
                    string IDPembelian  = tbNoFaktur.Text;
                    string satuanBarang = tbSatuan.Text;

                    var pembelianUbah = db.tbPembelians.Where(x => x.No_Faktur == IDPembelian).FirstOrDefault();
                    pembelianUbah.Total_Pembelian   = decimal.Parse(labelTotalPembelian.Text);
                    pembelianUbah.Sub_Total         = decimal.Parse(tbSubTotal.Text);
                    pembelianUbah.Tanggal_Pembelian = dtpTanggalPembelian.Value;
                    pembelianUbah.JatuhTempo        = dtpJatuhTempo.Value;
                    pembelianUbah.CaraBayar         = cbCaraBayar.Text;
                    pembelianUbah.Salesman          = tbSalesman.Text;
                    pembelianUbah.PPN      = double.Parse(nudPPN.Value.ToString());
                    pembelianUbah.Username = Username;
                    if (cbCaraBayar.Text == "Tunai")
                    {
                        pembelianUbah.Status = true;
                    }
                    else
                    {
                        pembelianUbah.Status = false;
                    }

                    var barangUbah = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).FirstOrDefault();
                    barangUbah.Satuan = satuanBarang;

                    db.SubmitChanges();
                    this.Close();
                }
            }
        }
Example #2
0
        private void btnTambahDetail_Click(object sender, EventArgs e)
        {
            if (tbHargaBeli.Text != "0" && tbHargaBeli.Text != string.Empty)
            {
                if (Status == "Baru")
                {
                    dgvDetailPembelian.DataSource = "";

                    if (db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.ID_Barang).Count() > 0)
                    {
                        IDBarang     = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.ID_Barang).FirstOrDefault();
                        SatuanBarang = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.Satuan).FirstOrDefault();
                    }
                    else
                    {
                        bool cek1 = true;
                        foreach (var item in ListDetailPembelian)
                        {
                            if (tbNamaBarang.Text == item.Nama_Barang)
                            {
                                cek1 = false;
                                break;
                            }
                        }

                        if (cek1 == true)
                        {
                            IDBARANG++;
                            if (IDBARANG >= 2)
                            {
                                IDBarang = db.FC_AutoIDBarang();
                                string angkaUrut  = IDBarang.ToString().Substring(2);
                                int    angkaBaru  = int.Parse(angkaUrut) + IDBARANG - 1;
                                string angkaBaru2 = "00000000" + angkaBaru;
                                IDBarang = "B-" + angkaBaru2.Substring(angkaBaru2.Length - 8);
                            }
                            else
                            {
                                IDBarang = db.FC_AutoIDBarang();
                            }
                            SatuanBarang = tbSatuan.Text;
                        }
                        SatuanBarang = tbSatuan.Text;
                    }

                    ClassListDetailPembelian detailPembelian = new ClassListDetailPembelian();
                    detailPembelian.Nama_Barang = tbNamaBarang.Text;
                    detailPembelian.Harga_Beli  = decimal.Parse(tbHargaBeli.Text);
                    detailPembelian.Jumlah_Beli = (int)nudJumlah.Value + (int)nudBonus.Value;
                    detailPembelian.Diskon      = double.Parse(nudDiskon.Value.ToString());
                    detailPembelian.Sub_Total   = decimal.Parse(tbSubTotalDetailPembelian.Text);
                    detailPembelian.ID_Barang   = IDBarang;
                    detailPembelian.No_Faktur   = tbNoFaktur.Text;
                    detailPembelian.Satuan      = SatuanBarang;

                    //bool cek = true;
                    ////int jumlahbeli = 0;

                    //foreach (var item in ListDetailPembelian)
                    //{
                    //    if (item.Nama_Barang == tbNamaBarang.Text)
                    //    {
                    //        cek = false;
                    //    }
                    //}

                    //if (cek == true)
                    //{
                    ListDetailPembelian.Add(detailPembelian);

                    decimal TotalPembelian = 0;
                    foreach (var item in ListDetailPembelian)
                    {
                        TotalPembelian += (decimal)item.Sub_Total;
                    }
                    tbSubTotal.Text          = TotalPembelian.ToString("n0");
                    labelTotalPembelian.Text = (decimal.Parse(tbSubTotal.Text) + ((nudPPN.Value / 100) * decimal.Parse(tbSubTotal.Text))).ToString("n0");
                    //}
                    //else
                    //{
                    //    MessageBox.Show("Barang sudah ada, silahkan edit pada tabel dibawah ^_^");
                    //    jumlahbeli = (int)ListDetailPembelian.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.Jumlah_Beli).FirstOrDefault();

                    //    var updatelist = ListDetailPembelian.Where(x => x.Nama_Barang == tbNamaBarang.Text).FirstOrDefault();

                    //    updatelist.Jumlah_Beli = (int)nudQty.Value + jumlahbeli;
                    //    updatelist.Sub_Total = ((int)nudQty.Value + jumlahbeli) * decimal.Parse(tbHargaBeli.Text);
                    //}

                    RefreshDetail();
                }
                else
                {
                    string IDPembelianEdit = tbNoFaktur.Text;

                    var dataDetailPembelian = db.tbDetailPembelians.Where(x => x.No_Faktur == IDPembelianEdit).Select(x => x).ToList();

                    //bool cekDetail = true;
                    //foreach (var item in dataDetailPembelian)
                    //{
                    //    if (item.Nama_Barang == tbNamaBarang.Text)
                    //    {
                    //        cekDetail = false;
                    //        break;
                    //    }
                    //}

                    //if (cekDetail == true)
                    //{
                    dgvDetailPembelian.DataSource = "";

                    if (db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.ID_Barang).Count() > 0)
                    {
                        IDBarang     = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.ID_Barang).FirstOrDefault();
                        SatuanBarang = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).Select(x => x.Satuan).FirstOrDefault();

                        var barangBaru = db.tbBarangs.Where(x => x.Nama_Barang == tbNamaBarang.Text).FirstOrDefault();
                        barangBaru.ID_Barang   = IDBarang;
                        barangBaru.Nama_Barang = tbNamaBarang.Text;
                        barangBaru.Satuan      = tbSatuan.Text;
                        barangBaru.Harga_Beli  = decimal.Parse(tbHargaBeli.Text);
                        barangBaru.Harga_Jual  = 0;
                        string idSup = db.tbSuppliers.Where(x => x.Nama_Supplier == cbNamaSupplier.Text).Select(x => x.ID_Supplier).FirstOrDefault();
                        barangBaru.ID_Supplier = idSup;
                        db.SubmitChanges();
                    }
                    else
                    {
                        bool cek1 = true;
                        foreach (var item in ListDetailPembelian)
                        {
                            if (tbNamaBarang.Text == item.Nama_Barang)
                            {
                                cek1 = false;
                                break;
                            }
                        }

                        if (cek1 == true)
                        {
                            IDBarang     = db.FC_AutoIDBarang();
                            SatuanBarang = tbSatuan.Text;
                        }

                        tbBarang barangbaru = new tbBarang();
                        barangbaru.ID_Barang   = IDBarang;
                        barangbaru.Satuan      = SatuanBarang;
                        barangbaru.Nama_Barang = tbNamaBarang.Text;
                        //barangbaru.Satuan = tbSatuan.Text;
                        //barangbaru.Stok = item.Jumlah_Beli;
                        barangbaru.Harga_Beli = decimal.Parse(tbHargaBeli.Text);
                        barangbaru.Harga_Jual = 0;
                        //barangbaru.Tanggal_Kadaluarsa = item.Tanggal_Kadaluarsa;
                        string idSup = db.tbSuppliers.Where(x => x.Nama_Supplier == cbNamaSupplier.Text).Select(x => x.ID_Supplier).FirstOrDefault();
                        barangbaru.ID_Supplier = idSup;

                        db.tbBarangs.InsertOnSubmit(barangbaru);
                        db.SubmitChanges();
                    }



                    tbDetailPembelian detailPembelian = new tbDetailPembelian();
                    detailPembelian.Nama_Barang = tbNamaBarang.Text;
                    detailPembelian.Harga_Beli  = decimal.Parse(tbHargaBeli.Text);
                    detailPembelian.Jumlah_Beli = (int)nudJumlah.Value + (int)nudBonus.Value;
                    //detailPembelian.Satuan = db.tbBarangs.Where(x => x.ID_Barang == IDBarang).Select(x => x.Satuan).FirstOrDefault();
                    detailPembelian.Diskon    = double.Parse(nudDiskon.Value.ToString());
                    detailPembelian.Sub_Total = decimal.Parse(tbSubTotalDetailPembelian.Text);
                    detailPembelian.ID_Barang = IDBarang;
                    detailPembelian.No_Faktur = tbNoFaktur.Text;

                    db.tbDetailPembelians.InsertOnSubmit(detailPembelian);
                    db.SubmitChanges();

                    var detailPembelianyangDiubah = db.tbDetailPembelians.Where(x => x.No_Faktur == IDPembelianEdit).Select(x => x).ToList();

                    decimal TotalPembelian = 0;
                    foreach (var item in detailPembelianyangDiubah)
                    {
                        TotalPembelian += (decimal)item.Sub_Total;
                    }
                    tbSubTotal.Text          = TotalPembelian.ToString("n0");
                    labelTotalPembelian.Text = (decimal.Parse(tbSubTotal.Text) + ((nudPPN.Value / 100) * decimal.Parse(tbSubTotal.Text))).ToString("n0");

                    RefreshDetail();
                    //}
                    //else
                    //{
                    //    MessageBox.Show("Barang sudah ada, silahkan edit pada tabel dibawah ^_^");
                    //}
                }
            }
            else
            {
                MessageBox.Show("Harga Beli tidak boleh 0", "Peringatan");
            }
        }