示例#1
0
        public static List <Teknisyen_ViewServisIsEmirIslemIscilikler> Select_IsEmirIslem_Iscilikleri_View(decimal isEmirIslemId, decimal servisTeknisyenId)
        {
            List <Teknisyen_ViewServisIsEmirIslemIscilikler> list = R.Query <Teknisyen_ViewServisIsEmirIslemIscilikler>().Where(t => t.SERVISISEMIRISLEMID == isEmirIslemId).ToList();

            List <HareketUstBilgi>  isEmirIslem_UstHareketBilgileri  = HareketUstBilgi.Select_IsEmirIslem_UstHareketBilgileri(isEmirIslemId);
            List <TeknisyenHareket> isEmirIslem_TeknisyenHareketleri = TeknisyenHareket.Select_IsEmirIslem_TeknisyenHareketleri(isEmirIslemId);

            decimal servisId = isEmirIslem_UstHareketBilgileri.first().SERVISID;
            List <ServisGunMola> servis_gun_molalar = ServisGunMola.SelectServisGunMolalar(servisId);

            List <HareketNeden> nedenler = HareketNeden.Select_Nedenler();
            PuantajGunlugu      pg       = new PuantajGunlugu();

            pg.InitNedenler(nedenler);


            list.forEach(iscilik =>
            {
                List <HareketUstBilgi> iscilik_UstBilgileri          = isEmirIslem_UstHareketBilgileri.where (t => t.ISEMIRISLEMISCILIKID == iscilik.ID).toList();
                List <TeknisyenHareket> iscilik_TeknisyenHareketleri = null;
                List <TeknisyenHareket> servisTeknisyenHareketleri   = null;
                iscilik.TeknisyenIsDurumu = LocalHelpers.GetTeknisyenDurum(servisTeknisyenId, isEmirIslem_TeknisyenHareketleri, iscilik_UstBilgileri, out iscilik_TeknisyenHareketleri, out servisTeknisyenHareketleri);

                if (iscilik_UstBilgileri.isNotEmpty())
                {
                    iscilik.PlanlananSure = iscilik_UstBilgileri.Sum(t => t.PLANLANANSURE);
                }

                TeknisyenHareketDagilimSonuclari puantajSonuclari = Puantaj.GetPuantajSonuclari(iscilik_TeknisyenHareketleri, pg, servis_gun_molalar, nedenler);
                iscilik.CalisilanSure = puantajSonuclari.GetSonucSure(NedenFormati.NormalCalisma);
                iscilik.TeknisyenSure = puantajSonuclari.GetSonucSure(servisTeknisyenId, NedenFormati.NormalCalisma);
            });

            return(list);
        }
示例#2
0
        public static List <Teknisyen_ViewServisIsEmirIslemler> Select_IsEmir_Islemler_View(decimal ownerIsEmirId, decimal servisTeknisyenId)
        {
            MethodReturn mr = new MethodReturn();

            List <Teknisyen_ViewServisIsEmirIslemler> servisIsEmirIslemler = R.Query <Teknisyen_ViewServisIsEmirIslemler>(mr).Where(t => t.SERVISISEMIRID == ownerIsEmirId).ToList();

            List <HareketUstBilgi>  isEmir_UstHareketBilgileri  = HareketUstBilgi.Select_IsEmir_UstHareketBilgileri(ownerIsEmirId, mr);
            List <TeknisyenHareket> isEmir_TeknisyenHareketleri = TeknisyenHareket.Select_IsEmir_TeknisyenHareketleri(ownerIsEmirId, mr);
            List <Teknisyen_ViewServisIsEmirIslemIscilikler> isEmir_Iscilikleri = Teknisyen_ViewServisIsEmirIslemIscilikler.Select_IsEmir_Iscilikleri(ownerIsEmirId);

            decimal servisId = isEmir_UstHareketBilgileri.first().SERVISID;

            List <ServisGunMola> servis_gun_molalar = ServisGunMola.SelectServisGunMolalar(servisId);

            List <HareketNeden> nedenler = HareketNeden.Select_Nedenler();
            PuantajGunlugu      pg       = new PuantajGunlugu();

            pg.InitNedenler(nedenler);

            servisIsEmirIslemler.forEach(islem =>
            {
                List <HareketUstBilgi> islem_UstBilgileri          = isEmir_UstHareketBilgileri.where (t => t.ISEMIRISLEMID == islem.ID).toList();
                List <TeknisyenHareket> islem_TeknisyenHareketleri = null;
                List <TeknisyenHareket> servisTeknisyenHareketleri = null;
                islem.TeknisyenIsDurumu = LocalHelpers.GetTeknisyenDurum(servisTeknisyenId, isEmir_TeknisyenHareketleri, islem_UstBilgileri, out islem_TeknisyenHareketleri, out servisTeknisyenHareketleri);;

                var iscilikler            = isEmir_Iscilikleri.where (t => t.SERVISISEMIRISLEMID == islem.ID).toList();
                islem.ToplamIscilikSayisi = iscilikler.count();

                if (islem_TeknisyenHareketleri.isNotEmpty())
                {
                    islem.CalisilanSure = servisTeknisyenHareketleri.Sum(t => t.CalismaDakika);
                }

                if (islem_UstBilgileri.isNotEmpty())
                {
                    islem.PlanlananSure = islem_UstBilgileri.Sum(t => t.PLANLANANSURE);
                }

                TeknisyenHareketDagilimSonuclari puantajSonuclari = Puantaj.GetPuantajSonuclari(islem_TeknisyenHareketleri, pg, servis_gun_molalar, nedenler);
                islem.CalisilanSure = puantajSonuclari.GetSonucSure(NedenFormati.NormalCalisma);
                islem.TeknisyenSure = puantajSonuclari.GetSonucSure(servisTeknisyenId, NedenFormati.NormalCalisma);
            });

            return(servisIsEmirIslemler);
        }
