Example #1
0
        public int PostProductintoSepetforVisitor(Models.SepettekiUrunler model)
        {
            var AlreadyExistSepet = db.Sepet.FirstOrDefault(x => x.sepetID == model.sepetID);

            if (AlreadyExistSepet != null && AlreadyExistSepet.siparisVerildiMi != true)
            {   // bu ziyaretçiye ait sepet olduğunda buraya girecektir.
                // ziyaretçinin sepeti var ve siparis verilmemiş ise buraya girecektir.
                var product = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                product.Stok.adet -= model.adet;
                model.toplamFiyat  = model.adet * product.fiyat;
                db.SepettekiUrunler.Add(model);
                db.SaveChanges();
                // var olan sepet id 'sini tekrar geri döndürecektir
                var SepetLogDal = new SiparisSepetLogDAL();
                var logsepet    = new Models.logSepet();
                logsepet.adet   = model.adet;
                logsepet.urunID = model.urunID;
                SepetLogDal.PostSiparisLog(logsepet);
                return((int)model.sepetID);
            }
            else
            {   // ziyaretçiye ait sepet yok ise veya var olan sepet siparis verilmiş ise buraya girecektir.
                // burada sepet oluşturulacaktır
                var sepet = new Models.Sepet();
                sepet.siparisVerildiMi = false;
                db.Sepet.Add(sepet);
                db.SaveChanges();

                model.sepetID = sepet.sepetID;
                var product = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                product.Stok.adet -= model.adet;
                model.toplamFiyat  = model.adet * product.fiyat;
                db.SepettekiUrunler.Add(model);
                db.SaveChanges();

                var SepetLogDal = new SiparisSepetLogDAL();
                var logsepet    = new Models.logSepet();
                logsepet.adet   = model.adet;
                logsepet.urunID = model.urunID;
                SepetLogDal.PostSiparisLog(logsepet);
                return(sepet.sepetID);// burada ziyaretçi sepetin Id'sini yolluyoruz ziyaretçi bunu kullanacak(siparişte)
            }
        }
Example #2
0
        public bool  PostProductintoSepetforUser(ViewModels.UserSepettekiUrunlerViewModel model)
        {
            if (model.sepetID > 0)
            {                                                                         // gönderilen modelde sepet Id 0 dan büyük ise kullanıcının ziyaretçi olarak sepeti vardır
                var sepet = db.Sepet.FirstOrDefault(x => x.sepetID == model.sepetID); // bu sepet kullanıcının ziyaretçi olarak oluşturuğu sepettir
                sepet.kullaniciID = model.kullaniciID;
                db.SaveChanges();

                var product2 = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                product2.Stok.adet -= model.adet;
                var sepettekiUrun = new Models.SepettekiUrunler();
                sepettekiUrun.adet        = model.adet;
                sepettekiUrun.sepetID     = model.sepetID;
                sepettekiUrun.urunID      = product2.urunID;
                sepettekiUrun.toplamFiyat = model.adet * product2.fiyat;
                db.SepettekiUrunler.Add(sepettekiUrun);
                db.SaveChanges();
                var SepetLogDal = new SiparisSepetLogDAL();
                var logsepet    = new Models.logSepet();
                logsepet.adet   = model.adet;
                logsepet.urunID = model.urunID;
                SepetLogDal.PostSiparisLog(logsepet);
                return(true);
            }
            else
            {   // kullanıcının ziyaretçi olarak oluşturduğu bir sepet yoktur (ama kullanıcı olarak bir sepeti olabilir)
                // burada kullanıcının sepeti varsa içine eklicez yoksa oluşturucaz
                var sepetler = db.Sepet.Where(x => x.kullaniciID == model.kullaniciID).ToList();
                if (sepetler.Count != 0)
                {
                    var SepetLogDal1 = new SiparisSepetLogDAL();
                    var logsepet1    = new Models.logSepet();
                    foreach (var sep in sepetler)
                    {
                        if (sep.siparisVerildiMi == false)
                        {
                            var product = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                            product.Stok.adet -= model.adet;

                            var SepettekiUrunler = new Models.SepettekiUrunler();
                            SepettekiUrunler.adet        = model.adet;
                            SepettekiUrunler.sepetID     = sep.sepetID;
                            SepettekiUrunler.adet        = model.adet;
                            SepettekiUrunler.urunID      = product.urunID;
                            SepettekiUrunler.toplamFiyat = product.fiyat * model.adet;
                            db.SepettekiUrunler.Add(SepettekiUrunler);
                            db.SaveChanges();

                            logsepet1.adet   = model.adet;
                            logsepet1.urunID = model.urunID;
                            SepetLogDal1.PostSiparisLog(logsepet1);
                            return(true);
                        }
                    }
                }
                else
                {   // yukarıda kullanıcıya ait tüm sepetleri gezdi ve uygun sepet bulamadıysa kod buradan devam edecektir.
                    // burada bu kullanıcıya ait sepet olmadığından sepet oluşturulacaktır
                    var NewSepet1 = new Models.Sepet();
                    NewSepet1.kullaniciID      = model.kullaniciID;
                    NewSepet1.siparisVerildiMi = false;
                    db.Sepet.Add(NewSepet1);
                    db.SaveChanges();

                    var product1 = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                    product1.Stok.adet -= model.adet;
                    var sepettekiUrun1 = new Models.SepettekiUrunler();
                    sepettekiUrun1.adet        = model.adet;
                    sepettekiUrun1.sepetID     = NewSepet1.sepetID;
                    sepettekiUrun1.urunID      = product1.urunID;
                    sepettekiUrun1.toplamFiyat = model.adet * product1.fiyat;
                    db.SepettekiUrunler.Add(sepettekiUrun1);
                    db.SaveChanges();
                    var SepetLogDal2 = new SiparisSepetLogDAL();
                    var logsepet2    = new Models.logSepet();
                    logsepet2.adet   = model.adet;
                    logsepet2.urunID = model.urunID;
                    SepetLogDal2.PostSiparisLog(logsepet2);
                    return(true);
                }
                var NewSepet2 = new Models.Sepet();
                NewSepet2.kullaniciID      = model.kullaniciID;
                NewSepet2.siparisVerildiMi = false;
                db.Sepet.Add(NewSepet2);
                db.SaveChanges();


                var product2 = db.Urun.FirstOrDefault(x => x.urunID == model.urunID);
                product2.Stok.adet -= model.adet;
                var sepettekiUrun2 = new Models.SepettekiUrunler();
                sepettekiUrun2.adet        = model.adet;
                sepettekiUrun2.sepetID     = NewSepet2.sepetID;
                sepettekiUrun2.urunID      = product2.urunID;
                sepettekiUrun2.toplamFiyat = model.adet * product2.fiyat;
                db.SepettekiUrunler.Add(sepettekiUrun2);
                db.SaveChanges();

                var SepetLogDal = new SiparisSepetLogDAL();
                var logsepet    = new Models.logSepet();
                logsepet.adet   = model.adet;
                logsepet.urunID = model.urunID;
                SepetLogDal.PostSiparisLog(logsepet);
                return(true);
            }
        }