Пример #1
0
 public ActionResult KullaniciYetkiEkle(KullaniciYetkiEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         var benzerKayit = _kullaniciYetkilerService.Get(a => (a.Aktif == true) && (a.FirmaID == model.FirmaID && a.YetkiTip == model.YetkiTip && a.IlgiliID == model.IlgiliID));
         if (benzerKayit != null)
         {
             return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bilgiler girmeyi deneyin." }));
         }
         var kullaniciYetkiEkle = new KullaniciYetkiler
         {
             FirmaID         = model.FirmaID,
             YetkiTip        = model.YetkiTip,
             IlgiliID        = model.IlgiliID,
             Aktif           = true,
             ListeAktiflik   = true,
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _kullaniciYetkilerService.Add(kullaniciYetkiEkle);
         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.'" }));
     }
 }
 public ActionResult AksPozisyonEkle(AksPozisyonEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         var benzerKayit = _aksPozisyonService.Get(a => (a.Aktif == true) && (a.Ad == model.Ad || a.Sira == model.Sira));
         if (benzerKayit != null)
         {
             return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli Aks Pozisyon bilgileri kullanın." }));
         }
         var aksPozisyonEkle = new AksPozisyon
         {
             Ad              = model.Ad,
             AksNo           = model.AksNo,
             IcDisId         = model.IcDisId,
             OnArkaId        = model.OnArkaId,
             Pozisyon        = model.Pozisyon,
             Sira            = model.Sira,
             SolSagId        = model.SolSagId,
             Aktif           = true,
             ListeAktiflik   = true,
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _aksPozisyonService.Add(aksPozisyonEkle);
         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.'" }));
     }
 }
 public ActionResult LastikMarkaDesenOzellikEkle(LastikMarkaDesenOzellikEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         var benzerKayit = _lastikMarkaDesenOzelliklerService.Get(a => (a.Aktif == true) && (a.LastikMarkaDesenID == model.LastikMarkaDesenID) && ((a.DisDerinligi == model.DisDerinligi && a.KatOrani == model.KatOrani && a.EbatID == model.EbatID)) ||
                                                                  (a.LastikMarkaDesenID == model.LastikMarkaDesenID && a.Sira == model.Sira));
         if (benzerKayit != null)
         {
             return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bilgiler girmeyi deneyin." }));
         }
         var lastikMarkaDesenOzellikEkle = new LastikMarkaDesenOzellikler
         {
             DisDerinligi       = model.DisDerinligi,
             KatOrani           = model.KatOrani,
             LastikMarkaDesenID = model.LastikMarkaDesenID,
             EbatID             = model.EbatID,
             Sira            = model.Sira,
             Aktif           = true,
             ListeAktiflik   = true,
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _lastikMarkaDesenOzelliklerService.Add(lastikMarkaDesenOzellikEkle);
         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.'" }));
     }
 }
