public ReturDepositModel Save(ReturDepositModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } // validate depositID var deposit = _depositBL.GetData(model.DepositID); if (deposit == null) { throw new ArgumentException("DepositID invalid"); } else { model.PihakKeduaName = deposit.PihakKeduaName; } // validate jenisKas var jenisKas = _jenisKasBL.GetData(model.JenisKasID); if (jenisKas == null) { throw new ArgumentException("JenisKasID invalid"); } else { model.JenisKasName = jenisKas.JenisKasName; } // cek nilai retur harus antara 0 dan sisa deposit if (model.NilaiReturDeposit > model.NilaiSisaDeposit) { throw new ArgumentException("NilaiReturDeposit Invalid"); } if (model.NilaiReturDeposit <= 0) { throw new ArgumentException("NilaiReturDeposit Invalid minus"); } // proses simpan using (var trans = TransHelper.NewScope()) { if (model.ReturDepositID.Trim() == "") { model.ReturDepositID = GenNewID(); } // hapus data lama _returDepositDal.Delete(model.ReturDepositID); // simpan data baru _returDepositDal.Insert(model); trans.Complete(); } return(model); }
private void ShowData() { var returDeposit = _returDepositBL.GetData(ReturDepositIDText.Text); if (returDeposit == null) { ClearForm(); return; } TglText.Value = returDeposit.Tgl.ToDate(); JamText.Text = returDeposit.Jam; DepositIDText.Text = returDeposit.DepositID; PihakKeduaNameText.Text = returDeposit.PihakKeduaName; SisaDepositText.Value = returDeposit.NilaiSisaDeposit; var deposit = _depositBL.GetData(returDeposit.DepositID); KeteranganDepositText.Text = deposit.Keterangan; KeteranganReturDepositText.Text = returDeposit.Catatan; JenisKasCombo.SelectedValue = returDeposit.JenisKasID; NilaiReturText.Value = returDeposit.NilaiReturDeposit; }
private void ShowData() { var deposit = _depositBL.GetData(BiayaIDText.Text); if (deposit == null) { ClearForm(); return; } TglText.Value = deposit.Tgl.ToDate(); JamText.Text = deposit.Jam; KeteranganText.Text = deposit.Keterangan; PihakKeduaCombo.SelectedValue = deposit.PihakKeduaID; BuyerNameTextBox.Text = deposit.BuyerName; JenisBayarCombo.SelectedValue = deposit.JenisBayarID; NilIText.Value = deposit.NilaiDeposit; }
private void SaveTransaksi() { // pindah textbox ke variable utk proses simpan var kodeTrs = NoTrsTextBox.Text; var tglTrs = TanggalDateTime.Value.ToString("dd-MM-yyyy"); var jamTrs = JamTextBox.Text; var customerID = ""; if (CustomerComboBox.SelectedValue != null) { customerID = CustomerComboBox.SelectedValue.ToString(); } // var buyerName = BuyerNameTextBox.Text; var alamat = AlamatTextBox.Text; var noTelpon = NoTelpTextBox.Text; var catatan = CatatanTextBox.Text; // var biayaKirim = BiayaKirimNumText.Value; var total = TotalNumText.Value; var diskon = DiskonNumText.Value; var biayaLain = BiayaLainNumText.Value; var grandTotal = GrandTotalNumText.Value; var bayarCash = BayarCashNumText.Value; var totalBayar = BayarNonCashNumText.Value + BayarCashNumText.Value; var kembali = KembaliNumText.Value; //--ambil data grid barang var dtlTrs = new List <Penjualan2Model>(); var noUrut = 0; List <Penjualan2Model> listDetilBrg = null; foreach (DataRow dr in DetilPenjualanTable.Rows) { if (listDetilBrg == null) { listDetilBrg = new List <Penjualan2Model>(); } if (dr["BrgID"].ToString().Trim() == "") { continue; } var dtlAdj = new Penjualan2Model() { NoUrut = noUrut, BrgID = dr["BrgID"].ToString(), BrgName = "", BPStokID = dr["BPStokID"].ToString(), Qty = Convert.ToDecimal(dr["Qty"]), Harga = Convert.ToDecimal(dr["Harga"]), Diskon = Convert.ToDecimal(dr["Diskon"]), SubTotal = Convert.ToDecimal(dr["SubTotal"]) }; listDetilBrg.Add(dtlAdj); noUrut++; } // siapkan object tampung pembayaran List <PenjualanBayarModel> listDetilBayar = null; // ambil data bayar detil if (_listBayarDetil != null) { foreach (var item in _listBayarDetil) { var itemNonCash = new PenjualanBayarModel { JenisBayarID = item.JenisBayarID, NilaiBayar = item.NilaiBayar, Catatan = item.Catatan }; if (listDetilBayar == null) { listDetilBayar = new List <PenjualanBayarModel>(); } listDetilBayar.Add(itemNonCash); } } if (kembali != 0) { var itemKembali = new PenjualanBayarModel { JenisBayarID = "KAS", NilaiBayar = -kembali, Catatan = "" }; if (listDetilBayar == null) { listDetilBayar = new List <PenjualanBayarModel>(); } listDetilBayar.Add(itemKembali); } // cari nilai deposit decimal bayarDepositDeposit = 0; if (DepositCheckBox.Checked) { decimal nilaiDeposit = NilaiDepositText.Value; bayarDepositDeposit = Math.Min((grandTotal - totalBayar), nilaiDeposit); } var penjualan = new PenjualanModel { PenjualanID = kodeTrs, TglPenjualan = tglTrs, JamPenjualan = jamTrs, CustomerID = customerID, BuyerName = buyerName, Alamat = alamat, NoTelp = noTelpon, Catatan = catatan, IsBayarDeposit = DepositCheckBox.Checked, DepositID = DepositIDText.Text, NilaiDeposit = bayarDepositDeposit, NilaiBiayaKirim = biayaKirim, NilaiTotal = total, NilaiDiskonLain = diskon, NilaiBiayaLain = biayaLain, NilaiGrandTotal = grandTotal, NilaiBayar = totalBayar, NilaiKembali = kembali, ListBrg = listDetilBrg, ListBayar = listDetilBayar }; PenjualanModel result = null; try { using (var trans = TransHelper.NewScope()) { // save penjualan result = _penjualanBL.Save(penjualan); // generate kas BPKasModel bpKas = null; if (penjualan.ListBayar != null) { bpKas = _bpKasBL.Generate(penjualan); } // generate hutang lunas (kalo ada deposit) BPHutangModel bpHutang = null; if (penjualan.IsBayarDeposit) { var deposit = _depositBL.GetData(penjualan.DepositID); bpHutang = _bpHutangBL.GenHutang(penjualan, deposit); } // Gen BP Piutang (Jika Ada) _bpPiutangBL.GenPiutang(penjualan); // generate stok // copy original list var listBrgOri = result.ListBrg.CloneObject(); // remove item2 jasa di list var listBrg = new List <Penjualan2Model>(); foreach (var item in result.ListBrg) { if (item.BrgID.ToLower().Contains("jasa")) { } else { listBrg.Add(item); } } result.ListBrg = listBrg; var bpStok = _bpStokBL.Generate(result); // kembalikan list original-nya (utk kepentingan cetak) result.ListBrg = listBrgOri; trans.Complete(); } } catch (ArgumentException ex) { MessageBox.Show(ex.Message); return; } if (result != null) { LastIDLabel.Text = result.PenjualanID; } if (MessageBox.Show("Cetak Nota ?", "Penjualan", MessageBoxButtons.YesNo) == DialogResult.Yes) { // ubah nama barang menjadi nama brg versi pendek (utk print) foreach (var item in result.ListBrg) { var brg = _brgBL.GetData(item.BrgID); if (brg.BrgNamePrint.Trim() != "") { item.BrgName = brg.BrgNamePrint; } } var printDoc = new NotaJualPrintDoc(result); printDoc.Print(); } ClearForm(); }