public ActionResult Create([Bind(Include = "Id,NobetGrupId,NobetGunKuralId,BaslangicTarihi,BitisTarihi")] NobetGrupGunKural nobetGrupGunKural) { if (ModelState.IsValid) { _nobetGrupGunKuralService.Insert(nobetGrupGunKural); return(RedirectToAction("Index")); } ViewBag.NobetGrupId = new SelectList(_nobetGrupService.GetList().Select(s => new { s.Id, s.Adi }), "Id", "Adi", nobetGrupGunKural.NobetGrupId); ViewBag.NobetGunKuralId = new SelectList(_nobetGunKuralService.GetList().OrderBy(s => s.Adi), "Id", "Adi", nobetGrupGunKural.NobetGunKuralId); return(View(nobetGrupGunKural)); }
public ActionResult PivotGunFarklari() { var user = _userService.GetByUserName(User.Identity.Name); var nobetUstGruplar = _nobetUstGrupService.GetListByUser(user); var nobetUstGrupId = nobetUstGruplar.Select(x => x.Id).FirstOrDefault(); var nobetGruplar = _nobetGrupService.GetList() .Where(w => nobetUstGruplar.Select(x => x.Id).Contains(w.NobetUstGrupId)) .Select(s => new MyDrop { Id = s.Id, Value = s.Adi }); var sonuclarHepsi = _eczaneNobetSonucDemoService.EczaneNobetIstatistikGunFarkiHesapla(nobetUstGrupId); var versiyonlar = sonuclarHepsi .Select(s => s.NobetSonucDemoTipId).Distinct().ToList(); var pivotSekiller = _eczaneNobetOrtakService.GetPivotSekillerGunFarki(); var demoTipler = _nobetSonucDemoTipService.GetList() .Where(w => versiyonlar.Contains(w.Id)) .Select(s => new MyDrop { Id = s.Id, Value = s.Adi }) .OrderBy(o => o.Id).ToList(); var versiyon = demoTipler.Select(s => s.Id).LastOrDefault(); var sonuclar = _eczaneNobetSonucDemoService.EczaneNobetIstatistikGunFarkiHesapla(nobetUstGrupId, versiyon); var gunGruplar = sonuclar.Select(s => s.GunGrupAdi).Distinct(); var gunGrup = ""; var sekil = 1; //var gunFarkiFrekanslar = new List<EczaneNobetIstatistikGunFarkiFrekans>(); //if (sekil < 3) //{ var gunFarkiFrekanslar = _eczaneNobetOrtakService.EczaneNobetIstatistikGunFarkiFrekans(sonuclar); //} var nobetGrup = 0; ViewBag.sekil = sekil; ViewBag.nobetGrup = nobetGrup; ViewBag.gunGrup = gunGrup; ViewBag.Versiyonlar = new SelectList(demoTipler, "Id", "Value", versiyon); ViewBag.PivotSekiller = new SelectList(pivotSekiller, "Id", "Value", sekil); ViewBag.NobetGruplar = new SelectList(nobetGruplar, "Id", "Value"); ViewBag.GunGruplar = new SelectList(gunGruplar, gunGrup); ViewBag.ToplamUzunluk = sonuclar.Count; var model = new PivotGunFarklariDemoViewModel { GunFarklariTumSonuclar = sonuclar, GunFarklariFrekanslar = gunFarkiFrekanslar }; return(View(model)); }
private AlanyaDataModelEski EczaneNobetDataModel(EczaneNobetDataModelParametre eczaneNobetDataModelParametre) { #region parametreler var nobetUstGrupId = eczaneNobetDataModelParametre.NobetUstGrupId; var yilBaslangic = eczaneNobetDataModelParametre.YilBaslangic; var yilBitis = eczaneNobetDataModelParametre.YilBitis; var ayBaslangic = eczaneNobetDataModelParametre.AyBaslangic; var ayBitis = eczaneNobetDataModelParametre.AyBitis; var nobetGrupIdListe = eczaneNobetDataModelParametre.NobetGrupId.ToList(); var nobetGorevTipId = eczaneNobetDataModelParametre.NobetGorevTipId; #endregion var baslangicTarihi = new DateTime(yilBitis, ayBitis, 1); var bitisTarihi = baslangicTarihi.AddMonths(1); var nobetGruplar = _nobetGrupService.GetList(nobetGrupIdListe).OrderBy(s => s.Id).ToList(); var eczaneNobetMazeretNobettenDusenler = _eczaneNobetMazeretService.GetEczaneNobetMazeretSayilari(baslangicTarihi, bitisTarihi, nobetGrupIdListe); var eczaneNobetSonuclarAylik = _eczaneNobetSonucService.GetSonuclar(baslangicTarihi, bitisTarihi, nobetUstGrupId); var eczaneGrupEdges = _eczaneGrupService.GetEdges(nobetUstGrupId) .Where(e => (nobetGrupIdListe.Contains(e.FromNobetGrupId) || nobetGrupIdListe.Contains(e.ToNobetGrupId))) .Where(w => (eczaneNobetSonuclarAylik.Select(s => s.EczaneId).Distinct().Contains(w.From) || eczaneNobetSonuclarAylik.Select(s => s.EczaneId).Distinct().Contains(w.To))) .ToList(); //sonuclarda ilişkili eczaneler var eczaneGruplar = _eczaneGrupService.GetDetaylar(nobetUstGrupId) .Where(x => x.EczaneGrupTanimBitisTarihi == null //&& x.EczaneGrupTanimTipId == 2 //coğrafi yakınlık hariç && nobetGrupIdListe.Contains(x.NobetGrupId) && (eczaneGrupEdges.Select(s => s.From).Distinct().Contains(x.EczaneId) || eczaneGrupEdges.Select(s => s.To).Distinct().Contains(x.EczaneId)) ).ToList(); //fazladan gelen tanımlar var. burayı iyileştirmekte fayda var var eczaneGrupTanimlar = _eczaneGrupTanimService.GetAktifTanimList(eczaneGruplar.Select(x => x.EczaneGrupTanimId).ToList()); var eczaneGruplar2 = _eczaneGrupService.GetDetaylarByEczaneGrupTanimId(eczaneGrupTanimlar.Select(s => s.Id).ToList()); var eczaneGrupNobetSonuclar = eczaneNobetSonuclarAylik .Where(w => eczaneGruplar2.Select(s => s.EczaneId).Contains(w.EczaneId)).ToList(); var esGrupluEczaneler = _eczaneNobetGrupService.GetAktifEczaneGrupList(nobetGrupIdListe) .Where(x => !eczaneNobetMazeretNobettenDusenler.Select(s => s.EczaneId).Contains(x.EczaneId)) .Select(x => x.EczaneId).Distinct().ToList(); var eczaneNobetGruplar = _eczaneNobetGrupService.GetAktifEczaneGrupList(nobetGruplar.Select(w => w.Id).ToList()) .Where(s => !eczaneNobetMazeretNobettenDusenler.Select(f => f.EczaneId).Contains(s.EczaneId)).ToList(); #region aynı gün nöbet tutan eczaneler //nöbet yazılacak tarih aralığı(örn. Ocak ayının tüm günleri) //int cozumOncekiAyi = GetOncekiAy(periyot: 3, cozumAyi: ayBitis); //var cozumOncekiIkiAyi = GetOncekiAy(periyot: 2, cozumAyi: ayBitis); //var aktifSonuclar = _eczaneNobetSonucAktifService.GetSonuclarAylik(yilBitis, ayBitis, nobetUstGrupId); //var ayniAydakiDigerGruplarinSonuclari = _eczaneNobetSonucService.GetSonuclarAylik(yilBitis, ayBitis, nobetUstGrupId); //var ayIcindekiTumSonuclar = aktifSonuclar.Union(ayniAydakiDigerGruplarinSonuclari).ToList(); //var ayIcindeCozulenNobetGruplar = ayIcindekiTumSonuclar.Select(s => s.NobetGrupId).Distinct().ToList(); #region son iki ay //var sonIkiAyBakilacakGruplar = new List<int>(); //foreach (var item in ayIcindeCozulenNobetGruplar) //{ // sonIkiAyBakilacakGruplar.Add(item); //} ////şimdi çözülecek grup //foreach (var item in nobetGrupIdListe) //{ // sonIkiAyBakilacakGruplar.Add(item); //} //var sonIkiAyAyniGunNobetTutanEczaneler = new List<EczaneCiftGrup>(); //var gruplar = sonIkiAyBakilacakGruplar.Distinct().ToList(); //if (_nobetUstGrupKisitService.GetKisitPasifMi("sonIkiAydakiGrup", nobetUstGrupId) && sonIkiAyBakilacakGruplar.Count() > 1 && ayBitis > 1) //{ // var sonIkiAydakiSonuclar = _eczaneNobetSonucService.GetSonuclar(yilBitis, cozumOncekiAyi, ayBitis - 1, nobetUstGrupId) // .Where(x => gruplar.Contains(x.NobetGrupId)).ToList(); // sonIkiAyAyniGunNobetTutanEczaneler = _eczaneNobetOrtakService.GetCiftGrupluEczaneler(sonIkiAydakiSonuclar, 1); //} #endregion #region yillik kümülatif //var yilIcindeAyniGunNobetTutanEczaneler = new List<EczaneCiftGrup>(); //if (_nobetUstGrupKisitService.GetKisitPasifMi("yildaEncokUcKezGrup", nobetUstGrupId) && sonIkiAyBakilacakGruplar.Count() > 1 && ayBitis > 2) //{ // var yillikKumulatifSonuclar = _eczaneNobetSonucService.GetSonuclarYillikKumulatif(yilBitis, ayBitis - 1, nobetUstGrupId) // .Where(x => gruplar.Contains(x.NobetGrupId)).ToList(); // yilIcindeAyniGunNobetTutanEczaneler = _eczaneNobetOrtakService.GetCiftGrupluEczaneler(yillikKumulatifSonuclar, 3); //} #endregion //bu alan EczaneNobetCozAktifiGuncelle içinde kullanılıyor. var ayIcindeAyniGunNobetTutanEczaneler = new List <EczaneCiftGrup>(); #endregion var alanyaDataModel = new AlanyaDataModelEski() { Yil = yilBitis, Ay = ayBitis, LowerBound = 0, UpperBound = 1, NobetUstGrupId = nobetUstGrupId, NobetGruplar = nobetGruplar, EczaneNobetTarihAralik = _takvimService.GetEczaneNobetTarihAralik(baslangicTarihi, bitisTarihi, nobetGorevTipId, nobetGrupIdListe), //karar değişkeni EczaneKumulatifHedefler = _takvimService.GetEczaneKumulatifHedefler(yilBaslangic, yilBitis, ayBaslangic, ayBitis, nobetGrupIdListe, nobetGorevTipId), EczaneNobetMazeretListe = _eczaneNobetMazeretService.GetDetaylar(yilBitis, ayBitis, esGrupluEczaneler), EczaneGrupTanimlar = eczaneGrupTanimlar, TarihAraligi = _takvimService.GetTakvimNobetGruplar(baslangicTarihi, bitisTarihi, nobetGrupIdListe, nobetGorevTipId), EczaneGruplar = eczaneGruplar2, EczaneNobetIstekListe = _eczaneNobetIstekService.GetDetaylarByNobetGrupIdList(yilBitis, ayBitis, nobetGrupIdListe), NobetGrupGunKurallar = _nobetGrupGunKuralService.GetAktifList(nobetGrupIdListe), NobetGrupKurallar = _nobetGrupKuralService.GetDetaylar(nobetGrupIdListe), NobetGrupGorevTipler = _nobetGrupGorevTipService.GetList(nobetGorevTipId, nobetGrupIdListe), NobetGrupTalepler = _nobetGrupTalepService.GetDetaylar(nobetGrupIdListe, baslangicTarihi, bitisTarihi), EczaneNobetGruplar = eczaneNobetGruplar, NobetUstGrupKisitlar = _nobetUstGrupKisitService.GetDetaylar(nobetUstGrupId), EczaneGrupNobetSonuclar = eczaneGrupNobetSonuclar, EczaneNobetSonuclar = _eczaneNobetSonucService.GetSonuclar(nobetUstGrupId), AyIcindeAyniGunNobetTutanEczaneler = ayIcindeAyniGunNobetTutanEczaneler, YilIcindeAyniGunNobetTutanEczaneler = new List <EczaneCiftGrup>(), //yilIcindeAyniGunNobetTutanEczaneler, SonIkiAyAyniGunNobetTutanEczaneler = new List <EczaneCiftGrup>(), //sonIkiAyAyniGunNobetTutanEczaneler, EczaneNobetSonuclarSonIkiAy = new List <EczaneNobetSonucListe>(), //_eczaneNobetSonucService.GetSonuclar(yilBitis, cozumOncekiIkiAyi, ayBitis, nobetUstGrupId), EczaneNobetSonuclarOncekiAylar = new List <EczaneNobetSonucListe>() //_eczaneNobetSonucService.GetSonuclar(yilBitis, ayBaslangic, ayBitis, nobetUstGrupId) }; return(alanyaDataModel); }
private MersinMerkezDataModel EczaneNobetDataModel(EczaneNobetDataModelParametre eczaneNobetDataModelParametre) { #region parametreler var nobetUstGrupId = eczaneNobetDataModelParametre.NobetUstGrupId; var yilBaslangic = eczaneNobetDataModelParametre.YilBaslangic; var yilBitis = eczaneNobetDataModelParametre.YilBitis; var ayBaslangic = eczaneNobetDataModelParametre.AyBaslangic; var ayBitis = eczaneNobetDataModelParametre.AyBitis; var nobetGrupIdListe = eczaneNobetDataModelParametre.NobetGrupId.ToList(); var nobetGorevTipId = eczaneNobetDataModelParametre.NobetGorevTipId; var nobetUstGrupBaslangicTarihi = eczaneNobetDataModelParametre.NobetUstGrupBaslangicTarihi; #endregion int aydakiGunSayisi = DateTime.DaysInMonth(yilBitis, ayBitis); var baslangicTarihi = new DateTime(yilBitis, ayBitis, 1); var bitisTarihi = new DateTime(yilBitis, ayBitis, aydakiGunSayisi); var nobetGruplar = _nobetGrupService.GetList(nobetGrupIdListe).OrderBy(s => s.Id).ToList(); var nobetGrupGorevTipler = _nobetGrupGorevTipService.GetList(nobetGorevTipId, nobetGrupIdListe); var eczaneNobetSonuclar = _eczaneNobetSonucService.GetEczaneGrupNobetSonuc(nobetUstGrupId); var eczaneNobetGruplarTumu = _eczaneNobetGrupService.GetList(nobetGrupIdListe, baslangicTarihi, bitisTarihi); var eczaneNobetMazeretNobettenDusenler = _eczaneNobetMazeretService.GetEczaneNobetMazeretSayilari(baslangicTarihi, bitisTarihi, nobetGrupIdListe); //var eczaneNobettenMuafOlanlar = _eczaneNobetMuafiyetService.GetDetaylar(baslangicTarihi, bitisTarihi, nobetGrupIdListe); var eczaneNobetGruplar = _eczaneNobetGrupService.GetDetaylar(nobetGrupIdListe, baslangicTarihi, bitisTarihi) .Where(w => !eczaneNobetMazeretNobettenDusenler.Select(s => s.EczaneNobetGrupId).Contains(w.Id) //&& !eczaneNobettenMuafOlanlar.Select(s => s.EczaneId).Contains(w.EczaneId) ).ToList(); var eczaneNobetSonuclarCozulenGrup = eczaneNobetSonuclar .Where(w => !eczaneNobetMazeretNobettenDusenler.Select(s => s.EczaneNobetGrupId).Contains(w.EczaneNobetGrupId) //&& !eczaneNobettenMuafOlanlar.Select(s => s.EczaneId).Contains(w.EczaneId) && nobetGrupIdListe.Contains(w.NobetGrupId)).ToList(); var enSonNobetDurumlari = eczaneNobetSonuclarCozulenGrup .GroupBy(g => new { g.NobetGunKuralId, g.EczaneNobetGrupId, g.EczaneId, g.EczaneAdi, g.NobetGrupId, g.NobetGrupAdi, g.NobetGorevTipId }) .Select(s => new EczaneNobetGrupGunKuralIstatistik { NobetGunKuralId = s.Key.NobetGunKuralId, EczaneNobetGrupId = s.Key.EczaneNobetGrupId, EczaneId = s.Key.EczaneId, EczaneAdi = s.Key.EczaneAdi, NobetGrupId = s.Key.NobetGrupId, NobetGrupAdi = s.Key.NobetGrupAdi, NobetGorevTipId = s.Key.NobetGorevTipId, IlkNobetTarihi = s.Min(c => c.Tarih), SonNobetTarihi = s.Max(c => c.Tarih), NobetSayisi = s.Count() }).ToList(); var sonucuOlanGunler = enSonNobetDurumlari .Select(s => new { s.NobetGunKuralId, s.NobetGorevTipId }) .Distinct() .OrderBy(o => o.NobetGorevTipId).ThenBy(t => t.NobetGunKuralId).ToList(); var varsayilanBaslangicNobetTarihi = new DateTime(2012, 1, 1); foreach (var nobetGunKural in sonucuOlanGunler) { var nobetDurumlari = enSonNobetDurumlari .Where(w => w.NobetGunKuralId == nobetGunKural.NobetGunKuralId) .Select(s => s.EczaneNobetGrupId).ToList(); var sonucuOlmayanlar = eczaneNobetGruplar .Where(w => !nobetDurumlari.Contains(w.Id)).ToList(); if (sonucuOlmayanlar.Count > 0) { foreach (var eczaneNobetGrup in sonucuOlmayanlar) { enSonNobetDurumlari.Add(new EczaneNobetGrupGunKuralIstatistik { EczaneId = eczaneNobetGrup.EczaneId, EczaneAdi = eczaneNobetGrup.EczaneAdi, NobetGrupAdi = eczaneNobetGrup.NobetGrupAdi, NobetAltGrupId = 0, EczaneNobetGrupId = eczaneNobetGrup.Id, IlkNobetTarihi = varsayilanBaslangicNobetTarihi, // eczaneNobetGrup.BaslangicTarihi, SonNobetTarihi = varsayilanBaslangicNobetTarihi, // eczaneNobetGrup.BaslangicTarihi, NobetGorevTipId = nobetGunKural.NobetGorevTipId, NobetGunKuralId = nobetGunKural.NobetGunKuralId, NobetGrupId = eczaneNobetGrup.NobetGrupId, NobetSayisi = 1 }); } } } var grupluEczaneNobetSonuclar = eczaneNobetSonuclar .Where(w => w.Tarih.Year == yilBitis && w.Tarih.Month == ayBitis).ToList(); var eczaneGrupEdges = _eczaneGrupService.GetEdges() .Where(e => (nobetGrupIdListe.Contains(e.FromNobetGrupId) || nobetGrupIdListe.Contains(e.ToNobetGrupId))) .Where(w => (grupluEczaneNobetSonuclar.Select(s => s.EczaneId).Distinct().Contains(w.From) || grupluEczaneNobetSonuclar.Select(s => s.EczaneId).Distinct().Contains(w.To)) ) .ToList(); //sonuclarda ilişkili eczaneler var eczaneGruplar = _eczaneGrupService.GetDetaylar(nobetUstGrupId) .Where(x => x.EczaneGrupTanimBitisTarihi == null //&& x.EczaneGrupTanimTipId == 2 //coğrafi yakınlık hariç && (eczaneGrupEdges.Select(s => s.From).Distinct().Contains(x.EczaneId) || eczaneGrupEdges.Select(s => s.To).Distinct().Contains(x.EczaneId)) && nobetGrupIdListe.Contains(x.NobetGrupId) ) .Where(w => !eczaneNobetMazeretNobettenDusenler.Select(s => s.EczaneId).Contains(w.EczaneId)).ToList(); //fazladan gelen tanımlar var iyileştirmekte fayda var var eczaneGrupTanimlar = _eczaneGrupTanimService.GetAktifTanimList(eczaneGruplar.Select(x => x.EczaneGrupTanimId).ToList()); var eczaneGruplar2 = _eczaneGrupService.GetDetaylarByEczaneGrupTanimId(eczaneGrupTanimlar.Select(s => s.Id).ToList()); var eczaneGrupNobetSonuclar = grupluEczaneNobetSonuclar .Where(w => eczaneGruplar2.Select(s => s.EczaneId).Contains(w.EczaneId)).ToList(); var esGrupluEczaneler = _eczaneNobetGrupService.GetDetaylar(nobetUstGrupId) .Where(x => nobetGrupIdListe.Contains(x.NobetGrupId) && x.BitisTarihi == null && !eczaneNobetMazeretNobettenDusenler.Select(s => s.EczaneId).Contains(x.EczaneId)) .Select(x => x.EczaneId).Distinct().ToList(); //var eczaneNobetGruplar = _eczaneNobetGrupService.GetAktifEczaneGrupList(nobetGruplar.Select(w => w.Id).ToList()) // .Where(s => !eczaneNobetMazeretNobettenDusenler.Select(f => f.EczaneId).Contains(s.EczaneId)).ToList(); //nöbet yazılacak tarih aralığı(örn. Ocak ayının tüm günleri) var tarihAralik = _takvimService.GetTakvimNobetGruplar(baslangicTarihi, bitisTarihi, nobetGrupIdListe, nobetGorevTipId); //var eczaneKumulatifHedefler = _takvimService // .GetEczaneKumulatifHedeflerTumYillar(yilBaslangic, yilBitis, ayBaslangic, ayBitis, nobetGrupIdListe); var eczaneKumulatifHedefler = _takvimService.GetEczaneKumulatifHedefler(yilBaslangic, yilBitis, ayBaslangic, ayBitis, nobetGrupIdListe, nobetGorevTipId) .Where(w => eczaneNobetGruplar.Select(s => s.EczaneId).Contains(w.EczaneId)).ToList(); var eczaneNobetTarihAralik = _takvimService.GetEczaneNobetTarihAralik(baslangicTarihi, bitisTarihi, nobetGorevTipId, nobetGrupIdListe) .Where(w => eczaneNobetGruplar.Select(s => s.EczaneId).Contains(w.EczaneId)).ToList(); var takvimNobetGrupGunDegerIstatistikler = _takvimService.GetTakvimNobetGrupGunDegerIstatistikler(nobetUstGrupBaslangicTarihi, bitisTarihi, nobetGrupIdListe, nobetGorevTipId); #region aynı gün nöbet tutan eczaneler /* * var ayniGunNobetTutmasiTakipEdilecekGruplar = new List<int> { 20, 21, 22 }; * * //nöbet yazılacak tarih aralığı(örn. Ocak ayının tüm günleri) * int cozumOncekiAyi = GetOncekiAy(periyot: 3, cozumAyi: ayBitis); * var cozumOncekiIkiAyi = GetOncekiAy(periyot: 2, cozumAyi: ayBitis); * var aktifSonuclar = _eczaneNobetSonucAktifService.GetSonuclarAylik(yilBitis, ayBitis, nobetUstGrupId); * var ayniAydakiDigerGruplarinSonuclari = _eczaneNobetSonucService.GetSonuclarAylik(yilBitis, ayBitis, nobetUstGrupId) * .Where(w => ayniGunNobetTutmasiTakipEdilecekGruplar.Contains(w.NobetGrupId)).ToList(); * * var ayIcindekiTumSonuclar = aktifSonuclar.Union(ayniAydakiDigerGruplarinSonuclari).ToList(); * var ayIcindeCozulenNobetGruplar = ayIcindekiTumSonuclar.Select(s => s.NobetGrupId).Distinct().ToList(); * #region son iki ay * * var sonIkiAyBakilacakGruplar = new List<int>(); * * foreach (var item in ayIcindeCozulenNobetGruplar) * { * sonIkiAyBakilacakGruplar.Add(item); * } * * //şimdi çözülecek grup * foreach (var item in nobetGrupIdListe) * { * sonIkiAyBakilacakGruplar.Add(item); * } * * var sonIkiAyAyniGunNobetTutanEczaneler = new List<EczaneCiftGrup>(); * var gruplar = sonIkiAyBakilacakGruplar.Distinct().ToList(); * * if (_nobetUstGrupKisitService.GetKisitPasifMi("sonIkiAydakiGrup", nobetUstGrupId) && sonIkiAyBakilacakGruplar.Count() > 1 && ayBitis > 1) * { * var sonIkiAydakiSonuclar = _eczaneNobetSonucService.GetSonuclar(yilBitis, cozumOncekiAyi, ayBitis - 1, nobetUstGrupId) * .Where(x => gruplar.Contains(x.NobetGrupId) * && ayniGunNobetTutmasiTakipEdilecekGruplar.Contains(x.NobetGrupId)).ToList(); * * sonIkiAyAyniGunNobetTutanEczaneler = _eczaneNobetOrtakService.GetCiftGrupluEczaneler(sonIkiAydakiSonuclar, 1); * } #endregion * #region yillik kümülatif * * var yilIcindeAyniGunNobetTutanEczaneler = new List<EczaneCiftGrup>(); * * if (_nobetUstGrupKisitService.GetKisitPasifMi("yildaEncokUcKezGrup", nobetUstGrupId) && sonIkiAyBakilacakGruplar.Count() > 1 && ayBitis > 2) * { * var yillikKumulatifSonuclar = _eczaneNobetSonucService.GetSonuclarYillikKumulatif(yilBitis, ayBitis - 1, nobetUstGrupId) * .Where(x => gruplar.Contains(x.NobetGrupId) * && ayniGunNobetTutmasiTakipEdilecekGruplar.Contains(x.NobetGrupId)).ToList(); * * yilIcindeAyniGunNobetTutanEczaneler = _eczaneNobetOrtakService.GetCiftGrupluEczaneler(yillikKumulatifSonuclar, 3); * * yilIcindeAyniGunNobetTutanEczaneler = (from a in yilIcindeAyniGunNobetTutanEczaneler * from t in _eczaneNobetGrupAltGrupService.GetDetaylar() * .Where(w => w.EczaneId == a.EczaneId).DefaultIfEmpty() * select new EczaneCiftGrup * { * Id = a.Id, * NobetAltGrupId = (t?.EczaneId == a.EczaneId) ? t.NobetAltGrupId : 0, * EczaneId = a.EczaneId, * BirlikteNobetTutmaSayisi = a.BirlikteNobetTutmaSayisi * }).ToList(); * } #endregion * * var ayIcindeAyniGunNobetTutanEczaneler = new List<EczaneCiftGrup>(); */ #endregion var mersinMerkezDataModel = new MersinMerkezDataModel() { Yil = yilBitis, Ay = ayBitis, LowerBound = 0, UpperBound = 1, NobetUstGrupId = nobetUstGrupId, EczaneNobetTarihAralik = eczaneNobetTarihAralik, //karar değişkeni EczaneKumulatifHedefler = eczaneKumulatifHedefler, //.Where(w => w.EczaneId != 121).ToList(), TarihAraligi = tarihAralik, NobetGruplar = nobetGruplar, EczaneGrupTanimlar = eczaneGrupTanimlar, EczaneGruplar = eczaneGruplar2, EczaneNobetMazeretler = _eczaneNobetMazeretService.GetDetaylar(yilBitis, ayBitis, esGrupluEczaneler), EczaneNobetIstekler = _eczaneNobetIstekService.GetDetaylarByNobetGrupIdList(yilBitis, ayBitis, nobetGrupIdListe), NobetGrupGunKurallar = _nobetGrupGunKuralService.GetAktifList(nobetGrupIdListe), NobetGrupKurallar = _nobetGrupKuralService.GetDetaylar(nobetGrupIdListe), NobetGrupGorevTipler = _nobetGrupGorevTipService.GetList(nobetGorevTipId, nobetGrupIdListe), NobetGrupTalepler = _nobetGrupTalepService.GetDetaylar(nobetGrupIdListe, baslangicTarihi, bitisTarihi), EczaneNobetGruplar = eczaneNobetGruplar, NobetUstGrupKisitlar = _nobetUstGrupKisitService.GetDetaylar(nobetUstGrupId), EczaneGrupNobetSonuclar = eczaneGrupNobetSonuclar, EczaneGrupNobetSonuclarTumu = eczaneNobetSonuclar, EczaneNobetSonuclar = eczaneNobetSonuclarCozulenGrup, EczaneNobetGrupGunKuralIstatistikler = enSonNobetDurumlari, TakvimNobetGrupGunDegerIstatistikler = takvimNobetGrupGunDegerIstatistikler #region aynı gün nöbet tutma durumu //AyIcindeAyniGunNobetTutanEczaneler = ayIcindeAyniGunNobetTutanEczaneler, //bu alan EczaneNobetCozAktifiGuncelle içinde kullanılıyor. //YilIcindeAyniGunNobetTutanEczaneler = yilIcindeAyniGunNobetTutanEczaneler, //SonIkiAyAyniGunNobetTutanEczaneler = sonIkiAyAyniGunNobetTutanEczaneler, //EczaneNobetSonuclarSonIkiAy = _eczaneNobetSonucService.GetSonuclar(yilBitis, cozumOncekiIkiAyi, ayBitis, nobetUstGrupId), //EczaneNobetSonuclarOncekiAylar = _eczaneNobetSonucService.GetSonuclar(yilBitis, ayBaslangic, ayBitis, nobetUstGrupId) #endregion }; return(mersinMerkezDataModel); }