예제 #1
0
        // GET: Bayi/Edit/5
        public ActionResult UrunAdetGuncelle(int urunAdet, int urunId)
        {
            if (urunAdet == 0)
            {
                SepettenCikarUrunu(urunId);
            }
            List <SepetUrun> SepettekiUrunler = new List <SepetUrun>();

            if (Session["SepettekiUrunler"] != null)
            {
                SepettekiUrunler = (List <SepetUrun>)Session["SepettekiUrunler"];
            }

            if (SepettekiUrunler.Count > 0)
            {
                SepetUrun tempUrun = SepettekiUrunler.Find(x => x.UrunId == urunId);
                tempUrun.Adet             = urunAdet;
                tempUrun.UrunToplamFiyati = urunAdet * tempUrun.UrunFiyati;

                Session["SepettekiUrunler"] = SepettekiUrunler;
                return(RedirectToAction("Basket", "Bayi"));
            }
            else
            {
                return(RedirectToAction("Basket", "Bayi"));
            }
        }
예제 #2
0
        public async Task <SepetUrun> UrunEkle(string userName, int urunId)
        {
            AppUser appUser = await _userManager.Users.Include(u => u.Sepet).ThenInclude(s => s.Urunler).ThenInclude(u => u.Urun).FirstOrDefaultAsync(u => u.UserName == userName);

            SepetUrun sepetUrun = appUser.Sepet.Urunler.FirstOrDefault(u => u.UrunId == urunId);

            if (appUser.Sepet.Urunler.Count > 0 && sepetUrun != null)
            {
                sepetUrun.Adet++;
            }
            else
            {
                sepetUrun = new SepetUrun()
                {
                    SepetId = appUser.Sepet.Id,
                    Adet    = 1,
                    UrunId  = urunId
                };
                _sepetUrunRepository.Add(sepetUrun);
                _sepetUrunRepository.Save();

                sepetUrun = _sepetUrunRepository.GetTable().Include(s => s.Urun).FirstOrDefault(s => s.UrunId == urunId && s.SepetId == appUser.Sepet.Id);
            }
            await _userManager.UpdateAsync(appUser);

            await _userManager.UpdateSecurityStampAsync(appUser);

            return(sepetUrun);
        }
예제 #3
0
        public void AddUrunToSepet(int sepetId, SepetUrun sepetUrun)
        {
            using (var context = new eCommerceContext())
            {
                var entity        = context.Sepetler.Find(sepetId);
                var sepetUrunIndb = entity.SepetUrun.Where(x => x.Urun.Id == sepetUrun.Urun.Id).FirstOrDefault();
                if (sepetUrunIndb == null)
                {
                    entity.SepetUrun.Add(sepetUrun);
                    var updatedEntity = context.Entry(entity);
                    updatedEntity.State = EntityState.Modified;
                    context.Entry <Urun>(sepetUrun.Urun).State = EntityState.Unchanged;
                    context.Entry <Kategori>(sepetUrun.Urun.Kategori).State = EntityState.Unchanged;
                    foreach (var item in sepetUrun.Urun.UrunImages)
                    {
                        context.Entry <UrunImage>(item).State = EntityState.Unchanged;
                    }
                }
                else
                {
                    sepetUrunIndb.Miktar += 1;
                }

                context.SaveChanges();
            }
        }
예제 #4
0
 //ürünlerin sepete eklenmesini sağlayan metot
 public void SepeteEkle(SepetUrun su)
 {
     //oturum değişkenlerinde AktifSepet boşsa
     if (HttpContext.Current.Session["AktifSepet"] == null)
     {
         //yeni sepet oluştur
         Sepet sepet = new Sepet();
         //Ürünü sepete ekle
         sepet.Urunler.Add(su);
         //sepeti "AktifSepet"e ekle
         HttpContext.Current.Session["AktifSepet"] = sepet;
     }
     else//AktifSepet doluysa
     {
         //AktifSepet adlı oturum değişkenini sepet nesnesine ata
         Sepet sepet = (Sepet)HttpContext.Current.Session["AktifSepet"];
         //eğer sepette aynı ürün varsa ürün adetini artır
         if (sepet.Urunler.Any(x => x.urun.UrunID == su.urun.UrunID))
         {
             Urunler.FirstOrDefault(x => x.urun.UrunID == su.urun.UrunID).Adet += 1;
         }
         else//aynı ürün yoksa ürünü sepete ekle
         {
             sepet.Urunler.Add(su);
         }
     }
 }
