public async Task <SonucModel <YazarKayitViewModel> > YazarKaydetGuncelle(YazarKayitViewModel model) { var sonuc = new SonucModel <YazarKayitViewModel> { Tip = SonucTip.Belirsiz, HataMesaji = "Kategori Kaydetme İşlemi Gerçekleştirilmedi." }; if (model.YazarKey > 0) { var guncellenecekYazar = await _yazarRepository.GetByIdAsync(model.YazarKey); guncellenecekYazar.Ad = model.Ad; guncellenecekYazar.YazarHakkinda = model.Hakkinda; var guncellemeSonuc = await _yazarRepository.UpdateAsync(guncellenecekYazar); if (guncellemeSonuc > 0) { sonuc.HataMesaji = $"Yazar Bilgileri Güncellenmiştir."; sonuc.Tip = SonucTip.Basarili; sonuc.Data = model; return(sonuc); } } else { Yazar yazar = new Yazar() { Ad = model.Ad, YazarHakkinda = model.Hakkinda }; var eklemeSonuc = await _yazarRepository.InsertAsync(yazar); var eklenenYazar = await _yazarRepository.FindAsync(x => x.Ad == model.Ad); if (eklemeSonuc > 0) { sonuc.HataMesaji = $"{model.Ad} Yazar Olarak Eklenmiştir."; sonuc.Tip = SonucTip.Basarili; sonuc.Data = new YazarKayitViewModel() { YazarKey = eklenenYazar.YazarKey, Ad = eklenenYazar.Ad, Hakkinda = eklenenYazar.YazarHakkinda }; return(sonuc); } } return(sonuc); }
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); }