/// <summary> /// 0 = Hareketi Yok, veya Devam Etmesi Gereken Hareketi Yok, veya Giris Hareketi Yok /// </summary> /// <param name="servisId"></param> /// <param name="servisTeknisyenId"></param> /// <param name="isEmirId"></param> /// <param name="isEmirIslemId"></param> /// <returns></returns> public static decimal IslemeGirisYapabilirMi(decimal servisId, decimal servisTeknisyenId, decimal isEmirId, decimal isEmirIslemId, MethodReturn mr = null) { decimal result = 0; using (var ap = SasonBaseApplicationPool.CreateMask) { /* * Eğer giriş veya devam etmesi Gereken hareketleri varsa */ List <TEKNISYENHAREKET> hareketler = GetGirisVeyaDevamEtmesiGerekenHareketler(servisTeknisyenId, mr); if (hareketler.isNotEmpty()) { TEKNISYENHAREKET girisHareketi = hareketler.first(t => t.DURUM == YeniTeknisyenHareketDurum.Giris); if (girisHareketi.isNotNull()) { if (girisHareketi.ISEMIRISLEMID != isEmirIslemId) { result = -1; } else { result = girisHareketi.ID; } } else { TEKNISYENHAREKET devamBekliyor = hareketler.first(t => t.DURUM == YeniTeknisyenHareketDurum.DevamBekliyor); if (devamBekliyor.isNotNull()) { result = devamBekliyor.ID; } } } } return(result); }
public static void CikisiYapilmamisHareketiKapat(decimal servisId, decimal servisTeknisyenId) { MethodReturn mr = new MethodReturn(); using (var ap = SasonBaseApplicationPool.CreateMask) { TEKNISYENHAREKET oncekiHareket = R.Query <TEKNISYENHAREKET>(mr).First(t => t.SERVISID == servisId && t.SERVISTEKNISYENID == servisTeknisyenId && t.GIRISTARIHI < DateTime.Now.startOfDay() && t.DURUM == YeniTeknisyenHareketDurum.Giris); if (oncekiHareket.isNotNull()) { ServisGunMola servisGunMola = ServisGunMola.SelectServisGunMola(servisId, oncekiHareket.GIRISTARIHI.DayOfWeek, mr).createIsNull(); if (servisGunMola.BitisSaati == 0) { servisGunMola.BitisSaati = 1080; } //giriş tarihine ait çalışma gününün çıkış saati set edilecek oncekiHareket.CIKISTARIHI = oncekiHareket.GIRISTARIHI.startOfDay().AddMinutes(servisGunMola.BitisSaati); oncekiHareket.CIKISNEDENID = 21; oncekiHareket.DURUM = YeniTeknisyenHareketDurum.Cikis; oncekiHareket.EXTCSERVISTEKNISYENID = -1;//System User oncekiHareket.Update(); } } }