public ActionResult Satis(VMSanalSiparis Data) { if (Session["User"] != null) { int id = int.Parse(Session["User"].ToString()); SepetRepo.SepetiKaydetKullanici(id, Data); return(RedirectToAction("Satis")); } else { TempData["UyariTipi"] = "text-danger"; TempData["Sonuc"] = "Tarayıcıda Oturum Süreniz Dolmuş! Lütfen Tekrar Oturum Açın!"; return(RedirectToAction("Logon", "Login")); } }
public static bool SepetiKaydetKullanici(int KullaniciID, VMSanalSiparis data) //Kullanıcı Modunda Manuel Sepeti Ekle { using (PHDB db = new PHDB()) { try { var bul = db.SanalSepet.Where(p => p.KullanicilarID == KullaniciID).ToList(); if (bul.Count != 0) { var liste = bul.Select(p => new UrunSepet { Adet = p.Adet, Fiyat = p.Fiyat, KullanicilarID = p.KullanicilarID, MalzemeKodu = p.MalzemeKodu, Marka = p.Marka, Model = p.Model, SinifKodu = p.SinifKodu, SinifTanimi = p.SinifTanimi, UrunStokID = db.UrunStok.FirstOrDefault(e => e.MalzemeKodu == p.MalzemeKodu).UrunStokID }).ToList(); int Uye; try { Uye = db.Musteri.FirstOrDefault(p => p.AdiSoyadi == data.AdiSoyadi.Trim().ToUpper()).MusteriID; } catch { db.Musteri.Add(new Musteri { AdiSoyadi = data.AdiSoyadi.Trim().ToUpper(), Adres = data.Adres.Trim().ToUpper(), MailAdresi = data.MailAdresi, not = data.not.Trim().ToUpper(), Tarih = DateTime.Now.ToShortDateString(), Telefon = data.Telefon.Trim().ToUpper() }); db.SaveChanges(); Uye = db.Musteri.FirstOrDefault(p => p.AdiSoyadi == data.AdiSoyadi.Trim().ToUpper()).MusteriID; } db.Sepet.Add(new Sepet() { SiparisTamamlandimi = true, MusteriID = Uye, KullanicilarID = KullaniciID, UrunSepet = liste, Manuel = true, Aktifmi = true, ToplamAdet = db.SanalSepet.Where(p => p.KullanicilarID == KullaniciID).Sum(P => P.Adet), ToplamFiyat = data.ToplamFiyat, IndirimliFiyat = data.IndirimliFiyat }); db.SaveChanges(); var bulsepet = db.Sepet.FirstOrDefault(p => p.Aktifmi == true); bool sonuc = SiparisRepo.SiparisKaydet(bulsepet); if (sonuc == true) { bulsepet.Aktifmi = false; } db.SanalSepet.RemoveRange(bul); db.SaveChanges(); return(true); } else { return(false); } } catch { return(false); } } }