예제 #5
0
        protected void btn_sepeteEkle_Click(object sender, EventArgs e)
        {
            if (Request.Cookies["Musteri"] != null)
            {
                int  urunID        = int.Parse(Request.QueryString["urunID"]);
                Urun eklenecekUrun = eticaretDB.Uruns.SingleOrDefault(u => u.UrunID == urunID);
                int  urunStok      = eklenecekUrun.Stok;
                int  ekleneceAdet  = int.Parse(txt_urunAdet.Text);

                if ((urunStok - ekleneceAdet) >= 0)
                {
                    eklenecekUrun.Stok -= ekleneceAdet;
                    eticaretDB.SubmitChanges();

                    string kullaniciID = Request.Cookies["Musteri"]["kullaniciID"];
                    Sepet  sepet       = eticaretDB.Sepets.SingleOrDefault(s => s.KullaniciID == int.Parse(kullaniciID));
                    int    fiyat       = int.Parse(eklenecekUrun.Fiyat);
                    int    indirim;
                    if (eklenecekUrun.Indirim != null)
                    {
                        indirim = (int)eklenecekUrun.Indirim;
                    }
                    else
                    {
                        indirim = 0;
                    }
                    int indirimliFiyat = fiyat - (fiyat * indirim) / 100;
                    sepet.Fiyat = (int.Parse(sepet.Fiyat) + (ekleneceAdet * indirimliFiyat)).ToString();
                    sepet.Durum = "dolu";
                    eticaretDB.SubmitChanges();

                    SepetUrun sepetteVarmi = eticaretDB.SepetUruns.SingleOrDefault(v => v.UrunID == urunID && v.SepetID == sepet.SepetID);
                    if (sepetteVarmi == null)
                    {
                        SepetUrun sepetUrun = new SepetUrun();
                        sepetUrun.UrunID    = urunID;
                        sepetUrun.SepetID   = sepet.SepetID;
                        sepetUrun.UrunAdet += ekleneceAdet;
                        eticaretDB.SepetUruns.InsertOnSubmit(sepetUrun);
                        eticaretDB.SubmitChanges();
                    }
                    else
                    {
                        sepetteVarmi.UrunAdet += ekleneceAdet;
                        eticaretDB.SubmitChanges();
                    }
                    lbl_urunDetayMesaj.Text = "Ürün Sepete Eklendi...";
                }
                else
                {
                    lbl_urunDetayMesaj.Text = "Yeterli Sayıda Ürün Kalmadı...";
                }
            }
            else
            {
                Response.Redirect("UyeGiris.aspx");
            }
        }
예제 #6
0
        public async Task <decimal> AdetDegistir(string userName, int urunId, int adet)
        {
            AppUser   appUser   = _userManager.Users.Include(u => u.Sepet).ThenInclude(s => s.Urunler).ThenInclude(u => u.Urun).FirstOrDefault(u => u.UserName == userName);
            SepetUrun sepetUrun = appUser.Sepet.Urunler.FirstOrDefault(u => u.UrunId == urunId);

            sepetUrun.Adet = adet;
            decimal        toplamTutar = appUser.Sepet.Urunler.Sum(u => u.Adet * u.Urun.Fiyat);
            IdentityResult result      = await _userManager.UpdateSecurityStampAsync(appUser);

            await _userManager.UpdateSecurityStampAsync(appUser);

            return(toplamTutar);
        }
예제 #7
0
        public async Task <JsonResult> UrunEkle(int id)
        {
            SepetUrun sepetUrun = await _sepetBusiness.UrunEkle(User.Identity.Name, id);

            return(Json(new
            {
                sepetUrun.Adet,
                sepetUrun.Urun.UrunAdi,
                sepetUrun.Urun.Fiyat,
                sepetUrun.Urun.Id,
                sepetUrun.Urun.StokAdet
            }));
        }
예제 #8
0
        public async Task <decimal> Sil(string userName, int urunId)
        {
            AppUser appUser = await _userManager.Users.Include(u => u.Sepet).ThenInclude(s => s.Urunler).ThenInclude(u => u.Urun).FirstOrDefaultAsync(u => u.UserName == userName);

            SepetUrun silinecekUrun = appUser.Sepet.Urunler.FirstOrDefault(u => u.UrunId == urunId);
            decimal   toplamTutar   = appUser.Sepet.Urunler.Sum(u => u.Adet * u.Urun.Fiyat);

            appUser.Sepet.Urunler.Remove(silinecekUrun);
            await _userManager.UpdateAsync(appUser);

            await _userManager.UpdateSecurityStampAsync(appUser);

            return(toplamTutar);
        }
