public async Task <SayfaliListe <Mesaj> > ListeleMesajYiginiAsync(MesajSorgu sorguNesnesi) { Sorgu = Sorgu.Where(m => (m.GonderenNo == sorguNesnesi.KullaniciNo && m.GonderenSildi == false && m.AlanNo == sorguNesnesi.DigerKullaniciNo) || (m.GonderenNo == sorguNesnesi.DigerKullaniciNo && m.AlanSildi == false && m.AlanNo == sorguNesnesi.KullaniciNo)) .OrderByDescending(mesaj => mesaj.GonderilmeZamani); var sonuc = await SayfaliListe <Mesaj> .SayfaListesiYarat(Sorgu, sorguNesnesi.Sayfa, sorguNesnesi.SayfaBuyuklugu); return(sonuc); }
public async Task <SayfaliListe <Mesaj> > ListeleKullaniciyaGelenMesajlarAsync(MesajSorgu sorguNesnesi) { if (sorguNesnesi.KullaniciNo == null) { throw new ArgumentException("Sisteme giriş yapmış kullanıcı bilgisi yok"); } if (!propertyMappingService.ValidMappingsExistsFor <MesajListeDto, Mesaj>(sorguNesnesi.SiralamaCumlesi)) { throw new ArgumentException("Sıralama bilgisi yanlış!"); } if (!typeHelperService.TryHastProperties <MesajListeDto>(sorguNesnesi.Alanlar)) { throw new ArgumentException("Gösterilmek istenen alanlar hatalı!"); } if (!string.IsNullOrEmpty(sorguNesnesi.AramaCumlesi)) { var anahtarKelimeler = sorguNesnesi.AramaCumlesi.Split(' '); if (anahtarKelimeler.Length > 0) { //Anahtar kelimeler ile ne aranmak isteniyorsa buraya yaz } } if (sorguNesnesi.GelenMesajlar == true) { Sorgu = Sorgu.Where(m => m.AlanNo == sorguNesnesi.KullaniciNo.Value); } else if (sorguNesnesi.GidenMesajlar == true) { Sorgu = Sorgu.Where(m => m.GonderenNo == sorguNesnesi.KullaniciNo.Value); } if (sorguNesnesi.OkunmamisMesajlar == true) { Sorgu = Sorgu.Where(m => m.Okundu == false); } Sorgu = Sorgu.Where(m => (m.GonderenNo == sorguNesnesi.KullaniciNo && m.GonderenSildi == false) || (m.AlanNo == sorguNesnesi.KullaniciNo && m.AlanSildi == false)); var siralamaBilgisi = propertyMappingService.GetPropertyMapping <MesajListeDto, Mesaj>(); var siralanmisSorgu = Sorgu.SiralamayiAyarla(sorguNesnesi.SiralamaCumlesi, siralamaBilgisi); var sonuc = await SayfaliListe <Mesaj> .SayfaListesiYarat(siralanmisSorgu, sorguNesnesi.Sayfa, sorguNesnesi.SayfaBuyuklugu); return(sonuc); }