private List <EczaneNobetSonucListe2> GetSonuclar(List <EczaneNobetSonucDetay2> eczaneNobetSonucDetaylar) { var nobetUstGrupId = eczaneNobetSonucDetaylar.Select(s => s.NobetUstGrupId).Distinct().FirstOrDefault(); var nobetGrupGorevTipGunKurallar = _nobetGrupGorevTipGunKuralService.GetDetaylar(nobetUstGrupId); var nobetGrupGorevTipTakvimOzelGunler = _nobetGrupGorevTipTakvimOzelGunService.GetDetaylar(nobetUstGrupId); var liste = _eczaneNobetOrtakService.EczaneNobetSonucBirlesim(nobetGrupGorevTipGunKurallar, eczaneNobetSonucDetaylar, nobetGrupGorevTipTakvimOzelGunler, EczaneNobetSonucTuru.Planlanan); return(liste); }
public List <EczaneNobetSonucListe2> GetSonuclar3(List <EczaneNobetSonucDetay2> eczaneNobetSonucDetaylar, int nobetUstGrupId) { //var sw = new Stopwatch(); //sw.Start(); var nobetGrupGorevTipGunKurallar = _nobetGrupGorevTipGunKuralService.GetDetaylar(nobetUstGrupId); //var s1 = sw.Elapsed; //sw.Restart(); var nobetGrupGorevTipTakvimOzelGunler = _nobetGrupGorevTipTakvimOzelGunService.GetDetaylar(nobetUstGrupId); //var s2 = sw.Elapsed; //sw.Restart(); //var mazeretler = _eczaneNobetMazeretService.GetDetaylar(nobetUstGrupId); //var s3 = sw.Elapsed; //sw.Restart(); //var istekler = _eczaneNobetIstekService.GetDetaylar(nobetUstGrupId); //var s4 = sw.Elapsed; //sw.Restart(); var sonuclar = _eczaneNobetOrtakService.EczaneNobetSonucBirlesim(nobetGrupGorevTipGunKurallar, eczaneNobetSonucDetaylar, nobetGrupGorevTipTakvimOzelGunler, EczaneNobetSonucTuru.Taslak); //var s5 = sw.Elapsed; //sw.Stop(); return(sonuclar); //var nobetGrupGorevTipler = _nobetGrupGorevTipService.GetDetaylar(nobetUstGrupId); ////var bayramlar = _bayramService.GetDetaylar(nobetUstGrupId); //var mazeretler = _eczaneNobetMazeretService.GetDetaylar(nobetUstGrupId); //var nobetGrupGorevTipGunKurallar = _nobetGrupGorevTipGunKuralService.GetDetaylar(nobetUstGrupId); //var nobetGrupGorevTipTakvimOzelGunler = _nobetGrupGorevTipTakvimOzelGunService.GetDetaylar(nobetUstGrupId); //var liste2 = (from s in eczaneNobetSonucDetaylar // join b in nobetGrupGorevTipler // on new { s.NobetGrupId, s.NobetGorevTipId } // equals new { b.NobetGrupId, b.NobetGorevTipId } // select new // { // s.NobetGorevTipId, // s.TakvimId, // s.EczaneNobetGrupId, // s.EczaneAdi, // s.NobetGrupAdi, // s.NobetGrupId, // s.NobetGrupGorevTipId, // s.Tarih, // s.NobetUstGrupId, // s.EczaneId, // b.NobetGorevTipAdi, // }).ToList(); //var culture = new CultureInfo("tr-TR"); //var liste = (from s in liste2 // from b in nobetGrupGorevTipTakvimOzelGunler // .Where(w => w.TakvimId == s.TakvimId // && w.NobetGrupGorevTipId == s.NobetGrupGorevTipId).DefaultIfEmpty() // from m in mazeretler // .Where(w => w.TakvimId == s.TakvimId // && w.EczaneNobetGrupId == s.EczaneNobetGrupId).DefaultIfEmpty() // select new EczaneNobetSonucListe2 // { // Yil = s.Tarih.Year, // Ay = s.Tarih.Month, // EczaneNobetGrupId = s.EczaneNobetGrupId, // EczaneId = s.EczaneId, // EczaneAdi = s.EczaneAdi, // NobetGrupAdi = s.NobetGrupAdi, // NobetGrupId = s.NobetGrupId, // NobetUstGrupId = s.NobetUstGrupId, // NobetGunKuralId = (b?.TakvimId == s.TakvimId && b?.NobetGrupGorevTipId == s.NobetGrupGorevTipId) // ? b.NobetGunKuralId // : (int)s.Tarih.DayOfWeek + 1, // GunTanim = (b?.TakvimId == s.TakvimId && b?.NobetGrupGorevTipId == s.NobetGrupGorevTipId) // ? b.NobetGunKuralAdi // : culture.DateTimeFormat.GetDayName(s.Tarih.DayOfWeek), // GunGrupAdi = (b?.TakvimId == s.TakvimId && b?.NobetGrupGorevTipId == s.NobetGrupGorevTipId) // ? b.GunGrupAdi // : nobetGrupGorevTipGunKurallar.SingleOrDefault(w => w.NobetGrupGorevTipId == s.NobetGrupGorevTipId // && w.NobetGunKuralId == (int)s.Tarih.DayOfWeek + 1).GunGrupAdi, // Gun = s.Tarih.Day, // Tarih = s.Tarih, // TakvimId = s.TakvimId, // MazeretId = (m?.TakvimId == s.TakvimId && m?.EczaneNobetGrupId == s.EczaneNobetGrupId) ? m.MazeretId : 0, // Mazeret = (m?.TakvimId == s.TakvimId && m?.EczaneNobetGrupId == s.EczaneNobetGrupId) ? m.MazeretAdi : null, // MazeretTuru = (m?.TakvimId == s.TakvimId && m?.EczaneNobetGrupId == s.EczaneNobetGrupId) ? m.MazeretTuru : null, // NobetGorevTipAdi = s.NobetGorevTipAdi, // NobetGorevTipId = s.NobetGorevTipId, // SonucTuru = EczaneNobetSonucTuru.Taslak, // NobetGrupGorevTipId = s.NobetGrupGorevTipId // }).ToList(); //return liste; }