Exemplo n.º 1
0
        //MerchantPayoutAmount = "788.4875" net fiyat
        //PaidPrice = "810" ÖDenen fiyat
        public ActionResult paymentForm(string token)
        {
            string cid    = TempData["cid"] as string;
            var    result = _iyzico.ContolPayment(token, cid);

            if (result.Status == "success")
            {
                foreach (var item in result.PaymentItems)
                {
                    Guid siparisId = Guid.Parse(item.ItemId);
                    //Ödemeyi kaydet.
                    //Siparişi Güncelle.
                    //Kasaya Giriş yap.

                    SiparisOdeme odeme = new SiparisOdeme()
                    {
                        Kart           = result.CardAssociation,
                        KartTip        = result.CardType,
                        KartBinNumber  = result.BinNumber,
                        KartAile       = result.CardFamily,
                        NetOdemeTutari = item.MerchantPayoutAmount,
                        OdemeTarihi    = DateTime.Now,
                        OdemeTutari    = item.PaidPrice,
                        SonDortHane    = result.LastFourDigits,
                    };

                    _odeme.Insert(odeme);
                    Siparisler siparis = _siparis.Find(siparisId);
                    siparis.OdemeId = odeme.OdemeId;
                    //siparis.Odeme = odeme;
                    _siparis.Update(siparis);
                    _hareket.Insert(new MusteriGirisHareketleri()
                    {
                        IslemTarihi        = DateTime.Now,
                        Islem              = HareketTipleri.Odeme,
                        IslemAciklama      = $"{siparis.Yemek.YemekAdi} yemeğin, {siparis.YemekSayisi} kişilik [sipariş tarihi:{siparis.SiparisTarihi}] siparişini [Kart:{odeme.KartTip} - {odeme.KartBinNumber}***{odeme.SonDortHane} kart bilgisi ile ödediniz.",
                        MusteriId          = siparis.MusteriId,
                        CihazIp            = _client.GetClientIp(),
                        CihazBrowserAnonId = _client.GetClientAnonId(),
                        CihazBrowser       = _client.GetBrowser(_client.GetUserAgent(), _client.GetVersion())
                    });

                    _kasa.InsertSiparisOdeme(siparis);
                }
                return(RedirectToAction("index", "order"));
            }
            else
            {
                return(View(result));
            }
        }
        public SiparisOdeme BarkodtaSiparisIDGetir(SqlConnection Baglanti, SqlTransaction Tr, string BarkodNu)
        {
            using (SqlCommand cmd = new SqlCommand(@"select
 distinct  
 Siparis.SiparisID
, isnull((select top 1 FaturaID from Fatura where FaturaID = EvrakIsliski.FaturaID and SilindiMi  = 0), -1) FaturaID
, [dbo].[FaturaninOdemesiTamamlanmisMi]((select top 1 FaturaID from Fatura where FaturaID = EvrakIsliski.FaturaID and SilindiMi  = 0)) as OdendiMi 
, (select top 1 FaturaBarkod  from Fatura where FaturaID = EvrakIsliski.FaturaID and SilindiMi  = 0) FaturaBarkod
from Siparis 
left join EvrakIsliski on Siparis.SiparisID = EvrakIsliski.SiparisID and EvrakIsliski.FaturaID not in (Select FaturaID from fatura where FaturaID = EvrakIsliski.FaturaID and SilindiMi = 1)
--left join fatura on Fatura.FaturaID = EvrakIsliski.FaturaID and Fatura.SilindiMi = 0
where SiparisBarkodNu = @SiparisBarkodNu", Baglanti, Tr))
            {
                cmd.Parameters.Add("@SiparisBarkodNu", SqlDbType.NVarChar).Value = BarkodNu;
                try
                {
                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        SiparisOdeme Sip = new SiparisOdeme();
                        if (dr.Read())
                        {
                            Sip.SipariID            = (int)dr["SiparisID"];
                            Sip.FaturaID            = (int)dr["FaturaID"];
                            Sip.OdemesiTamamlandiMi = Convert.ToBoolean(dr["OdendiMi"]);
                            Sip.FaturaBarkod        = dr["FaturaBarkod"].ToString();

                            return(Sip);
                        }
                        else
                        {
                            Sip.SipariID            = -1;
                            Sip.FaturaID            = -1;
                            Sip.OdemesiTamamlandiMi = false;
                            Sip.FaturaBarkod        = string.Empty;

                            return(Sip);
                        }
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
Exemplo n.º 3
0
 public void Insert(SiparisOdeme odeme)
 {
     _repo.odemeRepository.Insert(odeme);
     _repo.Save();
 }