예제 #9
0
 //--------------------------------------------------------------------------------------+
 protected void Listem_RowDataBound(object sender, GridViewRowEventArgs e)
 {
     if (e.Row.RowType == DataControlRowType.DataRow)
     {
         SepetUrun myCart = (SepetUrun)e.Row.DataItem;
         _SepetToplam += myCart.BirimFiyat * myCart.Miktar;
     }
     else if (e.Row.RowType == DataControlRowType.Footer)
     {
         if (_SepetToplam > 0)
         {
             CheckOutHeader.InnerText = "Siparişinizi Gözden Geçirin ve Tamamlayın";
             Gönder.Visible           = true;
             e.Row.Cells[3].Text      = "Total: " + _SepetToplam.ToString("C");
         }
     }
 }
예제 #10
0
        public ActionResult AddToBasket(int?id)
        {
            List <SepetUrun> SepettekiUrunler = new List <SepetUrun>();

            if (Session["SepettekiUrunler"] != null)
            {
                SepettekiUrunler = (List <SepetUrun>)Session["SepettekiUrunler"];
            }
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            SepetUrun tempUrun = SepettekiUrunler.Find(x => x.UrunId == id);

            if (tempUrun != null)
            {
                tempUrun.Adet++;
                tempUrun.UrunToplamFiyati = tempUrun.UrunFiyati * tempUrun.Adet;
            }
            else
            {
                Urun      urun      = db.Urun.Find(id);
                SepetUrun sepetUrun = new SepetUrun();
                sepetUrun.UrunId           = urun.Id;
                sepetUrun.UrunAdi          = urun.UrunAdi;
                sepetUrun.UrunFiyati       = urun.BayiFiyati;
                sepetUrun.BakimFiyati      = urun.BakimFiyati;
                sepetUrun.BakimSure        = urun.BakimSure;
                sepetUrun.Adet             = 1;
                sepetUrun.UrunToplamFiyati = urun.BayiFiyati * sepetUrun.Adet;

                SepettekiUrunler.Add(sepetUrun);
            }
            Session["SepettekiUrunler"] = SepettekiUrunler;

            if (SepettekiUrunler.Count > 0)
            {
                return(RedirectToAction("Basket", "Bayi"));
            }
            else
            {
                return(RedirectToAction("Basket", "Bayi"));
            }
        }
예제 #11
0
        public ActionResult TestVerisiOlustur(int musteriAdet, int sepetAdet)
        {
            string[] Sehirler = { "Ankara", "İstanbul", "İzmir", "Bursa", "Edirne", "Konya", "Antalya", "Diyarbakır", "Van", "Rize" };

            List <int> musteriidler = new List <int>();
            List <int> sepetidler   = new List <int>();

            Musteri new_musteri = new Musteri();

            int sepeturuncounter = 0;

            for (int i = 0; i < musteriAdet; i++)
            {
                new_musteri.Ad    = stringgenerator();
                new_musteri.Soyad = stringgenerator();
                int sehir_index = intgenerator(Sehirler.Length);
                new_musteri.Sehir = Sehirler[sehir_index];
                db.Musteri.Add(new_musteri);
                db.SaveChanges();
                musteriidler.Add(new_musteri.MusteriID);
            }

            for (int j = 0; j < sepetAdet; j++)
            {
                Sepet new_sepet = new Sepet();
                new_sepet.MusteriID = musteriidler[intgenerator(musteriidler.Count)];
                db.Sepet.Add(new_sepet);
                db.SaveChanges();
                sepeturuncounter = intgenerator2(1, 6);

                for (int k = 0; k < sepeturuncounter; k++)
                {
                    SepetUrun new_sepeturun = new SepetUrun();
                    new_sepeturun.SepetID  = new_sepet.SepetID;
                    new_sepeturun.Tutar    = intgenerator2(100, 1001);
                    new_sepeturun.Aciklama = "Mülakat Deneme";
                    db.SepetUrun.Add(new_sepeturun);
                    db.SaveChanges();
                }
            }
            return(RedirectToAction("MainMenu", "Musteri"));
        }
