public async Task <IActionResult> OduncVer(int demirbasNo, int uyeKey) { OduncVerViewModel model = new OduncVerViewModel() { DemirbasNo = demirbasNo, UyeKey = uyeKey }; var sonuc = await _uyeServis.OduncVer(model); return(Json(sonuc)); }
public async Task <SonucModel <OduncSonucViewModel> > OduncVer(OduncVerViewModel model) { var sonuc = new SonucModel <OduncSonucViewModel> { Tip = SonucTip.Belirsiz, HataMesaji = "Ödünç Verme İşlemi Başarısız" }; var uye = await _uyeRepository.FindAsync(u => u.UyeKey == model.UyeKey); if (uye == null) { sonuc.HataMesaji = "Üye Bulunamadı"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } var kitap = await _kitapRepository.FindAsync(k => k.DemirbasNo == model.DemirbasNo); if (kitap == null) { sonuc.HataMesaji = "Kitap Bulunamadı"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } if (kitap.KitapDurumKey == (int)KitapDurum.Okuyucuda) { sonuc.HataMesaji = "Ödünç Verilmek İstenen Kitap Okuyucuda Bulunmaktadır"; sonuc.Tip = SonucTip.Basarisiz; return(sonuc); } KitapOdunc odunc = new KitapOdunc() { KitapKey = kitap.KitapKey, UyeKey = uye.UyeKey, KitapOduncDurum = (int)KitapDurum.Okuyucuda, AlisTarihi = DateTime.Now }; var kayitSonuc = await _kitapOduncRepository.InsertAsync(odunc); if (kayitSonuc > 0) { var oduncVerilen = _kitapOduncRepository.SelectIncludeMany(k => k.Kitap.Yazar).Where(o => o.KitapKey == kitap.KitapKey).FirstOrDefault(); kitap.KitapDurumKey = (int)KitapDurum.Okuyucuda; var guncellemeSonuc = await _kitapRepository.UpdateAsync(kitap); if (guncellemeSonuc > 0) { sonuc.HataMesaji = $"{kitap.Ad} kitabı {uye.Ad} {uye.Soyad}'e ödünç verilmiştir"; sonuc.Tip = SonucTip.Basarili; sonuc.Data = new OduncSonucViewModel() { DemirbasNo = oduncVerilen.Kitap.DemirbasNo, KitapAd = oduncVerilen.Kitap.Ad, OduncKey = oduncVerilen.KitapOduncKey, Yazar = oduncVerilen.Kitap.Yazar.Ad, }; return(sonuc); } } return(sonuc); }