public ActionResult AracModelEkle(AracModelEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         var benzerKayit = _aracModellerService.Get(a => (a.Aktif == true) && (a.AracMarkaID == model.AracMarkaID) && (a.Ad == model.Ad || a.Sira == model.Sira));
         if (benzerKayit != null)
         {
             return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bilgiler girmeyi deneyin." }));
         }
         var aracModelEkle = new AracModeller
         {
             AracMarkaID     = model.AracMarkaID,
             AracKategoriID  = model.AracKategoriID,
             Ad              = model.Ad,
             Sira            = model.Sira,
             Aktif           = true,
             ListeAktiflik   = true,
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _aracModellerService.Add(aracModelEkle);
         return(Ok(new { MessageType = 1, Message = "İşlem başarıyla tamamlandı. ✓" }));
     }
     else
     {
         return(Ok(new { Error = "Lütfen teknik destek ile iletişime geçiniz. 'Kullanıcı bilgileri session sorunu.'" }));
     }
 }
Exemple #2
0
        public ActionResult Araclar(DataTablesOptions model)
        {
            var araclars     = RolBazliAracListesi().AsQueryable().OrderBy(model.Columns[model.Order[0].Column].Data + " " + model.Order[0].Dir).ToList();
            var sorguAraclar = RolBazliAracListesi().AsQueryable().OrderBy(model.Columns[model.Order[0].Column].Data + " " + model.Order[0].Dir).ToList();



            if (!string.IsNullOrEmpty(model.Search?.Value))
            {
                araclars = araclars.Where(a => a.Plaka.IndexOf(model.Search.Value, 0, StringComparison.CurrentCultureIgnoreCase) != -1).ToList();
            }

            if (!string.IsNullOrEmpty(model.Search?.Value))
            {
                // firma filter
                var firmalar = _firmalarService.GetAll(a => a.FirmaAd.IndexOf(model.Search.Value, 0, StringComparison.CurrentCultureIgnoreCase) != -1 && a.Aktif == true);
                firmalar.ForEach(firmaItem =>
                {
                    var firmaIceriyorMu = sorguAraclar.Where(a => a.FirmaID == firmaItem.FirmaID);
                    if (firmaIceriyorMu.Count() > 0)
                    {
                        araclars.AddRange(firmaIceriyorMu);
                    }
                });

                // araç marka filter
                var aracMarkalar = _aracMarkalarService.GetAll(a => a.Ad.IndexOf(model.Search.Value, 0, StringComparison.CurrentCultureIgnoreCase) != -1 && a.Aktif == true);
                aracMarkalar.ForEach(aracMarkaItem =>
                {
                    var aracMarkaIceriyorMu = sorguAraclar.Where(a => a.MarkaID == aracMarkaItem.AracMarkaID);
                    if (aracMarkaIceriyorMu.Count() > 0)
                    {
                        araclars.AddRange(aracMarkaIceriyorMu);
                    }
                });

                // araç model filter
                var aracModeller = _aracModellerService.GetAll(a => a.Ad.IndexOf(model.Search.Value, 0, StringComparison.CurrentCultureIgnoreCase) != -1 && a.Aktif == true);
                aracModeller.ForEach(aracModelItem =>
                {
                    var aracModelIceriyorMu = sorguAraclar.Where(a => a.ModelID == aracModelItem.AracModelID);
                    if (aracModelIceriyorMu.Count() > 0)
                    {
                        araclars.AddRange(aracModelIceriyorMu);
                    }
                });

                // araç kategori filter
                var aracKategoriler = _aracKategorilerService.GetAll(a => a.Ad.IndexOf(model.Search.Value, 0, StringComparison.CurrentCultureIgnoreCase) != -1 && a.Aktif == true);
                aracKategoriler.ForEach(aracKategoriItem =>
                {
                    sorguAraclar.ForEach(aracItem =>
                    {
                        var aracModelBulucu = _aracModellerService.Get(a => a.AracModelID == aracItem.ModelID && a.AracKategoriID == aracKategoriItem.AracKategoriID);
                        if (aracModelBulucu != null)
                        {
                            var aracKategoriIceriyorMu = sorguAraclar.Where(a => a.ModelID == aracModelBulucu.AracModelID);
                            if (aracKategoriIceriyorMu.Count() > 0)
                            {
                                araclars.AddRange(aracKategoriIceriyorMu);
                            }
                        }
                    });
                });
            }

            araclars = araclars.Distinct().ToList();

            var filter = araclars.Skip(model.Start).Take(model.Length).ToList();

            return(Ok(new { draw = model.Draw, recordsFiltered = araclars.Count, recordsTotal = araclars.Count, data = filter }));
        }