public virtual void İzinleriKur(IİzinSağlayıcı izinSağlayıcı) { //yeni izinleri kur var izinler = izinSağlayıcı.İzinleriAl(); foreach (var izin in izinler) { var izin1 = İzinKaydıAlSistemAdı(izin.SistemAdı); if (izin1 == null) { //yeni izin (kur) izin1 = new İzinKaydı { Adı = izin.Adı, SistemAdı = izin.SistemAdı, Kategori = izin.Kategori, }; //varsayılan kullanıcı rol mapping var varsayılanİzinler = izinSağlayıcı.VarsayılanİzinleriAl(); foreach (var varsayılanİzin in varsayılanİzinler) { var kullanıcıRolü = _kullanıcıServisi.KullanıcıRolüAlSistemAdı(varsayılanİzin.KullanıcıRolüSistemAdı); if (kullanıcıRolü == null) { //yeni rol (kaydet) kullanıcıRolü = new KullanıcıRolü { Adı = varsayılanİzin.KullanıcıRolüSistemAdı, Aktif = true, SistemAdı = varsayılanİzin.KullanıcıRolüSistemAdı }; _kullanıcıServisi.KullanıcıRolüEkle(kullanıcıRolü); } var varsayılanMappingSağlandı = (from p in varsayılanİzin.İzinKayıtları where p.SistemAdı == izin1.SistemAdı select p).Any(); var mappingMevcut = (from p in kullanıcıRolü.İzinKayıtları where p.SistemAdı == izin1.SistemAdı select p).Any(); if (varsayılanMappingSağlandı && !mappingMevcut) { izin1.KullanıcıRolleri.Add(kullanıcıRolü); } } //yeni izini kaydet İzinKaydıEkle(izin1); } } }
public virtual ActionResult GenelIstatistikler() { var model = new GenelIstatistiklerModel(); /* * model.KongreSayısı = _kongreServisi.TümKongrelerAl( * pageIndex: 0, * pageSize: 1).TotalCount; */ model.KullanıcıSayısı = _kullanıcıServisi.TümKullanıcılarıAl( kullanıcıRolIdleri: new[] { _kullanıcıServisi.KullanıcıRolüAlSistemAdı(SistemKullanıcıRolAdları.Kayıtlı).Id }, sayfaIndeksi: 0, sayfaBüyüklüğü: 1).TotalCount; model.TeklifSayısı = _teklifServisi.TümTeklifAl().Count; model.OdemeFormuSayısı = _odemeFormuServisi.TümOdemeFormuAl().Count; return(PartialView(model)); }
public virtual KullanıcıKayıtSonuçları KullanıcıKaydet(KullanıcıKayıtİsteği istek) { if (istek == null) { throw new ArgumentNullException("istek"); } if (istek.Kullanıcı == null) { throw new ArgumentException("Mevcut kullanıcı yüklenemedi"); } var sonuç = new KullanıcıKayıtSonuçları(); if (istek.Kullanıcı.AramaMotoruHesabı()) { sonuç.HataEkle("Arama motoru kaydedilemedi"); return(sonuç); } if (istek.Kullanıcı.ArkaPlanGöreviHesabı()) { sonuç.HataEkle("Arka plan görevi hesabı kaydedilemedi"); return(sonuç); } if (istek.Kullanıcı.IsRegistered()) { sonuç.HataEkle("Mevcut kullanıcı zaten kayıtlı"); return(sonuç); } if (String.IsNullOrEmpty(istek.Email)) { sonuç.HataEkle("E-mail sağlanamadı"); return(sonuç); } if (!GenelYardımcı.GeçerliMail(istek.Email)) { sonuç.HataEkle("Hatalı E-mail"); return(sonuç); } if (String.IsNullOrWhiteSpace(istek.Şifre)) { sonuç.HataEkle("Şifre sağlanamadı"); return(sonuç); } if (_kullanıcıAyarları.KullanıcıAdlarıEtkin) { if (String.IsNullOrEmpty(istek.KullanıcıAdı)) { sonuç.HataEkle("Kullanıcı adı sağlanamadı"); return(sonuç); } } //benzersiz kullanıcıyı doğrulama if (_kullanıcıServisi.KullanıcıAlEmail(istek.Email) != null) { sonuç.HataEkle("E-Mail adresi zaten mevcut"); return(sonuç); } if (_kullanıcıAyarları.KullanıcıAdlarıEtkin) { if (_kullanıcıServisi.KullanıcıAlKullanıcıAdı(istek.KullanıcıAdı) != null) { sonuç.HataEkle("Kullanıcı adı zaten mevcut"); return(sonuç); } } //buradan sonra istek doğrulandı istek.Kullanıcı.KullanıcıAdı = istek.KullanıcıAdı; istek.Kullanıcı.Email = istek.Email; var kullanıcıŞifre = new KullanıcıŞifre { Kullanıcı = istek.Kullanıcı, ŞifreFormatı = istek.ŞifreFormatı, OluşturulmaTarihi = DateTime.UtcNow }; switch (istek.ŞifreFormatı) { case ŞifreFormatı.Temiz: kullanıcıŞifre.Şifre = istek.Şifre; break; case ŞifreFormatı.Encrypted: kullanıcıŞifre.Şifre = _şifrelemeServisi.TextŞifrele(istek.Şifre); break; case ŞifreFormatı.Hashed: { var saltKey = _şifrelemeServisi.SaltAnahtarıOluştur(5); kullanıcıŞifre.ŞifreSalt = saltKey; kullanıcıŞifre.Şifre = _şifrelemeServisi.ŞifreHashOluştur(istek.Şifre, saltKey, _kullanıcıAyarları.HashŞifreFormatı); } break; } _kullanıcıServisi.KullanıcıŞifresiEkle(kullanıcıŞifre); istek.Kullanıcı.Aktif = istek.Onaylandı; //kayıtlı rol ekle var kayıtlıRol = _kullanıcıServisi.KullanıcıRolüAlSistemAdı(SistemKullanıcıRolAdları.Kayıtlı); if (kayıtlıRol == null) { throw new TSHata("Kayıtlı rolü eklenemedi"); } istek.Kullanıcı.KullanıcıRolleri.Add(kayıtlıRol); //ziyaretçi rolünü sil var ziyaretçiRolü = istek.Kullanıcı.KullanıcıRolleri.FirstOrDefault(cr => cr.SistemAdı == SistemKullanıcıRolAdları.Ziyaretçi); if (ziyaretçiRolü != null) { istek.Kullanıcı.KullanıcıRolleri.Remove(ziyaretçiRolü); } //Add reward points for kullanıcı registration (if enabled) // // _kullanıcıServisi.KullanıcıGüncelle(istek.Kullanıcı); //publish event _olayYayınlayıcı.Yayınla(new KullanıcıŞifreDeğiştirdiOlayı(kullanıcıŞifre)); return(sonuç); }
private bool BaşkaYöneticiMevcut(Kullanıcı kullanıcı) { var kullanıcılar = _kullanıcıServisi.TümKullanıcılarıAl(kullanıcıRolIdleri: new[] { _kullanıcıServisi.KullanıcıRolüAlSistemAdı(SistemKullanıcıRolAdları.Yönetici).Id }); return(kullanıcılar.Any(c => c.Aktif && c.Id != kullanıcı.Id)); }
public ISayfalıListe <BültenAboneliği> TümBültenAbonelikleriniAl(string email = null, DateTime?şuTarihden = default(DateTime?), DateTime?şuTarihe = default(DateTime?), int siteId = 0, bool?aktif = default(bool?), int kullanıcıRolId = 0, int sayfaIndeksi = 0, int sayfaBüyüklüğü = int.MaxValue) { if (kullanıcıRolId == 0) { var sorgu = _abonelikDepo.Tablo; if (!String.IsNullOrEmpty(email)) { sorgu = sorgu.Where(nls => nls.Email.Contains(email)); } if (şuTarihden.HasValue) { sorgu = sorgu.Where(nls => nls.OluşturulmaTarihi >= şuTarihden.Value); } if (şuTarihe.HasValue) { sorgu = sorgu.Where(nls => nls.OluşturulmaTarihi <= şuTarihe.Value); } if (siteId > 0) { sorgu = sorgu.Where(nls => nls.SiteId == siteId); } if (aktif.HasValue) { sorgu = sorgu.Where(nls => nls.Aktif == aktif.Value); } sorgu = sorgu.OrderBy(nls => nls.Email); var abonelikler = new SayfalıListe <BültenAboneliği>(sorgu, sayfaIndeksi, sayfaBüyüklüğü); return(abonelikler); } else { var ziyaretçiRolü = _kullanıcıServisi.KullanıcıRolüAlSistemAdı(SistemKullanıcıRolAdları.Ziyaretçi); if (ziyaretçiRolü == null) { throw new Hata("'Ziyaretçi' rolü yüklenemedi"); } if (ziyaretçiRolü.Id == kullanıcıRolId) { var sorgu = _abonelikDepo.Tablo; if (!String.IsNullOrEmpty(email)) { sorgu = sorgu.Where(nls => nls.Email.Contains(email)); } if (şuTarihden.HasValue) { sorgu = sorgu.Where(nls => nls.OluşturulmaTarihi >= şuTarihden.Value); } if (şuTarihe.HasValue) { sorgu = sorgu.Where(nls => nls.OluşturulmaTarihi <= şuTarihe.Value); } if (siteId > 0) { sorgu = sorgu.Where(nls => nls.SiteId == siteId); } if (aktif.HasValue) { sorgu = sorgu.Where(nls => nls.Aktif == aktif.Value); } sorgu = sorgu.Where(nls => !_kullanıcıDepo.Tablo.Any(c => c.Email == nls.Email)); sorgu = sorgu.OrderBy(nls => nls.Email); var abonelikler = new SayfalıListe <BültenAboneliği>(sorgu, sayfaIndeksi, sayfaBüyüklüğü); return(abonelikler); } else { var sorgu = _abonelikDepo.Tablo.Join(_kullanıcıDepo.Tablo, nls => nls.Email, c => c.Email, (nls, c) => new { BültenAbonesi = nls, Kullanıcı = c }); sorgu = sorgu.Where(x => x.Kullanıcı.KullanıcıRolleri.Any(cr => cr.Id == kullanıcıRolId)); if (!String.IsNullOrEmpty(email)) { sorgu = sorgu.Where(x => x.BültenAbonesi.Email.Contains(email)); } if (şuTarihden.HasValue) { sorgu = sorgu.Where(x => x.BültenAbonesi.OluşturulmaTarihi >= şuTarihden.Value); } if (şuTarihe.HasValue) { sorgu = sorgu.Where(x => x.BültenAbonesi.OluşturulmaTarihi <= şuTarihe.Value); } if (siteId > 0) { sorgu = sorgu.Where(x => x.BültenAbonesi.SiteId == siteId); } if (aktif.HasValue) { sorgu = sorgu.Where(x => x.BültenAbonesi.Aktif == aktif.Value); } sorgu = sorgu.OrderBy(x => x.BültenAbonesi.Email); var subscriptions = new SayfalıListe <BültenAboneliği>(sorgu.Select(x => x.BültenAbonesi), sayfaIndeksi, sayfaBüyüklüğü); return(subscriptions); } } }