Пример #4
0
        public ActionResult LastikOlcumEkle(LastikOlcumEkleModel model)
        {
            if (!ModelState.IsValid)
            {
                IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
                return(Ok(allErrors));
            }
            if (!_userJWTInfo.UserNullOrEmpty())
            {
                // var benzerKayit = _lastikOlcumlerService.Get(a => (a.Aktif == true) && (a.FirmaID == model.FirmaID) && (a.SeriNo == model.SeriNo));
                // if (benzerKayit != null) return Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bilgiler girmeyi deneyin." });
                var lastikBulucu = _lastikService.GetByID(model.LastikID);
                if (lastikBulucu == null)
                {
                    return(Ok(new { Error = "Lastik kaydı bulunamadı. Lütfen teknik destek ile iletişime geçin." }));
                }

                var depoKonumTipBulucu        = _lastikKonumlarService.Get(a => a.Ad == "Depo");
                var hurdaKonumTipBulucu       = _lastikKonumlarService.Get(a => a.Ad == "Hurda");
                var aracUstundeKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Araç Üstünde");

                if (aracUstundeKonumTipBulucu.LastikKonumID == model.LastikKonumID)
                {
                    var aracMontaj = _lastikHareketlerService.GetAll(a => a.YapilanIslem == LastikHareketTipler.MONTAJ && a.AracID == model.AracID && a.LastikID == model.LastikID && a.Aktif == true)
                                     .OrderBy(a => a.LastikHareketID).FirstOrDefault();
                    if (aracMontaj != null)
                    {
                        model.LastikKilometre        = aracMontaj.LastikKilometre + (model.AracKilometre - aracMontaj.AracKilometre);
                        lastikBulucu.LastikKilometre = model.LastikKilometre;
                        _lastikService.Update(lastikBulucu);
                    }
                }

                var lastikOlcumEkle = new LastikOlcumler
                {
                    Tarih              = model.Tarih,
                    Aciklama           = "",
                    AracKilometre      = model.AracKilometre,
                    Basinc             = model.Basinc,
                    BasincAlinamadi    = model.BasincAlinamadi,
                    DisDerinligiJSON   = model.DisDerinligiJSON,
                    GuvenliDisSeviyesi = model.GuvenliDisSeviyesi,
                    LastikID           = model.LastikID,
                    AracID             = model.AracID,
                    TavsiyeBasinc      = model.TavsiyeBasinc,
                    LastikKilometre    = model.LastikKilometre,
                    LastikMarkaID      = lastikBulucu.LastikMarkaID,
                    LastikPozisyonID   = model.LastikPozisyonID,
                    LastikTipID        = lastikBulucu.LastikTipID,
                    LastikKonumID      = model.LastikKonumID,
                    Plaka              = model.Plaka,
                    GozlemJSON         = model.GozlemJSON,
                    Aktif              = true,
                    ListeAktiflik      = true,
                    OlusturanId        = _userJWTInfo.GetInfo().id,
                    OlusturmaTarihi    = model.OlusturmaTarihi,
                    DuzenleyenId       = _userJWTInfo.GetInfo().id,
                    DuzenlemeTarihi    = model.DuzenlemeTarihi
                };

                _lastikOlcumlerService.Add(lastikOlcumEkle);

                string hareketIslem = "", hareketIslemDetay = "", hareket = "", hareketYonu = "", yapilanIslem = "";


                if (model.LastikKonumID == depoKonumTipBulucu.LastikKonumID)
                {
                    // Eğer Lastik Ölçüm Ekle ekranından, Gözlem seçeneklerinden birisi seçilirse, yapılan işlem "Ölçüm + Gözlem" olur.
                    if (model.GozlemYapildiMi)
                    {
                        hareketIslem      = LastikHareketTipler.DEPODAN_DEPOYA_OLCUM_VE_GOZLEM;
                        hareketIslemDetay = "Depo'da ki lastiğe ölçüm + gözlem yapıldı.";
                        //
                        hareket      = LastikHareketTipler.DEPO;
                        hareketYonu  = LastikHareketTipler.DEPO;
                        yapilanIslem = LastikHareketTipler.OLCUM_VE_GOZLEM;
                    }
                    else
                    {
                        hareketIslem      = LastikHareketTipler.DEPODAN_DEPOYA_OLCUM;
                        hareketIslemDetay = "Depo'da ki lastiğe ölçüm yapıldı.";
                        //
                        hareket      = LastikHareketTipler.DEPO;
                        hareketYonu  = LastikHareketTipler.DEPO;
                        yapilanIslem = LastikHareketTipler.OLCUM;
                    }
                }
                else if (model.LastikKonumID == hurdaKonumTipBulucu.LastikKonumID)
                {
                    if (model.GozlemYapildiMi)
                    {
                        hareketIslem      = LastikHareketTipler.HURDADAN_HURDAYA_OLCUM_VE_GOZLEM;
                        hareketIslemDetay = "Hurda'da ki lastiğe ölçüm + gözlem yapıldı.";
                        //
                        hareket      = LastikHareketTipler.HURDA;
                        hareketYonu  = LastikHareketTipler.HURDA;
                        yapilanIslem = LastikHareketTipler.OLCUM_VE_GOZLEM;
                    }
                    else
                    {
                        hareketIslem      = LastikHareketTipler.HURDADAN_HURDAYA_OLCUM;
                        hareketIslemDetay = "Hurda'da ki lastiğe ölçüm yapıldı.";
                        //
                        hareket      = LastikHareketTipler.HURDA;
                        hareketYonu  = LastikHareketTipler.HURDA;
                        yapilanIslem = LastikHareketTipler.OLCUM;
                    }
                }
                else if (model.LastikKonumID == aracUstundeKonumTipBulucu.LastikKonumID)
                {
                    if (model.GozlemYapildiMi)
                    {
                        hareketIslem      = LastikHareketTipler.ARACTAN_ARACA_OLCUM_VE_GOZLEM;
                        hareketIslemDetay = "Araç üstündeki lastiğe ölçüm + gözlem yapıldı.";
                        //
                        hareket      = LastikHareketTipler.ARAC;
                        hareketYonu  = LastikHareketTipler.ARAC;
                        yapilanIslem = LastikHareketTipler.OLCUM_VE_GOZLEM;
                    }
                    else
                    {
                        hareketIslem      = LastikHareketTipler.ARACTAN_ARACA_OLCUM;
                        hareketIslemDetay = "Araç üstündeki lastiğe ölçüm yapıldı.";
                        //
                        hareket      = LastikHareketTipler.ARAC;
                        hareketYonu  = LastikHareketTipler.ARAC;
                        yapilanIslem = LastikHareketTipler.OLCUM;
                    }
                }

                // Lastik Hareketi Ekle // Ölçüm
                var lastikHareketEkle = new LastikHareketler
                {
                    Tarih              = model.Tarih,
                    Aciklama           = hareketIslemDetay,
                    AracKilometre      = model.AracKilometre,
                    Basinc             = model.Basinc,
                    BasincAlinamadi    = model.BasincAlinamadi,
                    DisDerinligiJSON   = model.DisDerinligiJSON,
                    GuvenliDisSeviyesi = model.GuvenliDisSeviyesi,
                    LastikID           = model.LastikID,
                    LastikKilometre    = model.LastikKilometre,
                    LastikMarkaID      = lastikBulucu.LastikMarkaID,
                    LastikPozisyonID   = model.LastikPozisyonID,
                    LastikTipID        = lastikBulucu.LastikTipID,
                    LastikKonumID      = model.LastikKonumID,
                    Plaka              = model.Plaka,
                    AracID             = model.AracID,
                    TavsiyeBasinc      = model.TavsiyeBasinc,
                    HareketTip         = hareketIslem,
                    Hareket            = hareket,
                    HareketYonu        = hareketYonu,
                    YapilanIslem       = yapilanIslem,
                    EkBilgi            = lastikOlcumEkle.LastikOlcumID.ToString(), // Lastik Ölçüm ID'sini Ek Bilgi olarak ekliyoruz. Sebebi ise Lastik İşlem geçmişinden bir ölçüm silinirse, bu aslında LastikHareketler tablosundan silinmiş oluyor bizim bunu hem hareketlerden hemde gerçek ölçüm tablosundan silmemiz gerekir.
                    Aktif              = true,
                    ListeAktiflik      = true,
                    OlusturanId        = _userJWTInfo.GetInfo().id,
                    OlusturmaTarihi    = model.OlusturmaTarihi,
                    DuzenleyenId       = _userJWTInfo.GetInfo().id,
                    DuzenlemeTarihi    = model.DuzenlemeTarihi
                };
                _lastikHareketlerService.Add(lastikHareketEkle);
                //
                return(Ok(new { MessageType = 1, LastikOlcumID = lastikOlcumEkle.LastikOlcumID, 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.'" }));
            }
        }
 public ActionResult FirmaEkle(FirmaEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         bool isletmeFirmaSube = false;
         if (model.Rol == Role._Isletme || model.Rol == Role._Firma || model.Rol == Role._Sube)
         {
             var benzerKayit = _firmalarService.Get(a => (a.Aktif == true) && (a.FirmaAd == model.FirmaAd || a.VergiTCNo == model.VergiTCNo));
             if (benzerKayit != null)
             {
                 return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bir firma adı ya da vergi numarası kullanın." }));
             }
             isletmeFirmaSube = true;
         }
         else
         {
             var benzerKayit = _firmalarService.Get(a => (a.Aktif == true) && (a.FirmaAd == model.FirmaAd || a.FirmaKisaAd == model.FirmaKisaAd || a.VergiTCNo == model.VergiTCNo));
             if (benzerKayit != null)
             {
                 return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bir firma adı, firma kısa kodu ya da vergi numarası kullanın." }));
             }
         }
         var firmaEkle = new Firmalar
         {
             Adres         = model.Adres,
             BagliOlduguID = model.BagliOlduguID,
             Eposta        = model.Eposta,
             FaturaAdresi  = model.FaturaAdresi,
             FirmaAd       = model.FirmaAd,
             //FirmaKisaAd = isletmeFirmaSube ? "" : model.FirmaKisaAd,
             FirmaKisaAd        = model.FirmaKisaAd,
             Sifre              = Encrypt.MD5Encrypt(model.Sifre),
             DisDerinligiSayisi = model.DisDerinligiSayisi,
             PsiBar             = model.PsiBar,
             Rol             = model.Rol,
             TelefonNumarasi = model.TelefonNumarasi,
             VergiTCNo       = model.VergiTCNo,
             Aktif           = true,
             ListeAktiflik   = true,
             ParaBirimID     = model.ParaBirimID,
             KayitTarihi     = model.KayitTarihi,
             //
             KullaniciGorevi  = model.KullaniciGorevi,
             KullaniciKisaKod = model.KullaniciKisaKod,
             //
             YetkiliKisi = model.YetkiliKisi,
             //
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _firmalarService.Add(firmaEkle);
         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.'" }));
     }
 }
        public ActionResult LastikHareketSil(int id = 0, int oncekiId = 0, string yapilanIslem = "")
        {
            if (yapilanIslem == "OlcumGozlem")
            {
                yapilanIslem = "Ölçüm + Gözlem";
            }
            if (!_userJWTInfo.UserNullOrEmpty())
            {
                var dt            = DateTime.Now;
                var lastikHareket = _lastikHareketlerService.GetByID(id);
                if (lastikHareket == null)
                {
                    return(Ok(new { Error = "Lütfen teknik destek ile iletişime geçiniz. 'Kayıt bulunamadı.'" }));
                }
                //if (firma == 0) BURASI PROGRAMLANACAK. BAĞLI KAYITLAR.
                //{
                //    var altHizmetKategoriler = await _context.HizmetKategorilers.FirstOrDefaultAsync(a => a.BagliOlduguHizmetID == id && a.Aktif == true);
                //    if (altHizmetKategoriler != null) return Ok(new { Error = "Alt kategorisi olan bir kayıt silinemez." });
                //}
                if (lastikHareket.YapilanIslem == LastikHareketTipler.OLCUM || lastikHareket.YapilanIslem == LastikHareketTipler.GOZLEM || lastikHareket.YapilanIslem == LastikHareketTipler.OLCUM_VE_GOZLEM)
                {
                    var lastikOlcumBulucu = _lastikOlcumlerService.GetByID(Convert.ToInt32(lastikHareket.EkBilgi.Trim()));
                    if (lastikOlcumBulucu != null)
                    {
                        lastikOlcumBulucu.Aktif           = false;
                        lastikOlcumBulucu.DuzenlemeTarihi = dt;
                        lastikOlcumBulucu.DuzenleyenId    = _userJWTInfo.GetInfo().id;
                        _lastikOlcumlerService.Update(lastikOlcumBulucu);
                    }
                }
                if ((yapilanIslem == LastikHareketTipler.MONTAJ || yapilanIslem == LastikHareketTipler.ROTASYON) && oncekiId != 0)
                {
                    var oncekiKayitBulucu = _lastikHareketlerService.GetByID(oncekiId);
                    if (oncekiKayitBulucu.YapilanIslem == LastikHareketTipler.OLCUM || oncekiKayitBulucu.YapilanIslem == LastikHareketTipler.OLCUM_VE_GOZLEM || oncekiKayitBulucu.YapilanIslem == LastikHareketTipler.GOZLEM)
                    {
                        var depoKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Depo");

                        var lastikBulucu = _lastiklerService.GetByID(lastikHareket.LastikID);

                        var aracBakimBul = _aracBakimlarService.Get(a => a.AracID == lastikHareket.AracID && a.LastikID == lastikHareket.LastikID && a.Aktif == true);
                        if (aracBakimBul == null)
                        {
                            return(Ok(new { Error = "Lütfen teknik destek ile iletişime geçiniz. Araç Bakım'da lastik bulunamıyor." }));
                        }
                        else
                        {
                            lastikBulucu.LastikKonumID   = depoKonumTipBulucu.LastikKonumID;
                            lastikBulucu.AracID          = 0;
                            lastikBulucu.LastikKilometre = oncekiKayitBulucu.LastikKilometre;
                            lastikBulucu.DuzenlemeTarihi = dt;
                            lastikBulucu.DuzenleyenId    = _userJWTInfo.GetInfo().id;
                            _lastiklerService.Update(lastikBulucu);


                            aracBakimBul.Aktif = false;
                            _aracBakimlarService.Update(aracBakimBul);

                            var aracBulucu = _araclarService.GetByID(aracBakimBul.AracID);

                            var aracBakimHareketEkle = new AracBakimHareketler
                            {
                                AracBakimID     = aracBakimBul.AracBakimID,
                                HareketTip      = LastikHareketTipler.DEPO_GIRIS,
                                Hareket         = LastikHareketTipler.DEPO,
                                HareketYonu     = LastikHareketTipler.DEPO,
                                YapilanIslem    = LastikHareketTipler.KAYIT,
                                Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araçtan depoya taşındı.",
                                EkBilgi         = "",
                                AksPozisyonID   = 0,
                                Aktif           = true,
                                AracID          = aracBakimBul.AracID,
                                LastikID        = aracBakimBul.LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimHareketlerService.Add(aracBakimHareketEkle);


                            var lastikHareketEkle = new LastikHareketler
                            {
                                Tarih              = oncekiKayitBulucu.Tarih,
                                Aciklama           = "Kayıt Girildi | " + yapilanIslem + " sebebiyle depoya taşındı.",
                                AracKilometre      = 0,
                                Basinc             = oncekiKayitBulucu.Basinc,
                                BasincAlinamadi    = oncekiKayitBulucu.BasincAlinamadi,
                                TavsiyeBasinc      = (oncekiKayitBulucu.HareketYonu == LastikHareketTipler.ARAC) ? lastikHareket.TavsiyeBasinc = oncekiKayitBulucu.TavsiyeBasinc : Convert.ToByte(0),
                                AracID             = 0,
                                DisDerinligiJSON   = "",
                                GuvenliDisSeviyesi = oncekiKayitBulucu.GuvenliDisSeviyesi,
                                LastikID           = oncekiKayitBulucu.LastikID,
                                LastikKilometre    = oncekiKayitBulucu.LastikKilometre,
                                LastikMarkaID      = oncekiKayitBulucu.LastikMarkaID,
                                LastikPozisyonID   = 0,
                                LastikTipID        = oncekiKayitBulucu.LastikTipID,
                                LastikKonumID      = depoKonumTipBulucu.LastikKonumID,
                                Plaka              = "",
                                EkBilgi            = "",
                                HareketTip         = LastikHareketTipler.DEPO_GIRIS,
                                Hareket            = LastikHareketTipler.DEPO,
                                HareketYonu        = LastikHareketTipler.DEPO,
                                YapilanIslem       = LastikHareketTipler.KAYIT,
                                Aktif              = true,
                                ListeAktiflik      = true,
                                OlusturanId        = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi    = dt,
                                DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi    = dt
                            };
                            _lastikHareketlerService.Add(lastikHareketEkle);
                        }
                    }
                    else
                    {
                        var aracBakimBul = _aracBakimlarService.Get(a => a.AracID == lastikHareket.AracID && a.LastikID == lastikHareket.LastikID && a.Aktif == true);
                        if (aracBakimBul == null)
                        {
                            return(Ok(new { Error = "Lütfen teknik destek ile iletişime geçiniz. Araç Bakım'da lastik bulunamıyor." }));
                        }
                        else
                        {
                            var depoKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Depo");

                            var lastikBulucu = _lastiklerService.GetByID(lastikHareket.LastikID);

                            lastikBulucu.LastikKonumID   = depoKonumTipBulucu.LastikKonumID;
                            lastikBulucu.AracID          = 0;
                            lastikBulucu.LastikKilometre = oncekiKayitBulucu.LastikKilometre;
                            lastikBulucu.DisSeviyesi     = oncekiKayitBulucu.GuvenliDisSeviyesi;
                            lastikBulucu.DuzenlemeTarihi = dt;
                            lastikBulucu.DuzenleyenId    = _userJWTInfo.GetInfo().id;
                            _lastiklerService.Update(lastikBulucu);

                            aracBakimBul.Aktif = false;
                            _aracBakimlarService.Update(aracBakimBul);

                            var aracBulucu = _araclarService.GetByID(aracBakimBul.AracID);

                            var aracBakimHareketEkle = new AracBakimHareketler
                            {
                                AracBakimID     = aracBakimBul.AracBakimID,
                                HareketTip      = LastikHareketTipler.DEPO_GIRIS,
                                Hareket         = LastikHareketTipler.DEPO,
                                HareketYonu     = LastikHareketTipler.DEPO,
                                YapilanIslem    = LastikHareketTipler.KAYIT,
                                Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araçtan depoya taşındı.",
                                EkBilgi         = "",
                                AksPozisyonID   = 0,
                                Aktif           = true,
                                AracID          = aracBakimBul.AracID,
                                LastikID        = aracBakimBul.LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimHareketlerService.Add(aracBakimHareketEkle);

                            var lastikHareketEkle = new LastikHareketler
                            {
                                Tarih              = oncekiKayitBulucu.Tarih,
                                Aciklama           = "Kayıt Girildi | " + yapilanIslem + " sebebiyle depoya taşındı.",
                                AracKilometre      = 0,
                                Basinc             = 0,
                                BasincAlinamadi    = false,
                                TavsiyeBasinc      = 0,
                                AracID             = 0,
                                DisDerinligiJSON   = "",
                                GuvenliDisSeviyesi = oncekiKayitBulucu.GuvenliDisSeviyesi,
                                LastikID           = oncekiKayitBulucu.LastikID,
                                LastikKilometre    = oncekiKayitBulucu.LastikKilometre,
                                LastikMarkaID      = oncekiKayitBulucu.LastikMarkaID,
                                LastikPozisyonID   = 0,
                                LastikTipID        = oncekiKayitBulucu.LastikTipID,
                                LastikKonumID      = depoKonumTipBulucu.LastikKonumID,
                                Plaka              = "",
                                EkBilgi            = "",
                                HareketTip         = LastikHareketTipler.DEPO_GIRIS,
                                Hareket            = LastikHareketTipler.DEPO,
                                HareketYonu        = LastikHareketTipler.DEPO,
                                YapilanIslem       = LastikHareketTipler.KAYIT,
                                Aktif              = true,
                                ListeAktiflik      = true,
                                OlusturanId        = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi    = dt,
                                DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi    = dt
                            };
                            _lastikHareketlerService.Add(lastikHareketEkle);
                        }
                    }
                }
                lastikHareket.Aktif           = false;
                lastikHareket.DuzenleyenId    = _userJWTInfo.GetInfo().id;
                lastikHareket.DuzenlemeTarihi = DateTime.Now;
                _lastikHareketlerService.Update(lastikHareket);


                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.'" }));
            }
        }
        public ActionResult AracBakimIslemleriKaydet(AracBakimModelWithKM model)
        {
            DateTime dt = DateTime.Now;

            foreach (var item in model.model)
            {
                for (int i = 0; i < item.Length; i++)
                {
                    if (item[i].AracBakimID != 0)
                    {
                        // kaydı güncelle
                        var aracBakimBul = _aracBakimlarService.GetByID(item[i].AracBakimID);

                        var lastikSonHareketBul = _lastikHareketlerService.GetAll(a => a.LastikID == aracBakimBul.LastikID && a.AracID == aracBakimBul.AracID && a.Aktif == true).OrderByDescending(a => a.LastikHareketID).FirstOrDefault();

                        int aracKilometreCopy = 0;
                        try
                        {
                            aracKilometreCopy = item[i].AracKilometre;
                        }
                        catch { }

                        if (item[i].BulunduguYer == "Hurdalık")
                        {
                            aracBakimBul.Aktif = false;
                            _aracBakimlarService.Update(aracBakimBul);

                            var aracBulucu = _araclarService.GetByID(item[i].AracID);

                            var aracBakimHareketEkle = new AracBakimHareketler
                            {
                                AracBakimID     = aracBakimBul.AracBakimID,
                                HareketTip      = LastikHareketTipler.ARACTAN_HURDAYA,
                                Hareket         = LastikHareketTipler.ARAC,
                                HareketYonu     = LastikHareketTipler.HURDA,
                                YapilanIslem    = LastikHareketTipler.HURDA,
                                Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araçtan hurdaya taşındı.",
                                EkBilgi         = "",
                                AksPozisyonID   = item[i].AksPozisyonID,
                                Aktif           = true,
                                AracID          = item[i].AracID,
                                LastikID        = item[i].LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimHareketlerService.Add(aracBakimHareketEkle);

                            var hurdaKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Hurda");
                            var lastikBulucu        = _lastiklerService.GetByID(item[i].LastikID);
                            lastikBulucu.LastikKonumID = hurdaKonumTipBulucu.LastikKonumID;
                            lastikBulucu.AracID        = 0;
                            _lastiklerService.Update(lastikBulucu);

                            string hareketIslem      = LastikHareketTipler.ARACTAN_HURDAYA;
                            string hareketIslemDetay = "Araç'tan Hurda'ya aktarıldı.";

                            var lastikHareketEkle = new LastikHareketler
                            {
                                Tarih              = item[i].ServisTarihi,
                                Aciklama           = hareketIslemDetay,
                                AracKilometre      = aracKilometreCopy,
                                AracID             = item[i].AracID, // Bu ID'li araçtan hurdaya aktarılmış olduğunu ifade eder.
                                Basinc             = 0,
                                BasincAlinamadi    = false,
                                DisDerinligiJSON   = lastikSonHareketBul.DisDerinligiJSON,
                                GuvenliDisSeviyesi = 0,
                                LastikID           = lastikBulucu.LastikID,
                                LastikKilometre    = lastikBulucu.LastikKilometre,
                                LastikMarkaID      = lastikBulucu.LastikMarkaID,
                                LastikPozisyonID   = item[i].AksPozisyonID,
                                LastikTipID        = lastikBulucu.LastikTipID,
                                LastikKonumID      = lastikBulucu.LastikKonumID,
                                Plaka              = aracBulucu.Plaka,
                                EkBilgi            = hareketIslemDetay,
                                HareketTip         = hareketIslem,
                                Hareket            = LastikHareketTipler.ARAC,
                                HareketYonu        = LastikHareketTipler.HURDA,
                                YapilanIslem       = LastikHareketTipler.HURDA,
                                Aktif              = true,
                                ListeAktiflik      = true,
                                OlusturanId        = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi    = dt,
                                DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi    = dt
                            };
                            _lastikHareketlerService.Add(lastikHareketEkle);
                        }
                        else if (item[i].BulunduguYer == "Depoya Geldi")
                        {
                            aracBakimBul.Aktif = false;
                            _aracBakimlarService.Update(aracBakimBul);

                            var aracBulucu = _araclarService.GetByID(item[i].AracID);

                            var aracBakimHareketEkle = new AracBakimHareketler
                            {
                                AracBakimID     = aracBakimBul.AracBakimID,
                                HareketTip      = LastikHareketTipler.ARACTAN_DEPOYA,
                                Hareket         = LastikHareketTipler.ARAC,
                                HareketYonu     = LastikHareketTipler.DEPO,
                                YapilanIslem    = LastikHareketTipler.SOKUM,
                                Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araçtan depoya taşındı.",
                                EkBilgi         = "",
                                AksPozisyonID   = item[i].AksPozisyonID,
                                Aktif           = true,
                                AracID          = item[i].AracID,
                                LastikID        = item[i].LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimHareketlerService.Add(aracBakimHareketEkle);

                            var hurdaKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Depo");
                            var lastikBulucu        = _lastiklerService.GetByID(item[i].LastikID);
                            lastikBulucu.LastikKonumID = hurdaKonumTipBulucu.LastikKonumID;
                            lastikBulucu.AracID        = 0;
                            _lastiklerService.Update(lastikBulucu);

                            string hareketIslem      = LastikHareketTipler.ARACTAN_DEPOYA;
                            string hareketIslemDetay = "Araç'tan Depo'ya taşındı.";

                            var lastikHareketEkle = new LastikHareketler
                            {
                                Tarih              = item[i].ServisTarihi,
                                Aciklama           = hareketIslemDetay,
                                AracKilometre      = aracKilometreCopy,
                                AracID             = item[i].AracID, // Bu ID'li araçtan depoya aktarılmış olduğunu ifade eder.
                                Basinc             = lastikSonHareketBul.Basinc,
                                BasincAlinamadi    = lastikSonHareketBul.BasincAlinamadi,
                                DisDerinligiJSON   = lastikSonHareketBul.DisDerinligiJSON,
                                GuvenliDisSeviyesi = lastikSonHareketBul.GuvenliDisSeviyesi,
                                LastikID           = lastikBulucu.LastikID,
                                LastikKilometre    = lastikBulucu.LastikKilometre,
                                LastikMarkaID      = lastikBulucu.LastikMarkaID,
                                LastikPozisyonID   = aracBakimHareketEkle.AksPozisyonID,
                                LastikTipID        = lastikBulucu.LastikTipID,
                                LastikKonumID      = lastikBulucu.LastikKonumID,
                                Plaka              = aracBulucu.Plaka,
                                EkBilgi            = hareketIslemDetay,
                                HareketTip         = hareketIslem,
                                Hareket            = LastikHareketTipler.ARAC,
                                HareketYonu        = LastikHareketTipler.DEPO,
                                YapilanIslem       = LastikHareketTipler.SOKUM,
                                Aktif              = true,
                                ListeAktiflik      = true,
                                OlusturanId        = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi    = dt,
                                DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi    = dt
                            };
                            _lastikHareketlerService.Add(lastikHareketEkle);
                        }
                        else
                        {
                            if (item[i].AksPozisyonID != aracBakimBul.AksPozisyonID)
                            {
                                var oncekiAks = _aksPozisyonService.GetByID(aracBakimBul.AksPozisyonID);
                                var yeniAks   = _aksPozisyonService.GetByID(item[i].AksPozisyonID);

                                aracBakimBul.AksPozisyonID   = item[i].AksPozisyonID;
                                aracBakimBul.Aktif           = true;
                                aracBakimBul.DuzenleyenId    = _userJWTInfo.GetInfo().id;
                                aracBakimBul.DuzenlemeTarihi = dt;
                                _aracBakimlarService.Update(aracBakimBul);

                                var aracUstundeKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Araç Üstünde");
                                var lastikBulucu = _lastiklerService.GetByID(item[i].LastikID);
                                lastikBulucu.AracID        = item[i].AracID;
                                lastikBulucu.LastikKonumID = aracUstundeKonumTipBulucu.LastikKonumID;
                                _lastiklerService.Update(lastikBulucu);

                                var aracBulucu = _araclarService.GetByID(item[i].AracID);

                                var aracBakimHareketEkle = new AracBakimHareketler
                                {
                                    AracBakimID     = aracBakimBul.AracBakimID,
                                    HareketTip      = LastikHareketTipler.ROTASYON,
                                    Hareket         = LastikHareketTipler.ARAC,
                                    HareketYonu     = LastikHareketTipler.ARAC,
                                    YapilanIslem    = LastikHareketTipler.ROTASYON,
                                    Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araçta takılı ve rotasyon yapıldı. " + oncekiAks.Ad + " => " + yeniAks.Ad,
                                    EkBilgi         = "",
                                    AksPozisyonID   = item[i].AksPozisyonID,
                                    Aktif           = true,
                                    AracID          = item[i].AracID,
                                    LastikID        = item[i].LastikID,
                                    OlusturanId     = _userJWTInfo.GetInfo().id,
                                    OlusturmaTarihi = dt,
                                    DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                    DuzenlemeTarihi = dt
                                };

                                _aracBakimHareketlerService.Add(aracBakimHareketEkle);

                                string hareketIslem      = LastikHareketTipler.ROTASYON;
                                string hareketIslemDetay = "Lastik, " + aracBulucu.Plaka + " plakalı araçta takılı ve rotasyon yapıldı. " + oncekiAks.Ad + " => " + yeniAks.Ad;

                                var lastikHareketEkle = new LastikHareketler
                                {
                                    Tarih              = item[i].ServisTarihi,
                                    Aciklama           = hareketIslemDetay,
                                    AracKilometre      = aracKilometreCopy,
                                    AracID             = item[i].AracID, // Bu ID'li araçtan depoya aktarılmış olduğunu ifade eder.
                                    Basinc             = lastikSonHareketBul.Basinc,
                                    BasincAlinamadi    = lastikSonHareketBul.BasincAlinamadi,
                                    DisDerinligiJSON   = lastikSonHareketBul.DisDerinligiJSON,
                                    GuvenliDisSeviyesi = lastikSonHareketBul.GuvenliDisSeviyesi,
                                    LastikID           = lastikBulucu.LastikID,
                                    LastikKilometre    = lastikBulucu.LastikKilometre,
                                    LastikMarkaID      = lastikBulucu.LastikMarkaID,
                                    LastikPozisyonID   = item[i].AksPozisyonID,
                                    LastikTipID        = lastikBulucu.LastikTipID,
                                    LastikKonumID      = lastikBulucu.LastikKonumID,
                                    Plaka              = aracBulucu.Plaka,
                                    EkBilgi            = hareketIslemDetay,
                                    HareketTip         = hareketIslem,
                                    Hareket            = LastikHareketTipler.ARAC,
                                    HareketYonu        = LastikHareketTipler.ARAC,
                                    YapilanIslem       = LastikHareketTipler.ROTASYON,
                                    Aktif              = true,
                                    ListeAktiflik      = true,
                                    OlusturanId        = _userJWTInfo.GetInfo().id,
                                    OlusturmaTarihi    = dt,
                                    DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                    DuzenlemeTarihi    = dt
                                };
                                _lastikHareketlerService.Add(lastikHareketEkle);
                            }
                        }
                    }
                    else
                    {
                        // Eğer lastik depodan bir lastiğe sürüklenip, kayıt edilmeden, depoya ya da hurdalığa tekrar sürüklenirse kayıt gerçekleşmemelidir. Bu if koşul ifadesiyle bunu engellemiş oluyoruz.
                        if (item[i].BulunduguYer != "Hurdalık" && item[i].BulunduguYer != "Depoya Geldi")
                        {
                            int aracKilometreCopy = 0;
                            try
                            {
                                aracKilometreCopy = item[i].AracKilometre;
                            }
                            catch { }
                            var lastikSonHareketBul = _lastikHareketlerService.GetAll(a => a.LastikID == item[i].LastikID && a.Aktif == true).OrderByDescending(a => a.LastikHareketID).FirstOrDefault();
                            // yeni kayıt
                            var aracBakimEkle = new AracBakimlar
                            {
                                AksPozisyonID   = item[i].AksPozisyonID,
                                Aktif           = true,
                                AracID          = item[i].AracID,
                                LastikID        = item[i].LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimlarService.Add(aracBakimEkle);

                            var aracBulucu = _araclarService.GetByID(item[i].AracID);

                            var aracBakimHareketEkle = new AracBakimHareketler
                            {
                                AracBakimID     = aracBakimEkle.AracBakimID,
                                HareketTip      = LastikHareketTipler.DEPODAN_ARACA,
                                Hareket         = LastikHareketTipler.DEPO,
                                HareketYonu     = LastikHareketTipler.ARAC,
                                YapilanIslem    = LastikHareketTipler.MONTAJ,
                                Aciklama        = "Lastik, " + aracBulucu.Plaka + " plakalı araca takıldı.",
                                EkBilgi         = "",
                                AksPozisyonID   = item[i].AksPozisyonID,
                                Aktif           = true,
                                AracID          = item[i].AracID,
                                LastikID        = item[i].LastikID,
                                OlusturanId     = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi = dt,
                                DuzenleyenId    = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi = dt
                            };

                            _aracBakimHareketlerService.Add(aracBakimHareketEkle);

                            var hurdaKonumTipBulucu = _lastikKonumlarService.Get(a => a.Ad == "Araç Üstünde");
                            var lastikBulucu        = _lastiklerService.GetByID(item[i].LastikID);
                            lastikBulucu.AracID        = item[i].AracID;
                            lastikBulucu.LastikKonumID = hurdaKonumTipBulucu.LastikKonumID;
                            _lastiklerService.Update(lastikBulucu);

                            string hareketIslem      = LastikHareketTipler.DEPODAN_ARACA;
                            string hareketIslemDetay = "Depo'dan Araca Takıldı";

                            var lastikHareketEkle = new LastikHareketler
                            {
                                Tarih              = item[i].ServisTarihi,
                                Aciklama           = hareketIslemDetay,
                                AracKilometre      = aracKilometreCopy,
                                AracID             = item[i].AracID,
                                Basinc             = lastikSonHareketBul.Basinc,
                                BasincAlinamadi    = lastikSonHareketBul.BasincAlinamadi,
                                DisDerinligiJSON   = lastikSonHareketBul.DisDerinligiJSON,
                                GuvenliDisSeviyesi = lastikSonHareketBul.GuvenliDisSeviyesi,
                                LastikID           = lastikBulucu.LastikID,
                                LastikKilometre    = lastikBulucu.LastikKilometre,
                                LastikMarkaID      = lastikBulucu.LastikMarkaID,
                                LastikPozisyonID   = item[i].AksPozisyonID,
                                LastikTipID        = lastikBulucu.LastikTipID,
                                LastikKonumID      = lastikBulucu.LastikKonumID,
                                Plaka              = aracBulucu.Plaka,
                                EkBilgi            = hareketIslemDetay,
                                HareketTip         = hareketIslem,
                                Hareket            = LastikHareketTipler.DEPO,
                                HareketYonu        = LastikHareketTipler.ARAC,
                                YapilanIslem       = LastikHareketTipler.MONTAJ,
                                Aktif              = true,
                                ListeAktiflik      = true,
                                OlusturanId        = _userJWTInfo.GetInfo().id,
                                OlusturmaTarihi    = dt,
                                DuzenleyenId       = _userJWTInfo.GetInfo().id,
                                DuzenlemeTarihi    = dt
                            };
                            _lastikHareketlerService.Add(lastikHareketEkle);
                        }
                    }
                }
            }

            return(Ok(new { MessageType = 1, Message = "İşlem başarıyla tamamlandı. ✓" }));
        }
Пример #8
0
 public ActionResult AracEkle(AracEkleModel model)
 {
     if (!ModelState.IsValid)
     {
         IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
         return(Ok(allErrors));
     }
     if (!_userJWTInfo.UserNullOrEmpty())
     {
         var benzerKayit = _araclarService.Get(a => (a.Aktif == true) && (a.Plaka == model.Plaka));
         if (benzerKayit != null)
         {
             return(Ok(new { Error = "Benzer kayıt bulundu. Lütfen farkli bilgiler girmeyi deneyin." }));
         }
         var aracEkle = new Araclar
         {
             Plaka           = model.Plaka.ToUpper(),
             FirmaID         = model.FirmaID,
             MarkaID         = model.MarkaID,
             ModelID         = model.ModelID,
             Aks1            = model.Aks1,
             Aks2            = model.Aks2,
             Aks3            = model.Aks3,
             Aks4            = model.Aks4,
             Aktif           = true,
             ListeAktiflik   = true,
             OlusturanId     = _userJWTInfo.GetInfo().id,
             OlusturmaTarihi = model.OlusturmaTarihi,
             DuzenleyenId    = _userJWTInfo.GetInfo().id,
             DuzenlemeTarihi = model.DuzenlemeTarihi
         };
         _araclarService.Add(aracEkle);
         return(Ok(new { MessageType = 1, Message = "İşlem başarıyla tamamlandı. ✓", Result = new { AracID = aracEkle.AracID } }));
     }
     else
     {
         return(Ok(new { Error = "Lütfen teknik destek ile iletişime geçiniz. 'Kullanıcı bilgileri session sorunu.'" }));
     }
 }