private void toolStripMenuItemYazdir_Click(object sender, EventArgs e) { string secilen = FislerGridView.GetFocusedRowCellValue(colFisKodu).ToString(); ReportsPrintTool yazdir = new ReportsPrintTool(); rptFatura fatura = new rptFatura(secilen); yazdir.RaporYazdir(fatura, ReportsPrintTool.Belge.Fatura, context.KullaniciAyarlari.FirstOrDefault(c => c.KullaniciID == RoleTool.kullaniciEntity.KullaniciID)); }
private void FisiKaydet(ReportsPrintTool.Belge belge) { Toplamlar(); OdenenTutarGuncelle(); string message = null; int hata = 0; if (gridStokHareket.RowCount == 0) { message += "Satış Ekranında eklenmiş bir ürün bulunamadı." + System.Environment.NewLine; hata++; } if (gridKasaHareket.RowCount == 0 && chkOdemeBol.Checked && String.IsNullOrEmpty(txtCariKodu.Text)) { message += "Herhangi bir ödeme bulunamadı." + System.Environment.NewLine; hata++; } if (txtKod.Text == "") { message += "Fiş Kodu alanı boş geçilemez." + System.Environment.NewLine; hata++; } if (txtOdenmesiGereken.Value != 0 && String.IsNullOrEmpty(txtCariKodu.Text) && tekParca == false) { message += "Ödenmesi gereken tutar ödenmemiş görünüyor. Ödenmeyen kısmı açık hesaba aktarabilmeniz için Cari seçmeniz gerekmektedir." + System.Environment.NewLine; hata++; } if (String.IsNullOrEmpty(txtCariKodu.Text) && (_entityBakiye.Bakiye - txtOdenmesiGereken.Value) < 0 && ((_entityBakiye.Bakiye - txtOdenmesiGereken.Value) * -1) > _entityBakiye.RiskLimiti && tekParca == false) { message += "Cari risk limiti aşılıyor. Satış yapılamaz." + System.Environment.NewLine; hata++; } if (hata != 0) { MessageBox.Show(message); return; } if (chkOdemeBol.Checked && txtOdenmesiGereken.Value != 0) { if (MessageBox.Show($"Ödemenin {txtOdenmesiGereken.Value.ToString("C2")} tutarındaki kısmı açık hesap bakiyesi olarak kaydedilecektir. Devam etmek istiyor musunuz?", "Uyarı", MessageBoxButtons.YesNo) == DialogResult.No) { MessageBox.Show("İsteğiniz üzerine işlem iptal edildi."); return; } } _fisentity.FisTuru = txtIslem.Text == "İADE" ? "Satış İade Faturası" : "Perakende Satış Faturası"; foreach (var stokVeri in context.StokHareketleri.Local.ToList()) { stokVeri.Tarih = DateTime.Now; stokVeri.FisKodu = txtKod.Text; stokVeri.Hareket = txtIslem.Text == "İADE" ? "Stok Giriş" : "Stok Çıkış"; } foreach (var kasaVeri in context.KasaHareketleri.Local.ToList()) { kasaVeri.Tarih = DateTime.Now; kasaVeri.FisKodu = txtKod.Text; kasaVeri.Hareket = txtIslem.Text == "İADE" ? "Kasa Çıkış" : "Kasa Giriş"; kasaVeri.CariId = _cariId; } _fisentity.KullaniciID = RoleTool.kullaniciEntity.KullaniciID; _fisentity.FisKodu = txtKod.Text; _fisentity.BelgeNo = txtBelgeNo.Text; _fisentity.Aciklama = txtAciklama.Text; _fisentity.FaturaUnvani = txtFaturaUnvani.Text; _fisentity.CepTelefonu = txtCepTelefonu.Text; _fisentity.Il = txtIl.Text; _fisentity.Ilce = txtIlce.Text; _fisentity.Semt = txtSemt.Text; _fisentity.Adres = txtAdres.Text; _fisentity.VergiDairesi = txtVergiDairesi.Text; _fisentity.VergiNo = txtVergiNo.Text; _fisentity.ToplamTutar = txtToplam.Value; _fisentity.IskontoOrani = txtIskontoOran.Value; _fisentity.IskontoTutar = txtIskontoTutar.Value; _fisentity.Tarih = DateTime.Now; fisDal.AddOrUpDate(context, _fisentity); int kasaId = Convert.ToInt32(context.KullaniciAyarlari.SingleOrDefault(c => c.KullaniciID == RoleTool.kullaniciEntity.KullaniciID).SatisAyarlari_VarsayilanKasa); if (txtOdenen.Value > 0) { Fis odemeFisi = _fisentity.Clone(); odemeFisi.FisTuru = "Fiş Ödemesi"; odemeFisi.FisKodu = kodolustur.YeniFisOdemeKoduOlustur(); _fisentity.FisBaglantiKodu = odemeFisi.FisKodu; odemeFisi.FisBaglantiKodu = _fisentity.FisKodu; odemeFisi.ToplamTutar = tekParca ? txtToplam.Value : txtOdenenTutar.Value; if (txtIslem.Text == "SATIŞ") { _fisentity.Borc = txtToplam.Value; odemeFisi.Alacak = tekParca ? txtToplam.Value : txtOdenenTutar.Value; odemeFisi.Borc = null; _fisentity.Alacak = null; } else { _fisentity.Alacak = txtToplam.Value; odemeFisi.Borc = tekParca ? txtToplam.Value : txtOdenenTutar.Value; odemeFisi.Alacak = null; _fisentity.Borc = null; } fisDal.AddOrUpDate(context, odemeFisi); }//ödeme 0 sa yapılan if yeni koydum test et if (!chkOdemeBol.Checked && odemeTuruId != -1) { kasaHareketDal.AddOrUpDate(context, new KasaHareket { CariId = _cariId, FisKodu = txtKod.Text, Hareket = txtIslem.Text == "İADE" ? "Kasa Çıkış" : "Kasa Giriş", KasaId = kasaId, OdemeTuruId = odemeTuruId, Tarih = DateTime.Now, Tutar = txtToplam.Value }); OdenenTutarGuncelle(); } try { context.SaveChanges(); } catch (Exception) { } chkOdemeBol.Checked = false; radialOdeme.HidePopup(); switch (belge) { case ReportsPrintTool.Belge.Fatura: ReportsPrintTool yazdir = new ReportsPrintTool(); rptFatura fatura = new rptFatura(txtKod.Text); yazdir.RaporYazdir(fatura, belge, context.KullaniciAyarlari.FirstOrDefault(c => c.KullaniciID == RoleTool.kullaniciEntity.KullaniciID)); break; case ReportsPrintTool.Belge.BilgiFisi: ReportsPrintTool yazdirBilgiFisi = new ReportsPrintTool(); rptBilgiFisi bilgiFisi = new rptBilgiFisi(txtKod.Text); yazdirBilgiFisi.RaporYazdir(bilgiFisi, belge, context.KullaniciAyarlari.FirstOrDefault(c => c.KullaniciID == RoleTool.kullaniciEntity.KullaniciID)); break; } if (cagirilanSatisId != -1) { var secilen = _bekleyenSatis.SingleOrDefault(c => c.Id == cagirilanSatisId); _bekleyenSatis.Remove(secilen); flowBekleyenSatislar.Controls.Find(Convert.ToString(cagirilanSatisId), false).SingleOrDefault().Dispose(); cagirilanSatisId = -1; } FisTemizle(); kodolustur.FisKoduArttir(); txtKod.Text = kodolustur.yeniFrontOfficeKodOlustur(); tekParca = false; }