private void frmKasaHareketleri_Load(object sender, EventArgs e)
 {
     foreach (var kasaHareketleri in DataTransferObject.GetListKasaHareketleri(null, null))
     {
         ListViewItem listViewItem = new ListViewItem();
         listViewItem.Text = kasaHareketleri.ID.ToString();
         listViewItem.SubItems.Add(kasaHareketleri.KartSeriNo.ToString());
         listViewItem.SubItems.Add(kasaHareketleri.Bakiye.ToString());
         listViewItem.SubItems.Add(kasaHareketleri.YuklenenKontor.ToString());
         listViewItem.SubItems.Add(kasaHareketleri.Tarih.ToString());
         listViewKasaHareketleri.Items.Add(listViewItem);
     }
 }
        private void button2_Click(object sender, EventArgs e)
        {
            listViewKasaHareketleri.Items.Clear();
            var tarih1 = dateTimeKasaHareketleriBaslangic.Value.ToString("MM-dd-yyyy");
            var tarih2 = dateTimeKasaHareketleriBitis.Value.AddDays(1).ToString("MM-dd-yyyy");

            foreach (var kasaHareketleri in DataTransferObject.GetListKasaHareketleri(tarih1, tarih2))
            {
                ListViewItem listViewItem = new ListViewItem();
                listViewItem.Text = kasaHareketleri.ID.ToString();
                listViewItem.SubItems.Add(kasaHareketleri.KartSeriNo.ToString());
                listViewItem.SubItems.Add(kasaHareketleri.Bakiye.ToString());
                listViewItem.SubItems.Add(kasaHareketleri.YuklenenKontor.ToString());
                listViewItem.SubItems.Add(kasaHareketleri.Tarih.ToString());
                listViewKasaHareketleri.Items.Add(listViewItem);
            }
        }
        private void btnYukle_Click(object sender, EventArgs e)
        {
            try
            {
                if (serialPort.IsOpen == false)
                {
                    serialPort.Open();
                    serialPort.DiscardOutBuffer();
                    int bakiye = 0;
                    int kontor = 0;
                    if (int.TryParse(txtYukluKontor.Text, out bakiye) == false)
                    {
                        bakiye = 0;
                    }
                    if (int.TryParse(txtKontorMiktari.Text, out kontor) == false)
                    {
                        kontor = 0;
                    }
                    bakiye += kontor;
                    if (bakiye > 255)
                    {
                        MessageBox.Show("Kart Bakiyesi 255'den fazla olamaz", "Limit Aşımı", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtKontorMiktari.Clear();
                        txtHedefKontor.Clear();
                        txtAlinacakOdeme.Clear();
                    }
                    else
                    {
                        var command = "%HW001011A" + Key + "0011223344556677" + bakiye.ToString("X2") + "0100112233445500**\r";
                        serialPort.Write(command);
                        Thread.Sleep(250);
                        var result = serialPort.ReadExisting();
                        if (result.Substring(6, 1) == "O")
                        {
                            MessageBox.Show("Kontör Yükleme İşlemi Gerçekleştirildi", "Kontör Yükleme", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            serialPort.Write("%HR001011A" + Key + "**\r");
                            Thread.Sleep(200);
                            var receiveTemp = int.Parse(serialPort.ReadExisting().Substring(34, 2), System.Globalization.NumberStyles.HexNumber);
                            txtYukluKontor.Text = receiveTemp.ToString();
                            txtKontorMiktari.Clear();
                            txtHedefKontor.Clear();
                            txtAlinacakOdeme.Clear();
                            if (!DataTransferObject.AddKasaHareketleri(new KasaHareketleri {
                                Bakiye = (bakiye - kontor), KartSeriNo = kartSeriNo, YuklenenKontor = kontor, Tarih = DateTime.Now
                            }))
                            {
                                MessageBox.Show("Veritabanına ekleme işleminde hata oluştu!");
                            }
                            else
                            {
                                txtToplamYukleme.Clear();
                                txtToplamYukleme.Text = ToplamYukleme(kartSeriNo).ToString();

                                if (!YuklenenKontoruKasayaEkleme(kontor) == true)
                                {
                                    MessageBox.Show("Kasaya eklenemedi!");
                                }
                                if (ToplamYukleme(kartSeriNo) >= 1000)
                                {
                                    MessageBox.Show("Tebrikler 1000 Kontor Sınırını Aşarak Bizden Hediye Kazandınız!", "Hediye", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Bilgisayar bağlantısını veya kartınızı kontrol ediniz.", "Bağlantı Yok", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                serialPort.Close();
                serialPort.Dispose();
            }
        }