public async Task <SonucModel <IadeAlSonucViewModel> > IadeAl(IadeAlViewModel model) { var oduncKey = model.OduncKey; var sonuc = new SonucModel <IadeAlSonucViewModel> { Tip = SonucTip.Belirsiz, HataMesaji = "Iade Alma İşlemi Gerçekleşemedi" }; var oduncAlinmisKitap = _kitapOduncRepository.SelectInclude(k => k.Kitap.Yazar).Where(o => o.KitapOduncKey == oduncKey).FirstOrDefault(); if (oduncAlinmisKitap == null) { sonuc.HataMesaji = "Ödünç Alınmış Kitap Bulunamadı"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } var uye = await _uyeRepository.FindAsync(u => u.UyeKey == oduncAlinmisKitap.UyeKey); if (uye == null) { sonuc.HataMesaji = "Uye Bulunamadı"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } var kitap = await _kitapRepository.FindAsync(k => k.KitapKey == oduncAlinmisKitap.KitapKey); if (kitap == null) { sonuc.HataMesaji = "Kitap Bulunamadı"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } oduncAlinmisKitap.KitapOduncDurum = (int)KitapDurum.Kutuphanede; oduncAlinmisKitap.GetirisTarihi = DateTime.Now; var guncellemeSonuc = await _kitapOduncRepository.UpdateAsync(oduncAlinmisKitap); if (guncellemeSonuc > 0) { kitap.KitapDurumKey = (int)KitapDurum.Kutuphanede; var kitapDurumGuncelle = await _kitapRepository.UpdateAsync(kitap); if (kitapDurumGuncelle > 0) { sonuc.HataMesaji = $"{kitap.Ad} kitabı {uye.Ad} {uye.Soyad}'den iade alınmıştır."; sonuc.Tip = SonucTip.Basarili; sonuc.Data = new IadeAlSonucViewModel() { DemirbasNo = oduncAlinmisKitap.Kitap.DemirbasNo, KitapAd = oduncAlinmisKitap.Kitap.Ad, KitapOduncKey = oduncAlinmisKitap.KitapOduncKey, Yazar = oduncAlinmisKitap.Kitap.Yazar.Ad }; 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); }