示例#3
0
        public static List <Teknisyen_ViewServisIsEmirler> Select_Servis_IsEmirler_View(decimal servisId, decimal servisTeknisyenId)
        {
            MethodReturn mr = new MethodReturn();

            List <Teknisyen_ViewServisIsEmirler> servis_IsEmirleri = R.Query <Teknisyen_ViewServisIsEmirler>().Where(t => t.SERVISID == servisId && t.TEKNIKOLARAKTAMAMLA == 0).ToList();

            List <decimal> isEmirIds = servis_IsEmirleri.select(t => t.ID).ToList();

            List <HareketUstBilgi>  servis_UstHareketBilgileri  = HareketUstBilgi.Select_IsEmirler_UstHareketBilgileri(isEmirIds);
            List <TeknisyenHareket> servis_TeknisyenHareketleri = TeknisyenHareket.Select_IsEmirler_TeknisyenHareketleri(isEmirIds);
            List <Teknisyen_ViewServisIsEmirIslemler>        servis_IsEmirIslemleri         = Teknisyen_ViewServisIsEmirIslemler.Select_IsEmirler_Islemler(isEmirIds);
            List <Teknisyen_ViewServisIsEmirIslemIscilikler> servis_IsEmirIslem_Iscilikleri = Teknisyen_ViewServisIsEmirIslemIscilikler.Select_IsEmirler_Iscilikleri(isEmirIds);
            List <ServisGunMola> servis_Gun_Molalar = ServisGunMola.SelectServisGunMolalar(servisId);

            List <HareketNeden> nedenler = HareketNeden.Select_Nedenler();
            PuantajGunlugu      pg       = new PuantajGunlugu();

            pg.InitNedenler(nedenler);

            servis_IsEmirleri.forEach(isemir =>
            {
                List <HareketUstBilgi> isEmir_ustBilgileri          = servis_UstHareketBilgileri.Where(t => t.ISEMIRID == isemir.ID).toList();
                List <TeknisyenHareket> isEmir_TeknisyenHareketleri = null;
                List <TeknisyenHareket> servisTeknisyenHareketleri  = null;
                isemir.TeknisyenIsDurumu = LocalHelpers.GetTeknisyenDurum(servisTeknisyenId, servis_TeknisyenHareketleri, isEmir_ustBilgileri, out isEmir_TeknisyenHareketleri, out servisTeknisyenHareketleri);

                if (isEmir_TeknisyenHareketleri.isNotEmpty())
                {
                    isemir.IlkHareketTarihi = isEmir_TeknisyenHareketleri.Min(t => t.GIRISTARIHI);
                    isemir.SonHareketTarihi = isEmir_TeknisyenHareketleri.OrderByDescending(t => t.GIRISTARIHI).first().AktifCikisTarih;
                }

                if (isEmir_ustBilgileri.isNotEmpty())
                {
                    isemir.PlanlananSure = isEmir_ustBilgileri.Sum(t => t.PLANLANANSURE);
                }

                TeknisyenHareketDagilimSonuclari puantajSonuclari = Puantaj.GetPuantajSonuclari(isEmir_TeknisyenHareketleri, pg, servis_Gun_Molalar, nedenler);
                isemir.CalisilanSure = puantajSonuclari.GetSonucSure(NedenFormati.NormalCalisma);// isEmir_TeknisyenHareketleri.Sum(t => t.CalismaDakika);
                isemir.TeknisyenSure = puantajSonuclari.GetSonucSure(servisTeknisyenId, NedenFormati.NormalCalisma);
            });
            return(servis_IsEmirleri.orderByDesc(t => t.TeknisyenDurumResim).toList());
        }