예제 #12
0
        public ActionResult SepeteUrunEkle(int urunId)
        {
            Urun sepeteEklenecekUrun = UrunManager.GetById(urunId);

            var    user       = UserManager.FindByName(User.Identity.Name);
            Profil userProfil = user.Profil.LastOrDefault();
            Sepet  userSepet  = SepetManager.GetByProfilId(userProfil.ProfilId);

            if (userSepet.SepetUrun.Count == 0)
            {
                userSepet.ProfilId = userProfil.ProfilId;
                SepetManager.Add(userSepet);
            }
            SepetUrun sepetUrun = new SepetUrun {
                SepetId = userSepet.SepetId, Urun = sepeteEklenecekUrun, Miktar = 1
            };

            SepetManager.AddUrunToSepet(userSepet.SepetId, sepetUrun);

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult SepeteEkle(int id)
        {
            Product urun = db.Products.Where(p => p.ProductID == id).FirstOrDefault();

            //Sepet var mı? kontrolü
            List <SepetUrun> mevcutListe;

            if (Session["sepet"] == null)
            {
                mevcutListe = new List <SepetUrun>();
            }
            else
            {
                mevcutListe = (List <SepetUrun>)Session["sepet"];
            }
            //Ürünü sepete ekle
            bool sepetteVarmi = mevcutListe.Count > 0 && mevcutListe.FirstOrDefault(su => su.Id == id) != null;

            if (sepetteVarmi)
            {
                SepetUrun varolan = mevcutListe.FirstOrDefault(su => su.Id == id);
                varolan.Adet++;
            }
            else
            {
                SepetUrun yeni = new SepetUrun();
                yeni.Ad      = urun.ProductName;
                yeni.Id      = urun.ProductID;
                yeni.Fiyat   = Convert.ToDecimal(urun.UnitPrice);
                yeni.Adet    = 1;
                yeni.Indirim = 0;

                mevcutListe.Add(yeni);
            }

            Session["sepet"] = mevcutListe;


            return(View(mevcutListe));
        }
예제 #14
0
        public ActionResult SepettenCikarUrunu(int urunId)
        {
            List <SepetUrun> SepettekiUrunler = new List <SepetUrun>();

            if (Session["SepettekiUrunler"] != null)
            {
                SepettekiUrunler = (List <SepetUrun>)Session["SepettekiUrunler"];
            }

            if (SepettekiUrunler.Count > 0)
            {
                SepetUrun tempUrun = SepettekiUrunler.Find(x => x.UrunId == urunId);
                SepettekiUrunler.Remove(tempUrun);

                Session["SepettekiUrunler"] = SepettekiUrunler;
                return(RedirectToAction("Basket", "Bayi"));
            }
            else
            {
                return(RedirectToAction("Basket", "Bayi"));
            }
        }
예제 #15
0
        public void UrunEkle(int urunId, int musteriId, int adet)
        {
            var sepet = _db.Sepetler.Find(musteriId);

            var sepeturun = sepet.Urunler.FirstOrDefault(x => x.UrunId == urunId);

            if (sepeturun == null)
            { //bu ürünü ilk defa sepete atıyoruz
                SepetUrun surun = new SepetUrun();
                surun.SepetId    = sepet.MusteriId;
                surun.UrunId     = urunId;
                surun.Adet       = adet;
                surun.BirimFiyat = _db.Urunler.Find(urunId).BirimFiyati;
                _db.SepetUrunler.Add(surun);
            }
            else
            {
                //bu ürünü daha önce de almışız, olanın adetini artıralım
                sepeturun.Adet            += adet;
                _db.Entry(sepeturun).State = EntityState.Modified;
            }
        }
예제 #16
0
        public static void SepettenCikar(int urunID, string fiyat, int sepetID)
        {
            EticaretDBDataContext eticaret_db = new EticaretDBDataContext();
            SepetUrun             sepetUrun   = eticaret_db.SepetUruns.SingleOrDefault(su => su.UrunID == urunID && su.SepetID == sepetID);

            Urun urun = eticaret_db.Uruns.SingleOrDefault(u => u.UrunID == urunID);

            urun.Stok += sepetUrun.UrunAdet;
            eticaret_db.SubmitChanges();

            Sepet sepet       = eticaret_db.Sepets.SingleOrDefault(s => s.SepetID == sepetUrun.SepetID);
            int   guncelFiyat = int.Parse(sepet.Fiyat) - int.Parse(fiyat);

            sepet.Fiyat = guncelFiyat.ToString();
            if (guncelFiyat == 0)
            {
                sepet.Durum = "bos";
            }
            eticaret_db.SubmitChanges();

            eticaret_db.SepetUruns.DeleteOnSubmit(sepetUrun);
            eticaret_db.SubmitChanges();
        }
        public void UrunEkle(int urunId, int musteriId, int Adet)
        {
            var bulunansepet = _db.Sepetler.Find(musteriId);
            var sepeturun    = bulunansepet.Urunler.FirstOrDefault(x => x.UrunId == urunId);

            if (sepeturun == null)
            {
                //bu ut-runu ılk defa aılmısız
                SepetUrun urun = new SepetUrun();
                urun.UrunId     = urunId;
                urun.SepetId    = bulunansepet.MusteriId;
                urun.BirimFiyat = _db.Urunler.Find(urunId).BirimFiyati;
                urun.Adet       = Adet;
                bulunansepet.Urunler.Add(urun);
            }
            else
            {
                ///bu urunu daha once almısız adet artıralım
                ///
                sepeturun.Adet            += Adet;
                _db.Entry(sepeturun).State = System.Data.Entity.EntityState.Modified;
            }
        }
        public ActionResult AddItem(int id)
        {
            int musteriid = Convert.ToInt32(Session["MusteriID"]);

            int   sepetbul       = db.Sepet.Where(x => x.MusteriID == musteriid).Select(x => x.SepetID).FirstOrDefault();
            Sepet kullanicisepet = db.Sepet.Find(sepetbul);
            var   urun           = db.Urun.Find(id);

            if (kullanicisepet == null)
            {
                Sepet sepet = new Sepet();
                sepet.MusteriID = Convert.ToInt32(Session["MusteriID"]);
                db.Sepet.Add(sepet);
                db.SaveChanges();

                SepetUrun sepeturun = new SepetUrun();
                sepeturun.SepetID  = sepet.SepetID;
                sepeturun.Tutar   += urun.UrunFiyat;
                sepeturun.Aciklama = "deneme";
                sepeturun.UrunID   = id;
                db.SepetUrun.Add(sepeturun);
                db.SaveChanges();
                return(RedirectToAction("Index", "Urunler"));
            }
            else
            {
                SepetUrun sepeturun = new SepetUrun();
                sepeturun.SepetID  = kullanicisepet.SepetID;
                sepeturun.Tutar    = urun.UrunFiyat;
                sepeturun.Aciklama = "deneme";
                sepeturun.UrunID   = id;
                db.SepetUrun.Add(sepeturun);
                db.SaveChanges();
                return(RedirectToAction("Index", "Urunler"));
            }
        }
 public void AddUrunToSepet(int sepetId, SepetUrun sepetUrun)
 {
     _sepetDAL.AddUrunToSepet(sepetId, sepetUrun);
 }
예제 #20
0
        private static void TestVerisiOlustur(int musteriAdet, int sepetAdet)
        {
            string[] cities     = new string[] { "Ankara", "İstanbul", "İzmir", "Bursa", "Edirne", "Konya", "Antalya", "Diyarbakır", "Van", "Rize" };
            string[] names      = new string[] { "Alp", "Ali", "Hasan", "Mustafa", "Kerem", "Taner", "Mikail" };
            string[] surnames   = new string[] { "Köse", "Kaldırım", "Karaca", "Açık", "Günay", "Eser", "Güler" };
            int[]    currentIDs = new int[musteriAdet];
            Random   rnd        = new Random();

            for (int i = 0; i < musteriAdet; i++)
            {
                int cityIndex    = rnd.Next(0, 9);
                int nameIndex    = rnd.Next(0, 6);
                int surnameIndex = rnd.Next(0, 6);
                using (var context = new EFCoreTutorialContext())
                {
                    Musteri musteri = new Musteri()
                    {
                        Ad    = names[nameIndex],
                        Soyad = surnames[surnameIndex],
                        Sehir = cities[cityIndex]
                    };
                    context.Add(musteri);
                    context.SaveChanges();
                }
                using (var context = new EFCoreTutorialContext())
                {
                    var musteri = context.Musteri.OrderByDescending(x => x.Id).FirstOrDefault();
                    currentIDs[i] = musteri.Id;
                }
            }
            for (int i = 0; i < sepetAdet; i++)
            {
                int musteriID = rnd.Next(0, musteriAdet - 1);
                int sepetID;
                using (var context = new EFCoreTutorialContext())
                {
                    Sepet sepet = new Sepet()
                    {
                        MusteriId = currentIDs[musteriID],
                        Tarih     = DateTime.Now
                    };
                    context.Add(sepet);
                    context.SaveChanges();
                }
                using (var context = new EFCoreTutorialContext())
                {
                    var sepet = context.Sepet.OrderByDescending(x => x.Id).FirstOrDefault();
                    sepetID = sepet.Id;
                    int sepetCount = rnd.Next(1, 5);
                    for (int j = 0; j < sepetCount; j++)
                    {
                        SepetUrun sepetUrun = new SepetUrun()
                        {
                            SepetId  = sepetID,
                            Tutar    = rnd.Next(100, 1000),
                            Aciklama = "Açıklama"
                        };
                        context.Add(sepetUrun);
                        context.SaveChanges();
                    }
                }
            }
        }