コード例 #1
0
        public async Task <SonucModel <KitapKayitViewModel> > KitapKaydet(KitapKayitViewModel model)
        {
            if (model != null)
            {
                model.Ad = Helper.ToTitleCase(model.Ad);
            }
            var sonuc = await _kitapServis.KitapKaydetGuncelle(model);

            return(sonuc);
        }
コード例 #2
0
        public async Task <IActionResult> KitapKayit(KitapKayitViewModel model)
        {
            var yayinevleri = await _yayineviServis.YayinevleriGetir();

            var yazarlar = await _yazarServis.YazarlariGetir();

            ViewBag.yazarlar    = yazarlar;
            ViewBag.yayinevleri = yayinevleri;

            if (model.KitapKey.HasValue)
            {
                try
                {
                    return(PartialView("~/Views/Kitap/_KitapKayitPartial.cshtml", model));
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            return(PartialView("~/Views/Kitap/_KitapKayitPartial.cshtml"));
        }
コード例 #3
0
        public async Task <SonucModel <KitapKayitViewModel> > KitapKaydetGuncelle(KitapKayitViewModel model)
        {
            var sonuc = new SonucModel <KitapKayitViewModel>
            {
                Tip        = SonucTip.Belirsiz,
                HataMesaji = "Kitap Kaydetme İşlemi Gerçekleştirilmedi."
            };

            var yazar = await _yazarRepository.FindAsync(x => x.Ad == model.Yazar.Ad);

            var yayinevi = await _yayineviRepository.FindAsync(x => x.Ad == model.Yayinevi.Ad);

            // Eğer autocomplete'te olmayan bir yazar veya yayinevi girildiyse ekle.
            if (yazar == null)
            {
                yazar = new Yazar
                {
                    Ad = model.Yazar.Ad
                };
                await _yazarRepository.InsertAsync(yazar);

                yazar = await _yazarRepository.FindAsync(x => x.Ad == model.Yazar.Ad);
            }

            if (yayinevi == null)
            {
                yayinevi = new Yayinevi
                {
                    Ad = model.Yayinevi.Ad
                };
                await _yayineviRepository.InsertAsync(yayinevi);

                yayinevi = await _yayineviRepository.FindAsync(x => x.Ad == model.Yayinevi.Ad);
            }

            if (model.KitapKey > 0)
            {
                var guncellenecekKitap = await _kitapRepository.GetByIdAsync(model.KitapKey);

                guncellenecekKitap.Ad                = model.Ad;
                guncellenecekKitap.Isbn              = model.Isbn;
                guncellenecekKitap.YazarKey          = yazar.YazarKey;
                guncellenecekKitap.YayineviKey       = yayinevi.YayineviKey;
                guncellenecekKitap.KitapHakkindaOzet = model.KitapHakkindaOzet;
                guncellenecekKitap.SayfaSayisi       = Convert.ToInt32(model.SayfaSayisi);
                var guncellemeSonuc = await _kitapRepository.UpdateAsync(guncellenecekKitap);

                if (guncellemeSonuc > 0)
                {
                    sonuc.HataMesaji = $"Kitap Bilgileri Güncellenmiştir.";
                    sonuc.Tip        = SonucTip.Basarili;
                    sonuc.Data       = model;
                    return(sonuc);
                }
            }
            else
            {
                Kitap kitap = new Kitap()
                {
                    Ad                = model.Ad,
                    KitapDurumKey     = (int)KitapDurum.Kutuphanede,
                    Isbn              = model.Isbn,
                    KitapHakkindaOzet = model.KitapHakkindaOzet,
                    SayfaSayisi       = Convert.ToInt32(model.SayfaSayisi),
                    YazarKey          = yazar.YazarKey,
                    YayineviKey       = yayinevi.YayineviKey,
                };

                var eklemeSonuc = await _kitapRepository.InsertAsync(kitap);

                var eklenenKitap = await _kitapRepository.FindAsync(x => x.Ad == model.Ad);

                if (eklemeSonuc > 0)
                {
                    eklenenKitap.DemirbasNo = DemirbasNoUret(eklenenKitap.KitapKey);

                    var eklenenKitabiGuncelle = await _kitapRepository.UpdateAsync(eklenenKitap);

                    if (eklenenKitabiGuncelle > 0)
                    {
                        sonuc.HataMesaji = $"{model.Ad} Kitap Olarak Eklenmiştir.";
                        sonuc.Tip        = SonucTip.Basarili;
                        sonuc.Data       = new KitapKayitViewModel()
                        {
                            KitapKey          = eklenenKitap.KitapKey,
                            Ad                = eklenenKitap.Ad,
                            Isbn              = eklenenKitap.Isbn,
                            SayfaSayisi       = Convert.ToString(eklenenKitap.SayfaSayisi),
                            KitapHakkindaOzet = eklenenKitap.KitapHakkindaOzet,
                            KitapDurumKey     = eklenenKitap.KitapDurumKey
                        };
                    }

                    return(sonuc);
                }
            }

            return(sonuc);
        }